/*
Theme Name: ZAP.RE Child
Theme URI: https://www.zap.re/
Description: Child theme for ZAP.RE based on Blocksy.
Author: ZAP.RE
Template: blocksy
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 7.0
Text Domain: zap-child
*/

:root { --zap-red: #e30613; --zap-ink: #111827; --zap-muted: #667085; --zap-soft: #f5f7fb; --zap-line: #e5e7eb; --zap-gold: #c9a227; --zap-teal: #0a9396; }

.home #header [data-device="desktop"] [data-row="middle"] { --height: 70px; min-height: 70px; }

.home #header [data-device="desktop"] [data-row="middle"] > .ct-container, .home #header [data-device="desktop"] .site-branding { height: 70px; min-height: 70px; }

.home #header [data-device="desktop"] .site-logo-container { height: 70px; max-height: 70px; width: 190px; }

.home #header [data-device="desktop"] .site-logo-container img { max-height: 52px; max-width: 190px; object-fit: contain; }

.archive.category #header [data-device="desktop"] [data-row="middle"] { --height: 70px; min-height: 70px; }

.archive.category #header [data-device="desktop"] [data-row="middle"] > .ct-container, .archive.category #header [data-device="desktop"] .site-branding { height: 70px; min-height: 70px; }

.archive.category #header [data-device="desktop"] .site-logo-container { height: 70px; max-height: 70px; width: 190px; }

.archive.category #header [data-device="desktop"] .site-logo-container img { max-height: 52px; max-width: 190px; object-fit: contain; }

.archive.category .site-main { background: rgb(255, 255, 255); }

.archive.category .hero-section { background: rgb(255, 255, 255); border-bottom: 1px solid rgb(237, 241, 246); box-sizing: border-box; margin: 1.4rem auto 1.25rem; max-width: 1280px; padding: 1.8rem 0px 1.2rem; width: min(100% - 32px, 1280px); }

.archive.category .page-title { color: transparent; font-size: 0px; letter-spacing: 0px; line-height: 0.95; margin: 0px; text-transform: uppercase; }

.archive.category .page-title::before, .archive.category .page-title::after { display: inline; font-size: clamp(2.4rem, 5vw, 4.2rem); font-weight: 950; letter-spacing: 0px; line-height: 0.95; }

.archive.category .page-title::before { color: rgb(227, 6, 19); }

.archive.category .page-title::after { color: rgb(7, 11, 16); }

.category-actualites .page-title::before { content: "A"; }

.category-actualites .page-title::after { content: "CTUALITÉS"; }

.category-tendances .page-title::before { content: "T"; }

.category-tendances .page-title::after { content: "ENDANCES"; }

.category-videos .page-title::before { content: "V"; }

.category-videos .page-title::after { content: "IDÉOS"; }

.category-communiques .page-title::before { content: "C"; }

.category-communiques .page-title::after { content: "OMMUNIQUÉS"; }

.category-koze .page-title::before { content: "K"; }

.category-koze .page-title::after { content: "OZÉ"; }

.category-decideurs .page-title::before { content: "D"; }

.category-decideurs .page-title::after { content: "ÉCIDEURS"; }

.archive.category .hero-section::after { color: rgb(93, 102, 117); content: "Les sujets récents de ZAP.RE, sélectionnés et hiérarchisés pour une lecture rapide."; display: block; font-size: clamp(0.95rem, 1.4vw, 1.08rem); font-weight: 650; line-height: 1.45; margin-top: 0.8rem; max-width: 760px; }

.archive.category.category-actualites .hero-section::after { content: "L’actualité locale à suivre maintenant : infos utiles, alertes, faits du jour et vie réunionnaise."; }

.archive.category.category-tendances .hero-section::after { content: "Les sujets qui font parler La Réunion, des réseaux sociaux aux conversations du quotidien."; }

.archive.category.category-videos .hero-section::after { content: "LeZAP, reportages courts, interviews et formats vidéo pensés pour aller droit au fait."; }

.archive.category.category-communiques .hero-section::after { content: "Annonces, informations pratiques et communications institutionnelles clairement identifiées."; }

.archive.category.category-koze .hero-section::after { content: "Opinions, courriers, tribunes et paroles citoyennes autour des sujets qui font kozé."; }

.archive.category.category-decideurs .hero-section::after { content: "Briefs, signaux publics, économie locale et décisions à suivre pour comprendre les enjeux."; }

.archive.category .entries { align-items: start; box-sizing: border-box; display: grid; gap: 1.1rem; grid-template-columns: repeat(4, minmax(0px, 1fr)); margin: 0px auto 3rem; max-width: 1280px; width: min(100% - 32px, 1280px); }

.archive.category article.entry-card { background: rgb(255, 255, 255); border: 1px solid rgb(237, 241, 246); border-radius: 8px; box-shadow: rgba(15, 23, 42, 0.043) 0px 10px 24px; display: flex; flex-direction: column; height: auto; min-height: 0px; overflow: hidden; padding: 0px; transition: border-color 180ms, box-shadow 220ms, transform 220ms; }

.archive.category article.entry-card:hover { border-color: rgba(227, 6, 19, 0.22); box-shadow: rgba(15, 23, 42, 0.08) 0px 16px 34px; transform: translateY(-1px); }

.archive.category .entries article.entry-card:first-child { grid-column: span 2; }

.archive.category article.entry-card > .ct-media-container { aspect-ratio: 16 / 9; background: rgb(242, 244, 247); border-radius: 0px; display: block; margin: 0px; order: 1; overflow: hidden; position: relative; width: 100%; }

.archive.category article.entry-card > .ct-media-container img { aspect-ratio: 16 / 9; display: block; height: 100%; inset: 0px; object-fit: cover; position: absolute; transition: transform 320ms, filter 320ms; width: 100%; }

.archive.category article.entry-card:hover > .ct-media-container img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }

.archive.category article.entry-card > .entry-meta:first-child { order: 2; padding: 0.85rem 1rem 0px; }

.archive.category article.entry-card > .entry-title { font-size: clamp(1rem, 1.25vw, 1.18rem); font-weight: 950; line-height: 1.16; margin: 0.32rem 0px 0px; order: 3; padding: 0px 1rem; }

.archive.category article.entry-card > .entry-title a { color: rgb(7, 17, 31); transition: color 180ms; }

.archive.category article.entry-card:hover > .entry-title a { color: rgb(227, 6, 19); }

.archive.category article.entry-card > .entry-excerpt { color: rgb(85, 97, 113); font-size: 0.88rem; line-height: 1.45; margin: 0.55rem 0px 0px; order: 4; padding: 0px 1rem; }

.archive.category article.entry-card > .entry-meta:last-child { color: rgb(141, 151, 167); font-size: 0.72rem; font-weight: 650; order: 5; padding: 0.65rem 1rem 1rem; }

.archive.category article.entry-card:not(:first-child) > .entry-excerpt { display: none; }

.archive.category .entries article.entry-card:first-child > .entry-title { font-size: clamp(1.45rem, 2.2vw, 2rem); line-height: 1.08; padding-inline: 1.15rem; }

.archive.category .entries article.entry-card:first-child > .entry-meta:first-child, .archive.category .entries article.entry-card:first-child > .entry-excerpt, .archive.category .entries article.entry-card:first-child > .entry-meta:last-child { padding-inline: 1.15rem; }

.archive.category .entry-meta { margin: 0px; }

.archive.category .entry-meta .meta-categories a { color: rgb(227, 6, 19); font-size: 0.67rem; font-weight: 950; letter-spacing: 0.03em; text-transform: uppercase; }

.archive.category .entry-meta .meta-date, .archive.category .entry-meta time { color: rgb(141, 151, 167); font-size: 0.72rem; font-weight: 650; }

.archive.category-videos article.entry-card > .ct-media-container, .archive.category.category-videos article.entry-card > .ct-media-container { position: relative; }

.archive.category-videos article.entry-card > .ct-media-container::after, .archive.category.category-videos article.entry-card > .ct-media-container::after { background: rgba(0, 0, 0, 0.68); border-radius: 999px; content: ""; height: 44px; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); width: 44px; }

.archive.category-videos article.entry-card > .ct-media-container::before, .archive.category.category-videos article.entry-card > .ct-media-container::before { border-bottom: 9px solid transparent; border-left: 14px solid rgb(255, 255, 255); border-top: 9px solid transparent; content: ""; left: 50%; position: absolute; top: 50%; transform: translate(-35%, -50%); z-index: 2; }

@media (max-width: 900px) {
  .archive.category .hero-section, .archive.category .entries { width: min(100% - 28px, 1280px); }
  .archive.category .entries { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .archive.category .entries article.entry-card:first-child { grid-column: span 2; }
}

@media (max-width: 560px) {
  .archive.category .hero-section { margin-top: 1rem; padding: 1.2rem 0px 1rem; }
  .archive.category .entries { grid-template-columns: 1fr; gap: 0.9rem; }
  .archive.category .entries article.entry-card:first-child { grid-column: span 1; }
  .archive.category .entries article.entry-card:first-child > .entry-title, .archive.category article.entry-card > .entry-title { font-size: 1.18rem; line-height: 1.14; }
}

.page-id-3280 #header [data-device="desktop"] [data-row="middle"], .page-id-3282 #header [data-device="desktop"] [data-row="middle"], .page-id-3284 #header [data-device="desktop"] [data-row="middle"], .page-id-3286 #header [data-device="desktop"] [data-row="middle"], .page-id-3288 #header [data-device="desktop"] [data-row="middle"], .page-id-3290 #header [data-device="desktop"] [data-row="middle"] { --height: 70px; min-height: 70px; }

.page-id-3280 #header [data-device="desktop"] [data-row="middle"] > .ct-container, .page-id-3282 #header [data-device="desktop"] [data-row="middle"] > .ct-container, .page-id-3284 #header [data-device="desktop"] [data-row="middle"] > .ct-container, .page-id-3286 #header [data-device="desktop"] [data-row="middle"] > .ct-container, .page-id-3288 #header [data-device="desktop"] [data-row="middle"] > .ct-container, .page-id-3290 #header [data-device="desktop"] [data-row="middle"] > .ct-container, .page-id-3280 #header [data-device="desktop"] .site-branding, .page-id-3282 #header [data-device="desktop"] .site-branding, .page-id-3284 #header [data-device="desktop"] .site-branding, .page-id-3286 #header [data-device="desktop"] .site-branding, .page-id-3288 #header [data-device="desktop"] .site-branding, .page-id-3290 #header [data-device="desktop"] .site-branding { height: 70px; min-height: 70px; }

.page-id-3280 #header [data-device="desktop"] .site-logo-container, .page-id-3282 #header [data-device="desktop"] .site-logo-container, .page-id-3284 #header [data-device="desktop"] .site-logo-container, .page-id-3286 #header [data-device="desktop"] .site-logo-container, .page-id-3288 #header [data-device="desktop"] .site-logo-container, .page-id-3290 #header [data-device="desktop"] .site-logo-container { height: 70px; max-height: 70px; width: 190px; }

.page-id-3280 #header [data-device="desktop"] .site-logo-container img, .page-id-3282 #header [data-device="desktop"] .site-logo-container img, .page-id-3284 #header [data-device="desktop"] .site-logo-container img, .page-id-3286 #header [data-device="desktop"] .site-logo-container img, .page-id-3288 #header [data-device="desktop"] .site-logo-container img, .page-id-3290 #header [data-device="desktop"] .site-logo-container img { max-height: 52px; max-width: 190px; object-fit: contain; }

.page-id-3280 .site-main .hero-section, .page-id-3282 .site-main .hero-section, .page-id-3284 .site-main .hero-section, .page-id-3286 .site-main .hero-section, .page-id-3288 .site-main .hero-section, .page-id-3290 .site-main .hero-section { display: none; }

.zap-cat-page { box-sizing: border-box; margin: 0px auto 3rem; max-width: 1280px; width: min(100% - 32px, 1280px); }

.zap-cat-hero { border-bottom: 1px solid rgb(237, 241, 246); margin: 1.4rem auto 1.25rem; padding: 1.8rem 0px 1.2rem; }

.zap-cat-title { color: rgb(7, 11, 16); font-size: clamp(2.4rem, 5vw, 4.2rem); font-weight: 950; letter-spacing: 0px; line-height: 0.95; margin: 0px; text-transform: uppercase; }

.zap-cat-initial { color: rgb(227, 6, 19); }

.zap-cat-desc { color: rgb(93, 102, 117); font-size: clamp(0.95rem, 1.4vw, 1.08rem); font-weight: 650; line-height: 1.45; margin-top: 0.8rem; max-width: 760px; }

.zap-cat-query .wp-block-post-template { align-items: start; display: grid; gap: 1.1rem; grid-template-columns: repeat(4, minmax(0px, 1fr)); list-style: none; margin: 0px; padding: 0px; }

.zap-cat-query .wp-block-post { background: rgb(255, 255, 255); border: 1px solid rgb(237, 241, 246); border-radius: 8px; box-shadow: rgba(15, 23, 42, 0.043) 0px 10px 24px; overflow: hidden; transition: border-color 180ms, box-shadow 220ms, transform 220ms; }

.zap-cat-query .wp-block-post:hover { border-color: rgba(227, 6, 19, 0.22); box-shadow: rgba(15, 23, 42, 0.08) 0px 16px 34px; transform: translateY(-1px); }

.zap-cat-query .wp-block-post:first-child { grid-column: span 2; }

.zap-cat-card { display: flex; flex-direction: column; gap: 0px; height: 100%; }

.zap-cat-card .wp-block-post-featured-image { aspect-ratio: 16 / 9; background: rgb(242, 244, 247); margin: 0px; overflow: hidden; position: relative; width: 100%; }

.zap-cat-card .wp-block-post-featured-image a, .zap-cat-card .wp-block-post-featured-image img { display: block; height: 100%; width: 100%; }

.zap-cat-card .wp-block-post-featured-image img { object-fit: cover; transition: transform 320ms, filter 320ms; }

.zap-cat-query .wp-block-post:hover .wp-block-post-featured-image img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }

.zap-cat-card-copy { padding: 0.85rem 1rem 1rem; }

.zap-cat-card .taxonomy-category { margin: 0px; }

.zap-cat-card .taxonomy-category a { color: rgb(227, 6, 19); font-size: 0.67rem; font-weight: 950; letter-spacing: 0.03em; text-transform: uppercase; }

.zap-cat-card-title { font-size: clamp(1rem, 1.25vw, 1.18rem); font-weight: 950; line-height: 1.16; margin: 0.32rem 0px 0px; }

.zap-cat-card-title a { color: rgb(7, 17, 31); transition: color 180ms; }

.zap-cat-query .wp-block-post:hover .zap-cat-card-title a { color: rgb(227, 6, 19); }

.zap-cat-card .wp-block-post-date { color: rgb(141, 151, 167); font-size: 0.72rem; font-weight: 650; margin-top: 0.65rem; }

.zap-cat-card .wp-block-post-excerpt { color: rgb(85, 97, 113); font-size: 0.88rem; line-height: 1.45; margin: 0.55rem 0px 0px; }

.zap-cat-query .wp-block-post:not(:first-child) .wp-block-post-excerpt { display: none; }

.zap-cat-query .wp-block-post:first-child .zap-cat-card-title { font-size: clamp(1.45rem, 2.2vw, 2rem); line-height: 1.08; }

.zap-cat-page-videos .wp-block-post-featured-image a::after { background: rgba(0, 0, 0, 0.68); border-radius: 999px; content: ""; height: 44px; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); width: 44px; }

.zap-cat-page-videos .wp-block-post-featured-image a::before { border-bottom: 9px solid transparent; border-left: 14px solid rgb(255, 255, 255); border-top: 9px solid transparent; content: ""; left: 50%; position: absolute; top: 50%; transform: translate(-35%, -50%); z-index: 2; }

.zap-cat-pagination { margin-top: 1.6rem; }

.zap-cat-pagination .page-numbers, .zap-cat-pagination a { color: rgb(7, 17, 31); font-size: 0.85rem; font-weight: 800; }

@media (max-width: 900px) {
  .zap-cat-page { width: min(100% - 28px, 1280px); }
  .zap-cat-query .wp-block-post-template { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .zap-cat-query .wp-block-post:first-child { grid-column: span 2; }
}

@media (max-width: 560px) {
  .zap-cat-hero { margin-top: 1rem; padding: 1.2rem 0px 1rem; }
  .zap-cat-query .wp-block-post-template { grid-template-columns: 1fr; gap: 0.9rem; }
  .zap-cat-query .wp-block-post:first-child { grid-column: span 1; }
  .zap-cat-query .wp-block-post:first-child .zap-cat-card-title, .zap-cat-card-title { font-size: 1.18rem; line-height: 1.14; }
}

.zap-mock .wp-block-post-date, .zap-mock-meta { color: rgb(139, 149, 165); font-size: 0.7rem; font-weight: 650; }

.zap-mock .taxonomy-category, .zap-mock .zap-card-label { color: rgb(227, 6, 19); display: inline-flex; letter-spacing: 0.03em; }

.zap-mock .wp-block-post-featured-image { border-radius: 6px; overflow: hidden; }

.zap-mock img { transition: transform 320ms, filter 320ms; }

.zap-mock-card:hover img, .zap-side-item:hover img, .zap-stack-item:hover img, .zap-mini-item:hover img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }

.zap-mock-hero .wp-block-cover__background { background: linear-gradient(rgba(2, 6, 23, 0.12) 0%, rgba(2, 6, 23, 0.52) 48%, rgba(2, 6, 23, 0.82) 100%) !important; opacity: 1 !important; }

.zap-mock-hero h1 { color: rgb(255, 255, 255); font-size: clamp(2.15rem, 4.15vw, 3.45rem); text-shadow: rgba(0, 0, 0, 0.48) 0px 3px 22px; }

.zap-side-item { background: rgb(255, 255, 255); border: 1px solid rgb(237, 241, 246); border-radius: 7px; box-shadow: rgba(15, 23, 42, 0.035) 0px 10px 20px; grid-template-columns: 142px minmax(0px, 1fr); min-height: 112px; padding: 0.58rem; }

.zap-side-item .wp-block-post-featured-image { box-shadow: rgba(15, 23, 42, 0.07) 0px 8px 18px; }

.zap-side-item h3 { font-size: 1.06rem; line-height: 1.13; }

.zap-card-copy h3 { font-size: 1.08rem; line-height: 1.18; }

.zap-stack-copy h3, .zap-mini-copy h3, .zap-opinion-copy h3 { font-size: 1rem; line-height: 1.17; }

.zap-mock-footer h2 { color: rgb(255, 255, 255); font-size: 2.6rem; line-height: 0.98; }

.zap-mock-footer h2 span { color: rgb(227, 6, 19); }

@media (max-width: 900px) {
  .zap-side-item { grid-template-columns: 126px minmax(0px, 1fr); }
}

@media (max-width: 520px) {
  .zap-side-item, .zap-mock-card, .zap-stack-item, .zap-mini-item { grid-template-columns: 108px minmax(0px, 1fr); }
  .zap-side-item h3, .zap-card-copy h3 { font-size: 0.98rem; }
  .zap-mock-footer h2 { font-size: 2.3rem; }
}

@media (max-width: 760px) {
  body:is(.single-post, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) { overflow-x: hidden; }
  .single-post article.post, .single-post article.post > .hero-section, .single-post .entry-header, .single-post .entry-content, .single-post .ct-comments-container .ct-container-narrow, .zap-cat-page, .zap-cat-query .wp-block-post, .zap-cat-card { box-sizing: border-box; max-width: 100% !important; min-width: 0px !important; }
  .single-post article.post { padding-inline: 14px !important; width: 100% !important; }
  .single-post article.post > .hero-section { padding: 1.15rem !important; width: 100% !important; }
  .single-post .page-title, .single-post .entry-title { overflow-wrap: anywhere; word-break: break-word; font-size: clamp(1.65rem, 8.2vw, 2.08rem) !important; line-height: 1.08 !important; max-width: 100% !important; white-space: normal !important; }
  .single-post .entry-content { max-width: calc(-56px + 100vw) !important; padding-inline: 0px !important; width: calc(-56px + 100vw) !important; }
  .zap-cat-page { padding-inline: 20px !important; width: 100% !important; }
}

@media (max-width: 760px) {
  body:is(.single-post, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) { overflow-x: hidden; }
  .single-post article.post { box-sizing: border-box; margin-left: auto !important; margin-right: auto !important; max-width: 100vw !important; padding-inline: 14px !important; width: 100% !important; }
  .single-post article.post > .hero-section { box-sizing: border-box; margin-left: auto !important; margin-right: auto !important; max-width: calc(-28px + 100vw) !important; padding: 1.15rem !important; width: calc(-28px + 100vw) !important; }
  .single-post .entry-header, .single-post .page-title, .single-post .entry-title, .single-post .entry-meta { box-sizing: border-box; max-width: 100% !important; min-width: 0px !important; white-space: normal !important; width: 100% !important; }
  .single-post .page-title, .single-post .entry-title { overflow-wrap: anywhere; word-break: break-word; font-size: clamp(1.65rem, 8.2vw, 2.08rem) !important; line-height: 1.08 !important; }
  .single-post .entry-content { box-sizing: border-box; margin-left: auto !important; margin-right: auto !important; max-width: calc(-56px + 100vw) !important; padding-inline: 0px !important; width: calc(-56px + 100vw) !important; }
  .single-post .entry-content p, .single-post .comment-notes, .single-post .comment-form-cookies-consent { overflow-wrap: anywhere; word-break: break-word; }
  .single-post .ct-comments-container .ct-container-narrow { box-sizing: border-box; max-width: calc(-28px + 100vw) !important; width: calc(-28px + 100vw) !important; }
  .zap-cat-page { box-sizing: border-box; max-width: 100vw !important; padding-inline: 20px !important; width: 100% !important; }
  .zap-cat-desc, .zap-cat-card-title, .zap-cat-card-title a, .zap-cat-card .wp-block-post-excerpt { overflow-wrap: anywhere; word-break: break-word; max-width: 100% !important; white-space: normal !important; }
}

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header { background: rgb(255, 255, 255); border-bottom: 1px solid rgb(237, 241, 246); box-shadow: rgba(15, 23, 42, 0.035) 0px 10px 28px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] [data-row="middle"] { --height: 70px; min-height: 70px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] [data-row="middle"] > .ct-container { height: 70px; max-width: 1280px; min-height: 70px; padding-inline: 32px; width: 100%; grid-template-columns: minmax(190px, 240px) minmax(0px, 1fr) !important; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] .site-branding, body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] .site-logo-container { align-items: center; display: flex; height: 70px; max-height: 70px; max-width: 190px; min-height: 70px; width: 190px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] .site-logo-container img { display: block; max-height: 52px; max-width: 190px; object-fit: contain; height: auto !important; width: auto !important; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header .site-title-container { display: none; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] [data-column="start"] { max-width: 240px; min-width: 0px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] [data-column="end"], body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] [data-column="end"] [data-items] { justify-content: flex-end; min-width: 0px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header-menu-1 .ct-menu-link { color: rgb(8, 17, 31); font-size: 0.76rem; font-weight: 850; letter-spacing: 0px; min-height: 70px; padding-inline: 0.82rem; position: relative; text-transform: uppercase; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header-menu-1 .ct-menu-link:hover { color: rgb(227, 6, 19); }

body:is(.page-id-3280, .category-actualites, .single-post.category-actualites) #menu-item-3311 > .ct-menu-link, body:is(.page-id-3282, .category-tendances, .single-post.category-tendances) #menu-item-3310 > .ct-menu-link, body:is(.page-id-3284, .category-videos, .single-post.category-videos) #menu-item-3309 > .ct-menu-link, body:is(.page-id-3286, .category-communiques, .single-post.category-communiques) #menu-item-3308 > .ct-menu-link, body:is(.page-id-3288, .category-koze, .single-post.category-koze) #menu-item-3307 > .ct-menu-link, body:is(.page-id-3290, .category-decideurs, .single-post.category-decideurs) #menu-item-3306 > .ct-menu-link { color: rgb(7, 15, 29); }

body:is(.page-id-3280, .category-actualites, .single-post.category-actualites) #menu-item-3311 > .ct-menu-link::after, body:is(.page-id-3282, .category-tendances, .single-post.category-tendances) #menu-item-3310 > .ct-menu-link::after, body:is(.page-id-3284, .category-videos, .single-post.category-videos) #menu-item-3309 > .ct-menu-link::after, body:is(.page-id-3286, .category-communiques, .single-post.category-communiques) #menu-item-3308 > .ct-menu-link::after, body:is(.page-id-3288, .category-koze, .single-post.category-koze) #menu-item-3307 > .ct-menu-link::after, body:is(.page-id-3290, .category-decideurs, .single-post.category-decideurs) #menu-item-3306 > .ct-menu-link::after { background: rgb(227, 6, 19); bottom: 15px; content: ""; height: 2px; left: 0.82rem; position: absolute; right: 0.82rem; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] [data-row="middle"] { --height: 70px; min-height: 70px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] [data-row="middle"] > .ct-container { height: 70px; min-height: 70px; padding-inline: 20px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] .site-branding, body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] .site-logo-container { align-items: center; display: flex; height: 70px; max-height: 70px; max-width: 160px; min-height: 70px; width: 160px; }

body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] .site-logo-container img { display: block; max-height: 44px; max-width: 160px; object-fit: contain; height: auto !important; width: auto !important; }

body:is(.archive.category, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer { background: rgb(9, 13, 20); color: rgba(255, 255, 255, 0.74); margin-top: 0px; }

body:is(.archive.category, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer .ct-container { max-width: 1280px; padding-block: 1.2rem; padding-inline: 32px; }

body:is(.archive.category, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer a { color: rgb(255, 255, 255); font-weight: 800; }

.single-post .site-main { background: linear-gradient(rgb(247, 248, 251) 0px, rgb(255, 255, 255) 320px), rgb(255, 255, 255); }

.single-post .ct-container-full[data-content="narrow"] { max-width: none; padding: 0px 0px 2.8rem; width: 100%; }

.single-post article.post { margin: 0px auto; max-width: min(100% - 48px, 1120px); width: 100%; }

.single-post article.post > .hero-section { background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.86)), linear-gradient(135deg, rgba(227, 6, 19, 0.08), rgba(7, 15, 29, 0.04)); border: 1px solid rgb(237, 241, 246); border-radius: 10px; box-shadow: rgba(15, 23, 42, 0.075) 0px 22px 54px; margin: clamp(1.35rem, 3vw, 2.4rem) auto 0px; max-width: 1040px; padding: clamp(1.45rem, 4.2vw, 3.1rem); }

.single-post article.post > .hero-section::after { content: none !important; display: none !important; }

.single-post .entry-header { display: flex; flex-direction: column; margin: 0px; max-width: 920px; }

.single-post .page-title, .single-post .entry-title { font-size: clamp(2.25rem, 5.1vw, 4.65rem); font-weight: 950; letter-spacing: 0px; line-height: 0.98; margin: 0px; max-width: 920px; text-wrap: balance; color: rgb(7, 17, 31) !important; }

.single-post .page-title::before, .single-post .page-title::after, .single-post .entry-title::before, .single-post .entry-title::after { content: none !important; display: none !important; }

.single-post .entry-meta { align-items: center; color: rgb(123, 132, 148); display: flex; flex-wrap: wrap; font-size: 0.76rem; font-weight: 750; gap: 0.42rem 0.7rem; letter-spacing: 0.01em; line-height: 1.35; list-style: none; margin: 0px 0px 1rem; padding: 0px; text-transform: none; width: 100%; position: static !important; }

.single-post .entry-meta li { margin: 0px; }

.single-post .entry-meta .meta-categories { order: -1; }

.single-post .entry-meta .meta-categories a { background: rgb(227, 6, 19); border-radius: 999px; display: inline-flex; font-size: 0.68rem; font-weight: 950; letter-spacing: 0.04em; line-height: 1; padding: 0.45rem 0.64rem; text-decoration: none; text-transform: uppercase; color: rgb(255, 255, 255) !important; }

.single-post .entry-meta .meta-date { color: rgb(131, 140, 155); }

.single-post article.post > :is(.ct-featured-image, .post-thumbnail, figure.post-thumbnail), .single-post .entry-content > figure.wp-block-image:first-child { border-radius: 10px; box-shadow: rgba(15, 23, 42, 0.1) 0px 18px 42px; margin: 1.45rem auto 0px; max-width: 1040px; overflow: hidden; width: min(100%, 1040px); padding-bottom: 0px !important; }

.single-post article.post > .ct-featured-image .ct-media-container { aspect-ratio: 16 / 9; display: block; overflow: hidden; width: 100%; }

.single-post article.post > :is(.ct-featured-image, .post-thumbnail, figure.post-thumbnail) img, .single-post .entry-content > figure.wp-block-image:first-child img { aspect-ratio: 16 / 9; display: block; height: 100%; object-fit: cover; transition: transform 360ms, filter 360ms; width: 100%; }

.single-post article.post > :is(.ct-featured-image, .post-thumbnail, figure.post-thumbnail):hover img, .single-post .entry-content > figure.wp-block-image:first-child:hover img { filter: saturate(1.04) contrast(1.03); transform: scale(1.025); }

.single-post .entry-content { color: rgb(31, 41, 55); font-size: 1.12rem; line-height: 1.76; margin: clamp(1.8rem, 4vw, 3rem) auto 0px; max-width: 760px; width: min(100% - 32px, 760px); }

.single-post .entry-content > * { margin-left: auto; margin-right: auto; max-width: 760px; }

.single-post .entry-content p { margin-bottom: 1.35rem; }

.single-post .entry-content a { color: rgb(227, 6, 19); font-weight: 800; text-decoration-thickness: 0.08em; text-underline-offset: 0.18em; }

.single-post .entry-content::after { border-bottom: 1px solid rgb(232, 237, 243); border-top: 3px solid rgb(7, 17, 31); color: rgb(7, 17, 31); content: "Partager cet article"; display: flex; font-size: 0.78rem; font-weight: 950; letter-spacing: 0.06em; margin-top: 2.4rem; padding: 1rem 0px; text-transform: uppercase; }

.single-post .ct-comments-container { background: rgb(246, 248, 251); margin-top: 3rem; padding: clamp(1.6rem, 4vw, 3.2rem) 0px; }

.single-post .ct-comments-container .ct-container-narrow { max-width: 800px; width: min(100% - 32px, 800px); }

.single-post .ct-comments { background: rgb(255, 255, 255); border: 1px solid rgb(233, 238, 245); border-radius: 10px; box-shadow: rgba(15, 23, 42, 0.055) 0px 16px 40px; padding: clamp(1.2rem, 3vw, 2rem); }

.single-post .comment-reply-title { color: rgb(7, 17, 31); font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 950; letter-spacing: 0px; margin-bottom: 0.75rem; }

.single-post .comment-notes, .single-post .comment-form-cookies-consent { color: rgb(104, 115, 133); font-size: 0.88rem; line-height: 1.55; }

.single-post .comment-form input:not([type="checkbox"]), .single-post .comment-form textarea { background: rgb(251, 252, 254); border: 1px solid rgb(223, 230, 239); border-radius: 6px; box-shadow: none; }

.single-post .comment-form input:focus, .single-post .comment-form textarea:focus { border-color: rgb(227, 6, 19); box-shadow: rgba(227, 6, 19, 0.08) 0px 0px 0px 3px; }

.single-post .comment-form .submit { background: rgb(227, 6, 19); border: 0px; border-radius: 6px; box-shadow: rgba(227, 6, 19, 0.2) 0px 12px 26px; color: rgb(255, 255, 255); font-weight: 950; letter-spacing: 0.01em; padding-inline: 1.1rem; transition: transform 220ms, box-shadow 220ms, background 220ms; }

.single-post .comment-form .submit:hover { background: rgb(189, 3, 16); box-shadow: rgba(227, 6, 19, 0.25) 0px 15px 30px; transform: translateY(-1px); }

.single-post .ct-trending-block { background: rgb(9, 13, 20); color: rgb(255, 255, 255); margin: 0px; padding: 1.2rem 0px; }

.single-post .ct-trending-block .ct-container { max-width: 1040px; }

.single-post .ct-module-title { color: rgb(255, 255, 255); font-size: 1rem; font-weight: 950; letter-spacing: 0.02em; text-transform: uppercase; }

.single-post .ct-trending-block-item { background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 8px; padding: 0.48rem; }

.single-post .ct-trending-block img { border-radius: 6px; }

.single-post .ct-trending-block .ct-post-title { color: rgb(255, 255, 255); font-weight: 850; line-height: 1.18; }

@media (max-width: 999px) {
  body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="desktop"] [data-row="middle"] > .ct-container { padding-inline: 22px; }
  body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header-menu-1 .ct-menu-link { font-size: 0.7rem; padding-inline: 0.52rem; }
}

@media (max-width: 760px) {
  body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] .site-branding, body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] .site-logo-container { max-width: 148px; width: 148px; }
  body:is(.home, .archive.category, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290, .single-post) #header [data-device="mobile"] .site-logo-container img { max-height: 40px; max-width: 148px; }
  .single-post article.post { max-width: min(100% - 28px, 1120px); }
  .single-post article.post > .hero-section { border-radius: 8px; margin-top: 1rem; padding: 1.2rem; }
  .single-post .page-title, .single-post .entry-title { font-size: clamp(2rem, 10.5vw, 3rem); line-height: 1.02; }
  .single-post .entry-meta { font-size: 0.72rem; margin-bottom: 0.85rem; }
  .single-post .entry-content { font-size: 1.05rem; line-height: 1.68; margin-top: 1.5rem; width: min(100% - 28px, 760px); }
  .single-post .entry-content::after { margin-top: 2rem; }
  .single-post .ct-comments-container { margin-top: 2.2rem; }
  .single-post .ct-comments-container .ct-container-narrow { width: min(100% - 28px, 800px); }
  body:is(.archive.category, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer .ct-container { padding-inline: 20px; }
}

@media (max-width: 760px) {
  html, body, body:is(.archive.category, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #main-container { max-width: 100%; overflow-x: hidden; }
  .zap-cat-page, .zap-cat-page *, .single-post article.post, .single-post article.post *, .single-post .ct-comments-container, .single-post .ct-comments-container * { box-sizing: border-box; }
  .zap-cat-page { max-width: 100%; padding-inline: 20px; width: 100%; }
  .zap-cat-hero, .zap-cat-query, .zap-cat-query .wp-block-post-template, .zap-cat-query .wp-block-post, .zap-cat-card, .zap-cat-card-copy { max-width: 100%; min-width: 0px; width: 100%; }
  .zap-cat-title, .zap-cat-desc, .zap-cat-card-title, .zap-cat-card-title a, .zap-cat-card .wp-block-post-excerpt, .single-post .page-title, .single-post .entry-title, .single-post .entry-content, .single-post .entry-content p, .single-post .comment-notes, .single-post .comment-form-cookies-consent { overflow-wrap: anywhere; word-break: normal; }
  .zap-cat-title { font-size: clamp(2.05rem, 11vw, 3rem); line-height: 0.98; }
  .single-post article.post { max-width: 100%; padding-inline: 14px; width: 100%; }
  .single-post article.post > .hero-section { max-width: 100%; width: 100%; }
  .single-post .entry-header { max-width: 100%; min-width: 0px; width: 100%; }
  .single-post .page-title, .single-post .entry-title { font-size: clamp(1.85rem, 9.5vw, 2.65rem); line-height: 1.04; }
  .single-post .entry-content { max-width: 100%; padding-inline: 14px; width: 100%; }
}

.zap-mock h3 a, .zap-mock-footer a, .zap-mock-nav .wp-block-navigation-item__content { transition: color 180ms, opacity 180ms, transform 180ms; }

.zap-mock h3 a:hover, .zap-mock-footer a:hover, .zap-mock-nav .wp-block-navigation-item__content:hover { color: rgb(227, 6, 19); }

.zap-mock .taxonomy-category, .zap-mock .zap-card-label { color: rgb(227, 6, 19); display: inline-flex; letter-spacing: 0.03em; margin-bottom: 0.18rem; }

.zap-mock .wp-block-post-date, .zap-mock-meta { color: rgb(139, 149, 165); font-size: 0.7rem; font-weight: 650; letter-spacing: 0.01em; }

.zap-mock .wp-block-post-featured-image { background: rgb(242, 244, 247); border-radius: 6px; overflow: hidden; }

.zap-mock img { backface-visibility: hidden; transition: transform 320ms, filter 320ms; }

.zap-mock-card:hover img, .zap-side-item:hover img, .zap-stack-item:hover img, .zap-mini-item:hover img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }

.zap-mock-hero { box-shadow: rgba(15, 23, 42, 0.12) 0px 18px 42px; }

.zap-mock-hero .wp-block-cover__background { background: linear-gradient(rgba(2, 6, 23, 0.12) 0%, rgba(2, 6, 23, 0.52) 48%, rgba(2, 6, 23, 0.82) 100%) !important; opacity: 1 !important; }

.zap-mock-hero h1 { color: rgb(255, 255, 255); font-size: clamp(2.15rem, 4.15vw, 3.45rem); text-shadow: rgba(0, 0, 0, 0.48) 0px 3px 22px; }

.zap-mock-hero .wp-block-button__link { background: linear-gradient(135deg, rgb(243, 11, 25) 0%, rgb(201, 0, 11) 100%); box-shadow: rgba(227, 6, 19, 0.3) 0px 12px 26px; transition: box-shadow 220ms, transform 220ms; }

.zap-mock-hero .wp-block-button__link:hover { box-shadow: rgba(227, 6, 19, 0.36) 0px 16px 30px; transform: translateY(-1px); }

.zap-side-query .wp-block-post-template { gap: 0.6rem; }

.zap-side-item { background: rgb(255, 255, 255); border: 1px solid rgb(237, 241, 246); border-radius: 7px; box-shadow: rgba(15, 23, 42, 0.035) 0px 10px 20px; grid-template-columns: 142px minmax(0px, 1fr); min-height: 112px; padding: 0.58rem; transition: background-color 180ms, border-color 180ms, box-shadow 220ms, transform 220ms; }

.zap-side-item:hover { border-color: rgba(227, 6, 19, 0.24); box-shadow: rgba(15, 23, 42, 0.07) 0px 14px 28px; transform: translateY(-1px); }

.zap-side-item .wp-block-post-featured-image { box-shadow: rgba(15, 23, 42, 0.07) 0px 8px 18px; }

.zap-side-item h3 { font-size: 1.06rem; line-height: 1.13; }

.zap-mock-section-head, .zap-column-head { border-bottom: 1px solid rgb(237, 241, 246); padding-bottom: 0.6rem; }

.zap-card-copy h3 { font-size: 1.08rem; line-height: 1.18; }

.zap-stack-copy h3, .zap-mini-copy h3, .zap-opinion-copy h3 { font-size: 1rem; line-height: 1.17; }

.zap-stack-query .wp-block-post-template > li:first-child h3 { font-size: 1.18rem; line-height: 1.15; }

.zap-newsletter, .zap-mock-footer { box-shadow: rgba(15, 23, 42, 0.1) 0px 18px 44px; }

.zap-mock-footer h2 { color: rgb(255, 255, 255); font-size: 2.6rem; line-height: 0.98; text-shadow: rgba(0, 0, 0, 0.28) 0px 12px 32px; }

.zap-mock-footer h2 span { color: rgb(227, 6, 19); }

@media (max-width: 900px) {
  .zap-mock-hero h1 { font-size: 2.25rem; }
  .zap-side-item { grid-template-columns: 126px minmax(0px, 1fr); }
}

@media (max-width: 520px) {
  .zap-side-item, .zap-mock-card, .zap-stack-item, .zap-mini-item { grid-template-columns: 108px minmax(0px, 1fr); }
  .zap-side-item h3, .zap-card-copy h3 { font-size: 0.98rem; }
  .zap-mock-footer h2 { font-size: 2.3rem; }
}

.zap-mock { -webkit-font-smoothing: antialiased; text-rendering: geometricprecision; }

.zap-mock h1, .zap-mock h2, .zap-mock h3 { color: rgb(11, 18, 32); font-weight: 950; text-wrap: balance; }

.zap-mock h3 a, .zap-mock-footer a, .zap-mock-nav .wp-block-navigation-item__content { transition: color 180ms, opacity 180ms, transform 180ms; }

.zap-mock h3 a:hover, .zap-mock-footer a:hover, .zap-mock-nav .wp-block-navigation-item__content:hover { color: rgb(227, 6, 19); }

.zap-mock .taxonomy-category, .zap-mock .zap-card-label { display: inline-flex; letter-spacing: 0.03em; margin-bottom: 0.18rem; }

.zap-mock .taxonomy-category a, .zap-mock .zap-card-label { color: rgb(227, 6, 19); }

.zap-mock .wp-block-post-date, .zap-mock-meta { color: rgb(139, 149, 165); font-size: 0.7rem; font-weight: 650; letter-spacing: 0.01em; }

.zap-mock .wp-block-post-featured-image { background: rgb(242, 244, 247); border-radius: 6px; overflow: hidden; }

.zap-mock img { backface-visibility: hidden; transition: transform 320ms, filter 320ms; }

.zap-mock-card, .zap-side-item, .zap-stack-item, .zap-mini-item, .zap-opinion-item { transition: background-color 180ms, border-color 180ms, box-shadow 220ms, transform 220ms; }

.zap-mock-card:hover img, .zap-side-item:hover img, .zap-stack-item:hover img, .zap-mini-item:hover img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }

.zap-mock-card:hover h3 a, .zap-side-item:hover h3 a, .zap-stack-item:hover h3 a, .zap-mini-item:hover h3 a, .zap-opinion-item:hover h3 a { color: rgb(227, 6, 19); }

.zap-mock-hero { box-shadow: rgba(15, 23, 42, 0.12) 0px 18px 42px; }

.zap-mock-hero .wp-block-cover__background { background: linear-gradient(rgba(2, 6, 23, 0.12) 0%, rgba(2, 6, 23, 0.52) 48%, rgba(2, 6, 23, 0.82) 100%) !important; opacity: 1 !important; }

.zap-mock-hero .wp-block-cover__inner-container { position: relative; z-index: 2; }

.zap-mock-hero h1 { color: rgb(255, 255, 255); font-size: clamp(2.15rem, 4.15vw, 3.45rem); letter-spacing: 0px; text-shadow: rgba(0, 0, 0, 0.48) 0px 3px 22px; }

.zap-mock-hero p { text-shadow: rgba(0, 0, 0, 0.42) 0px 2px 16px; }

.zap-mock-hero .zap-mock-label { box-shadow: rgba(227, 6, 19, 0.26) 0px 8px 18px; letter-spacing: 0.04em; }

.zap-mock-hero .wp-block-button__link { background: linear-gradient(135deg, rgb(243, 11, 25) 0%, rgb(201, 0, 11) 100%); box-shadow: rgba(227, 6, 19, 0.3) 0px 12px 26px; letter-spacing: 0.01em; transition: box-shadow 220ms, transform 220ms; }

.zap-mock-hero .wp-block-button__link:hover { box-shadow: rgba(227, 6, 19, 0.36) 0px 16px 30px; transform: translateY(-1px); }

.zap-side-query .wp-block-post-template { gap: 0.6rem; }

.zap-side-item { background: rgb(255, 255, 255); border: 1px solid rgb(237, 241, 246); border-radius: 7px; box-shadow: rgba(15, 23, 42, 0.035) 0px 10px 20px; grid-template-columns: 142px minmax(0px, 1fr); min-height: 112px; padding: 0.58rem; }

.zap-side-query .wp-block-post-template > li:first-child .zap-side-item { padding-top: 0.58rem; }

.zap-side-item:hover { border-color: rgba(227, 6, 19, 0.24); box-shadow: rgba(15, 23, 42, 0.07) 0px 14px 28px; transform: translateY(-1px); }

.zap-side-item .wp-block-post-featured-image { box-shadow: rgba(15, 23, 42, 0.07) 0px 8px 18px; }

.zap-side-item img { min-height: 98px; }

.zap-side-item h3 { font-size: 1.04rem; letter-spacing: 0px; line-height: 1.13; margin-bottom: 0.34rem; }

.zap-mock-section { margin-top: 2.15rem; }

.zap-mock-section-head, .zap-column-head { border-bottom: 1px solid rgb(237, 241, 246); margin-bottom: 1rem; padding-bottom: 0.6rem; }

.zap-mock-section-head h2, .zap-column-head h2 { font-size: 1.34rem; font-weight: 950; letter-spacing: 0px; }

.zap-mock-section-head p, .zap-column-head p { color: rgb(96, 107, 123); font-weight: 750; }

.zap-mock-card .wp-block-post-featured-image, .zap-stack-query .wp-block-post-template > li:first-child .wp-block-post-featured-image { box-shadow: rgba(15, 23, 42, 0.075) 0px 10px 24px; }

.zap-mock-card:hover .wp-block-post-featured-image, .zap-stack-query .wp-block-post-template > li:first-child .zap-stack-item:hover .wp-block-post-featured-image { box-shadow: rgba(15, 23, 42, 0.11) 0px 16px 32px; }

.zap-card-copy { padding-top: 0.68rem; }

.zap-card-copy h3 { font-size: 1.04rem; letter-spacing: 0px; line-height: 1.18; margin-top: 0.2rem; }

.zap-stack-copy h3, .zap-mini-copy h3, .zap-opinion-copy h3 { font-size: 0.98rem; letter-spacing: 0px; line-height: 1.17; }

.zap-stack-query .wp-block-post-template > li:first-child h3 { font-size: 1.16rem; line-height: 1.15; }

.zap-stack-item, .zap-mini-item, .zap-opinion-item { border-color: rgb(237, 241, 246); }

.zap-stack-item:hover, .zap-mini-item:hover, .zap-opinion-item:hover { background: rgb(251, 252, 254); }

.zap-newsletter { box-shadow: rgba(227, 6, 19, 0.22) 0px 18px 44px; }

.zap-newsletter h2 { font-size: 1.18rem; letter-spacing: 0px; }

.zap-newsletter p { color: rgba(255, 255, 255, 0.86); }

.zap-newsletter .wp-block-button__link:hover { background: rgb(5, 7, 11); box-shadow: rgba(0, 0, 0, 0.26) 0px 14px 28px; transform: translateY(-1px); }

.zap-mock-footer { box-shadow: rgba(255, 255, 255, 0.06) 0px 1px 0px inset; }

.zap-mock-footer h2 { color: rgb(255, 255, 255); font-size: 2.6rem; line-height: 0.98; text-shadow: rgba(0, 0, 0, 0.28) 0px 12px 32px; }

.zap-mock-footer h2 span { color: rgb(227, 6, 19); }

.zap-mock-footer p { color: rgba(255, 255, 255, 0.72); }

.zap-mock-footer .wp-block-column p:first-child { color: rgb(255, 255, 255); font-size: 0.78rem; font-weight: 900; letter-spacing: 0.04em; margin-bottom: 0.55rem; text-transform: uppercase; }

@media (max-width: 900px) {
  .zap-mock-hero h1 { font-size: 2.25rem; }
  .zap-side-item { grid-template-columns: 126px minmax(0px, 1fr); }
  .zap-card-copy h3 { font-size: 1.02rem; }
}

@media (max-width: 520px) {
  .zap-side-item, .zap-mock-card, .zap-stack-item, .zap-mini-item { grid-template-columns: 108px minmax(0px, 1fr); }
  .zap-side-item h3, .zap-card-copy h3 { font-size: 0.98rem; }
  .zap-mock-footer h2 { font-size: 2.3rem; }
}

.home #header, .home .ct-footer { display: none; }

.home #main, .home #main > .ct-container-full { margin: 0px; padding: 0px; }

.zap-mock { background: rgb(255, 255, 255); box-sizing: border-box; color: rgb(15, 23, 42); font-family: Inter, Arial, Helvetica, sans-serif; max-width: 1360px; padding: 0px 0px 2rem; width: min(100% - 32px, 1360px); margin-inline: auto !important; }

.zap-mock a { color: inherit; text-decoration: none; }

.zap-mock-topbar { background: rgb(6, 9, 13); color: rgb(255, 255, 255); font-size: 0.72rem; line-height: 1; padding: 0.52rem 1.1rem; }

.zap-mock-topbar p { align-items: center; display: flex; justify-content: space-between; margin: 0px; }

.zap-mock-topbar strong { color: rgb(255, 255, 255); margin-right: 0.45rem; text-transform: uppercase; }

.zap-mock-topbar span { color: rgba(255, 255, 255, 0.78); font-size: 0.68rem; }

.zap-mock-header { align-items: center; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(236, 239, 243); flex-wrap: nowrap; gap: 1.25rem; justify-content: space-between; min-height: 84px; padding: 0.8rem 1.35rem; display: flex !important; }

.zap-mock-logo { max-width: 230px; width: 230px; flex: 0 0 230px !important; margin: 0px !important; }

.zap-mock-logo img { display: block; height: auto; max-height: 70px; object-fit: contain; width: 230px; }

.zap-mock-nav { flex: 1 1 auto; font-size: 0.76rem; font-weight: 900; text-transform: uppercase; display: flex !important; justify-content: flex-end !important; width: auto !important; }

.zap-mock-nav .wp-block-navigation__container { flex-wrap: wrap; gap: 0.85rem 1rem; justify-content: flex-end; display: flex !important; flex-direction: row !important; }

.zap-mock-nav .wp-block-navigation-item { position: relative; }

.zap-mock-nav .wp-block-navigation-item__content { padding: 0.4rem 0.25rem; }

.zap-mock-nav .is-active .wp-block-navigation-item__content::after, .zap-mock-nav .wp-block-navigation-item__content:hover::after { background: rgb(227, 6, 19); bottom: -0.7rem; content: ""; height: 3px; left: 0px; position: absolute; right: 0px; }

.zap-mock-hero-grid, .zap-mock-section, .zap-mock-triple, .zap-mock-duo, .zap-newsletter, .zap-mock-footer { box-sizing: border-box; margin-inline: auto; max-width: 1280px; width: 100%; }

.zap-mock-hero-grid { display: grid; gap: 1.15rem; grid-template-columns: minmax(0px, 2.05fr) minmax(380px, 0.95fr); margin-top: 1rem; }

.zap-mock-hero { aspect-ratio: 16 / 9; border-radius: 4px; overflow: hidden; min-height: 0px !important; }

.zap-mock-hero .wp-block-cover__inner-container { align-self: end; max-width: 680px; padding: 1.45rem; }

.zap-mock-hero h1 { color: rgb(255, 255, 255); font-size: clamp(2rem, 4.1vw, 3.25rem); letter-spacing: 0px; line-height: 0.98; margin: 0.35rem 0px 0.7rem; max-width: 640px; }

.zap-mock-hero p { color: rgba(255, 255, 255, 0.92); font-size: 0.95rem; line-height: 1.45; margin: 0px 0px 0.45rem; max-width: 560px; }

.zap-mock-label, .zap-mock .taxonomy-category, .zap-mock .zap-card-label { color: rgb(227, 6, 19); font-size: 0.66rem; font-weight: 950; line-height: 1.1; text-transform: uppercase; }

.zap-mock-hero .zap-mock-label { background: rgb(227, 6, 19); color: rgb(255, 255, 255); display: inline-block; padding: 0.25rem 0.4rem; }

.zap-mock-meta, .zap-mock .wp-block-post-date { color: rgb(107, 114, 128); font-size: 0.74rem; }

.zap-mock-hero .zap-mock-meta { color: rgba(255, 255, 255, 0.82); }

.zap-mock-hero .wp-block-button__link, .zap-newsletter .wp-block-button__link { background: rgb(227, 6, 19); border-radius: 4px; color: rgb(255, 255, 255); font-size: 0.78rem; font-weight: 900; padding: 0.62rem 0.85rem; }

.zap-mock-side { background: rgb(255, 255, 255); border-left: 1px solid rgb(230, 233, 238); padding-left: 0.85rem; }

.zap-side-query .wp-block-post-template { display: grid; gap: 0px; margin: 0px; padding: 0px; }

.zap-side-item { border-bottom: 1px solid rgb(237, 240, 244); display: grid; gap: 0.8rem; grid-template-columns: 134px minmax(0px, 1fr); min-height: 104px; padding: 0.62rem 0px; }

.zap-side-query .wp-block-post-template > li:first-child .zap-side-item { padding-top: 0px; }

.zap-side-item .wp-block-post-featured-image, .zap-mock-card .wp-block-post-featured-image, .zap-stack-item .wp-block-post-featured-image, .zap-mini-item .wp-block-post-featured-image { margin: 0px; }

.zap-side-item img, .zap-mock-card img, .zap-stack-item img, .zap-mini-item img { border-radius: 4px; display: block; object-fit: cover; width: 100%; }

.zap-side-item img { aspect-ratio: 4 / 3; height: 100%; min-height: 94px; }

.zap-side-item h3 { font-size: 1rem; line-height: 1.14; margin: 0.18rem 0px 0.3rem; }

.zap-mock-section { margin-top: 2rem; }

.zap-mock-section-head, .zap-column-head { align-items: center; display: flex; justify-content: space-between; margin-bottom: 0.85rem; }

.zap-mock-section-head h2, .zap-column-head h2 { font-size: 1.25rem; letter-spacing: 0px; line-height: 1; margin: 0px; text-transform: uppercase; }

.zap-mock-section-head h2::first-letter, .zap-column-head h2::first-letter { color: rgb(227, 6, 19); }

.zap-mock-section-head p, .zap-column-head p { font-size: 0.73rem; margin: 0px; }

.zap-card-query .wp-block-post-template { display: grid; gap: 1rem; margin: 0px; padding: 0px; }

.zap-mock-koze-grid .zap-card-query .wp-block-post-template { grid-template-columns: repeat(4, minmax(0px, 1fr)); }

.zap-latest-query .wp-block-post-template { grid-template-columns: repeat(5, minmax(0px, 1fr)); }

.zap-mock-card { background: rgb(255, 255, 255); border: 0px; border-radius: 4px; box-shadow: none; overflow: hidden; }

.zap-mock-card img { aspect-ratio: 16 / 9; }

.zap-card-copy { padding-top: 0.55rem; }

.zap-card-copy h3 { font-size: 0.96rem; line-height: 1.16; margin: 0.28rem 0px 0.4rem; }

.zap-mock-triple { display: grid; gap: 1.2rem; grid-template-columns: repeat(3, minmax(0px, 1fr)); margin-top: 2rem; }

.zap-mock-column { background: rgb(255, 255, 255); border-top: 1px solid rgb(237, 240, 244); padding-top: 0.85rem; }

.zap-trends .zap-column-head h2 { color: rgb(91, 33, 182); }

.zap-videos .zap-column-head h2 { color: rgb(227, 6, 19); }

.zap-opinions .zap-column-head h2 { color: rgb(234, 88, 12); }

.zap-stack-query .wp-block-post-template, .zap-opinion-query .wp-block-post-template, .zap-mini-query .wp-block-post-template { display: grid; gap: 0.72rem; margin: 0px; padding: 0px; }

.zap-stack-item { border-bottom: 1px solid rgb(237, 240, 244); display: grid; gap: 0.55rem; grid-template-columns: 76px minmax(0px, 1fr); padding-bottom: 0.65rem; }

.zap-stack-query .wp-block-post-template > li:first-child .zap-stack-item { display: block; }

.zap-stack-query .wp-block-post-template > li:first-child img { aspect-ratio: 16 / 9; margin-bottom: 0.55rem; }

.zap-stack-query .wp-block-post-template > li:not(:first-child) img { aspect-ratio: 1 / 1; }

.zap-stack-copy h3 { font-size: 0.9rem; line-height: 1.15; margin: 0px 0px 0.25rem; }

.zap-stack-query .wp-block-post-template > li:first-child h3 { font-size: 1.08rem; }

.zap-video-stack .wp-block-post-template > li:first-child .zap-stack-item { position: relative; }

.zap-video-stack .wp-block-post-template > li:first-child .zap-stack-item::after { background: rgba(0, 0, 0, 0.68); border-radius: 999px; content: ""; height: 50px; left: 50%; position: absolute; top: 34%; transform: translate(-50%, -50%); width: 50px; }

.zap-video-stack .wp-block-post-template > li:first-child .zap-stack-item::before { border-bottom: 10px solid transparent; border-left: 16px solid rgb(255, 255, 255); border-top: 10px solid transparent; content: ""; left: 50%; position: absolute; top: 34%; transform: translate(-35%, -50%); z-index: 2; }

.zap-opinion-item { border-bottom: 1px solid rgb(237, 240, 244); display: grid; gap: 0.55rem; grid-template-columns: 34px minmax(0px, 1fr); padding-bottom: 0.8rem; }

.zap-quote-mark { color: rgb(17, 24, 39); font-size: 2.4rem; font-weight: 900; line-height: 1; margin: 0px; }

.zap-opinion-copy h3 { font-size: 0.96rem; line-height: 1.16; margin: 0px 0px 0.25rem; }

.zap-mock-duo { display: grid; gap: 1.2rem; grid-template-columns: repeat(2, minmax(0px, 1fr)); margin-top: 2rem; }

.zap-mini-item { border-bottom: 1px solid rgb(237, 240, 244); display: grid; gap: 0.6rem; grid-template-columns: 72px minmax(0px, 1fr); padding-bottom: 0.65rem; }

.zap-mini-item img { aspect-ratio: 1 / 1; }

.zap-mini-copy h3 { font-size: 0.92rem; line-height: 1.15; margin: 0px 0px 0.25rem; }

.zap-newsletter { align-items: center; background: linear-gradient(135deg, rgb(227, 6, 19) 0%, rgb(207, 6, 17) 58%, rgb(159, 2, 11) 100%); border-radius: 8px; box-shadow: rgba(227, 6, 19, 0.18) 0px 18px 36px; color: rgb(255, 255, 255); display: grid; gap: 1.1rem; grid-template-columns: auto minmax(0px, 1fr) auto; margin-top: 2rem; overflow: hidden; padding: 1.2rem 1.45rem; position: relative; }

.zap-newsletter::after { border: 1px solid rgba(255, 255, 255, 0.18); bottom: -42px; content: ""; height: 112px; pointer-events: none; position: absolute; right: 10.5rem; transform: rotate(-8deg); width: 74px; }

.zap-newsletter-icon { align-items: center; background: rgb(255, 255, 255); border-radius: 999px; color: rgb(227, 6, 19); display: flex; font-weight: 900; height: 46px; justify-content: center; margin: 0px; min-width: 46px; position: relative; z-index: 1; width: 46px !important; }

.zap-newsletter-copy, .zap-newsletter .wp-block-buttons { position: relative; z-index: 1; }

.zap-newsletter h2, .zap-newsletter p { margin: 0px; }

.zap-newsletter h2 { font-size: 1.12rem; text-transform: uppercase; }

.zap-newsletter p { font-size: 0.82rem; }

.zap-newsletter .wp-block-button__link { background: rgb(17, 24, 39); border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 999px; box-shadow: rgba(0, 0, 0, 0.22) 0px 10px 22px; padding-inline: 1.15rem; text-transform: uppercase; }

.zap-mock-footer { background: rgb(7, 11, 16); border-radius: 0px; color: rgb(255, 255, 255); margin-top: 2rem; overflow: hidden; padding: 2.3rem 2rem 2rem; position: relative; }

.zap-mock-footer::after { background: rgba(255, 255, 255, 0.055); clip-path: polygon(18% 8%, 68% 0px, 96% 28%, 88% 70%, 52% 100%, 10% 86%, 0px 42%); content: ""; height: 116px; pointer-events: none; position: absolute; right: 3rem; top: 4.5rem; width: 150px; }

.zap-mock-footer::before { background: rgb(227, 6, 19); border-radius: 999px; box-shadow: rgba(227, 6, 19, 0.12) 0px 0px 0px 6px; content: ""; height: 12px; pointer-events: none; position: absolute; right: 6.5rem; top: 7.7rem; width: 12px; z-index: 1; }

.zap-footer-brand, .zap-mock-footer > .wp-block-columns { position: relative; z-index: 2; }

.zap-footer-brand { margin-bottom: 1.35rem; max-width: 360px; }

.zap-mock-footer > .wp-block-columns { gap: 2rem; grid-template-columns: 1.15fr 1fr 1.2fr; margin-bottom: 0px; display: grid !important; }

.zap-mock-footer h2 { font-size: 2.45rem; letter-spacing: 0px; margin: 0px 0px 0.25rem; }

.zap-mock-footer h2 span { color: rgb(227, 6, 19); }

.zap-mock-footer p { color: rgba(255, 255, 255, 0.78); font-size: 0.82rem; line-height: 1.7; }

.zap-mock-footer a { color: rgba(255, 255, 255, 0.82); text-decoration: none; }

.zap-mock-footer a:hover { color: rgb(255, 255, 255); }

@media (max-width: 900px) {
  .zap-mock { max-width: none; width: 100%; }
  .zap-mock-topbar p, .zap-mock-header { align-items: flex-start; flex-wrap: wrap; display: flex !important; }
  .zap-mock-header { gap: 0.55rem; padding: 0.65rem 1rem; }
  .zap-mock-topbar span { display: block; margin-top: 0.35rem; }
  .zap-mock-logo, .zap-mock-logo img { max-width: 170px; width: 170px; }
  .zap-mock-logo { flex-basis: 170px !important; }
  .zap-mock-logo img { max-height: 54px; }
  .zap-mock-nav { flex: 1 1 100%; margin-top: 0px; width: 100% !important; }
  .zap-mock-nav .wp-block-navigation__container { gap: 0.35rem 0.8rem; grid-template-columns: repeat(3, minmax(0px, 1fr)); justify-items: start; display: grid !important; }
  .zap-mock-hero-grid, .zap-mock-triple, .zap-mock-duo, .zap-newsletter { grid-template-columns: 1fr; }
  .zap-mock-hero-grid, .zap-mock-section, .zap-mock-triple, .zap-mock-duo, .zap-newsletter, .zap-mock-footer { margin-left: 1rem; margin-right: 1rem; max-width: none; width: auto; }
  .zap-mock-hero { aspect-ratio: auto; min-height: 54vh !important; }
  .zap-mock-hero h1 { font-size: 2.25rem; line-height: 1.02; }
  .zap-mock-koze-grid .zap-card-query .wp-block-post-template, .zap-latest-query .wp-block-post-template { grid-template-columns: 1fr; }
  .zap-mock-card { display: grid; gap: 0.75rem; grid-template-columns: 128px minmax(0px, 1fr); }
  .zap-mock-card img { aspect-ratio: 16 / 9; height: 100%; }
  .zap-card-copy { padding-top: 0px; }
}

@media (max-width: 520px) {
  .zap-side-item, .zap-mock-card, .zap-stack-item, .zap-mini-item { grid-template-columns: 104px minmax(0px, 1fr); }
  .zap-mock-hero .wp-block-cover__inner-container { padding: 1rem; }
  .zap-newsletter { padding: 1.1rem; text-align: left; }
  .zap-newsletter::after { right: -1.5rem; }
  .zap-newsletter .wp-block-buttons { justify-content: flex-start; }
  .zap-mock-footer { padding: 2rem 1.2rem; }
  .zap-mock-footer > .wp-block-columns { grid-template-columns: 1fr; gap: 1rem; }
  .zap-mock-footer::after { height: 92px; right: 1.2rem; top: 2rem; width: 118px; }
  .zap-mock-footer::before { right: 3.8rem; top: 4.7rem; }
}

.home #header [data-device="mobile"] .site-title { display: none; }

.home #header [data-device="mobile"] .site-logo-container { align-items: center; display: flex; height: 62px; max-height: 62px; width: 160px; }

.home #header [data-device="mobile"] .site-logo-container img { max-height: 46px; max-width: 160px; object-fit: contain; }

.home #main > .ct-container-full { margin-top: -24px; }

.zap-phase3 { padding-top: 0.75rem; }

.zap-phase3 { background: rgb(245, 245, 245); color: rgb(17, 24, 39); padding: clamp(0.75rem, 2vw, 1.25rem) clamp(0.75rem, 3vw, 2rem) 2.5rem; }

.zap-phase3 a { text-decoration: none; }

.zap-phase3 .zap-lead-grid { display: grid; gap: 1rem; grid-template-columns: minmax(0px, 2.05fr) minmax(310px, 0.95fr); margin-inline: auto; max-width: 1280px; min-height: calc(-112px + 100vh); }

.zap-phase3 .zap-main-story { border-radius: 8px; min-height: calc(-112px + 100vh); overflow: hidden; }

.zap-phase3 .zap-main-story .wp-block-cover__inner-container { align-self: end; max-width: 760px; padding: clamp(1.25rem, 4vw, 3rem); }

.zap-phase3 .zap-main-story h1 { color: rgb(255, 255, 255); font-size: clamp(2.4rem, 5.8vw, 5.3rem); letter-spacing: 0px; line-height: 0.95; margin: 0.25rem 0px 0.9rem; max-width: 780px; }

.zap-phase3 .zap-main-story p { color: rgba(255, 255, 255, 0.9); max-width: 620px; }

.zap-phase3 .zap-main-story .wp-block-button__link { background: rgb(227, 6, 19); border-radius: 4px; color: rgb(255, 255, 255); font-weight: 900; padding: 0.72rem 1rem; }

.zap-phase3 .zap-kicker, .zap-phase3 .taxonomy-category, .zap-phase3 .zap-card-label { color: rgb(227, 6, 19); font-size: 0.72rem; font-weight: 950; letter-spacing: 0px; text-transform: uppercase; }

.zap-phase3 .zap-side-news { background: rgb(255, 255, 255); border-radius: 8px; border-top: 5px solid rgb(227, 6, 19); box-shadow: rgba(17, 24, 39, 0.08) 0px 12px 28px; padding: 1rem; }

.zap-phase3 .zap-side-news h2, .zap-phase3 .zap-rail-section > h2 { border-bottom: 2px solid rgb(17, 24, 39); font-size: 1.15rem; line-height: 1.1; margin: 0px 0px 0.85rem; padding-bottom: 0.55rem; text-transform: uppercase; }

.zap-phase3 .zap-side-query .wp-block-post-template, .zap-phase3 .zap-mini-query .wp-block-post-template { display: grid; gap: 0.85rem; margin: 0px; padding: 0px; }

.zap-phase3 .zap-side-card, .zap-phase3 .zap-mini-card { border-bottom: 1px solid rgb(229, 231, 235); display: grid; gap: 0.75rem; grid-template-columns: 118px minmax(0px, 1fr); padding-bottom: 0.85rem; }

.zap-phase3 .zap-side-card:last-child, .zap-phase3 .zap-mini-card:last-child { border-bottom: 0px; padding-bottom: 0px; }

.zap-phase3 .zap-side-card .wp-block-post-featured-image, .zap-phase3 .zap-mini-card .wp-block-post-featured-image { margin: 0px; }

.zap-phase3 .zap-side-card img, .zap-phase3 .zap-mini-card img { aspect-ratio: 4 / 3; border-radius: 6px; height: 100%; object-fit: cover; width: 100%; }

.zap-phase3 .zap-side-card h3, .zap-phase3 .zap-mini-card h3 { font-size: 1rem; line-height: 1.16; margin: 0.2rem 0px 0.35rem; }

.zap-phase3 .wp-block-post-date { color: rgb(102, 112, 133); font-size: 0.78rem; }

.zap-phase3 .zap-section { margin: clamp(1.4rem, 3vw, 2rem) auto 0px; max-width: 1280px; }

.zap-phase3 .zap-section-head { align-items: end; border-bottom: 3px solid rgb(17, 24, 39); display: flex; gap: 1rem; justify-content: space-between; margin-bottom: 0.9rem; padding-bottom: 0.55rem; }

.zap-phase3 .zap-section-head h2 { font-size: clamp(1.55rem, 2.6vw, 2.25rem); line-height: 1; margin: 0px; text-transform: uppercase; }

.zap-phase3 .zap-section-head p { color: rgb(102, 112, 133); margin: 0px; max-width: 360px; }

.zap-phase3 .zap-query .wp-block-post-template { gap: 1rem; }

.zap-phase3 .zap-card { background: rgb(255, 255, 255); border: 1px solid rgb(229, 231, 235); border-radius: 8px; box-shadow: none; color: rgb(17, 24, 39); height: 100%; overflow: hidden; transition: transform 140ms, box-shadow 140ms; }

.zap-phase3 .zap-card:hover { box-shadow: rgba(17, 24, 39, 0.12) 0px 16px 34px; transform: translateY(-2px); }

.zap-phase3 .zap-card .wp-block-post-featured-image { margin: 0px; }

.zap-phase3 .zap-card .wp-block-post-featured-image img { aspect-ratio: 16 / 9; height: auto; object-fit: cover; width: 100%; }

.zap-phase3 .zap-card-body { padding: 0.8rem; }

.zap-phase3 .zap-card h3 { font-size: clamp(1.02rem, 1.7vw, 1.22rem); line-height: 1.14; margin: 0.32rem 0px 0.45rem; }

.zap-phase3 .zap-video .zap-card { background: rgb(255, 255, 255); border-color: rgb(215, 219, 227); color: rgb(17, 24, 39); position: relative; }

.zap-phase3 .zap-video .wp-block-post-title a, .zap-phase3 .zap-video .wp-block-post-excerpt { color: rgb(17, 24, 39); }

.zap-phase3 .zap-video .zap-card::after { align-items: center; background: rgb(227, 6, 19); border-radius: 999px; content: ""; display: flex; height: 42px; justify-content: center; left: 0.75rem; position: absolute; top: 0.75rem; width: 42px; }

.zap-phase3 .zap-video .zap-card::before { border-bottom: 8px solid transparent; border-left: 13px solid rgb(255, 255, 255); border-top: 8px solid transparent; content: ""; height: 0px; left: calc(16px + 0.75rem); position: absolute; top: calc(13px + 0.75rem); width: 0px; z-index: 2; }

.zap-phase3 .zap-lower-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0px, 1fr)); margin: clamp(1.4rem, 3vw, 2rem) auto 0px; max-width: 1280px; }

.zap-phase3 .zap-rail-section { background: rgb(255, 255, 255); border: 1px solid rgb(229, 231, 235); border-radius: 8px; box-shadow: rgba(17, 24, 39, 0.06) 0px 10px 24px; padding: 1rem; }

.zap-phase3 .zap-comm, .zap-phase3 .zap-koze, .zap-phase3 .zap-decideurs, .zap-phase3 .zap-follow { background: rgb(255, 255, 255); color: rgb(17, 24, 39); }

.zap-phase3 .zap-koze .zap-card-label { color: rgb(180, 35, 24); }

.zap-phase3 .zap-decideurs { border-top: 5px solid rgb(17, 24, 39); }

.zap-phase3 .zap-decideurs .zap-card-label { color: rgb(138, 97, 22); }

.zap-phase3 .zap-follow-compact { background: rgb(17, 24, 39); border-radius: 8px; color: rgb(255, 255, 255); margin: clamp(1.4rem, 3vw, 2rem) auto 0px; max-width: 1280px; padding: 0.85rem 1rem; }

.zap-phase3 .zap-follow-compact p { margin: 0px; }

@media (max-width: 900px) {
  .zap-phase3 { padding-inline: 0.8rem; }
  .zap-phase3 .zap-lead-grid, .zap-phase3 .zap-lower-grid { grid-template-columns: 1fr; }
  .zap-phase3 .zap-lead-grid { min-height: auto; }
  .zap-phase3 .zap-main-story { min-height: 72vh; }
  .zap-phase3 .zap-main-story .wp-block-cover__inner-container { padding: 1.2rem; }
  .zap-phase3 .zap-section-head { align-items: start; display: block; }
  .zap-phase3 .zap-section-head h2 { font-size: 1.7rem; }
  .zap-phase3 .zap-query .wp-block-post-template { grid-template-columns: 1fr !important; }
  .zap-phase3 .zap-card h3 { font-size: 1.18rem; }
}

@media (max-width: 520px) {
  .zap-phase3 .zap-main-story { border-radius: 0px; margin-inline: -0.8rem; min-height: 78vh; }
  .zap-phase3 .zap-main-story h1 { font-size: 2.25rem; line-height: 1.02; max-width: 300px; }
  .zap-phase3 .zap-main-story p.has-large-font-size { line-height: 1.45; max-width: 300px; font-size: 1.08rem !important; }
  .zap-phase3 .zap-side-card, .zap-phase3 .zap-mini-card { grid-template-columns: 104px minmax(0px, 1fr); }
}

.home .entry-header { display: none; }

.home #main > .ct-container-full { padding-top: 0px; }

.home #header [data-device="desktop"] [data-row="middle"] { --height: 76px; min-height: 76px; }

.home #header [data-device="desktop"] [data-row="middle"] > .ct-container, .home #header [data-device="desktop"] .site-branding { height: 76px; min-height: 76px; }

.home #header [data-device="desktop"] .site-logo-container { align-items: center; display: flex; height: 76px; max-height: 76px; }

.home #header [data-device="desktop"] .site-logo-container img { max-height: 56px; object-fit: contain; }

.home #header [data-device="desktop"] .site-title { display: none; line-height: 1; }

.zap-home { background: rgb(255, 255, 255); color: var(--zap-ink); }

.zap-kicker { color: var(--zap-red); font-size: 0.78rem; font-weight: 800; text-transform: uppercase; }

.zap-home .wp-block-heading { letter-spacing: 0px; }

.zap-hero { border-radius: 8px; min-height: clamp(520px, 64vw, 720px); overflow: hidden; }

.zap-hero .wp-block-cover__inner-container { max-width: 980px; }

.zap-hero h1 { font-size: clamp(2.55rem, 7vw, 5.8rem); line-height: 0.98; max-width: 900px; }

.zap-hero p { max-width: 650px; }

.zap-hero .wp-block-button__link, .zap-follow .wp-block-button__link { background: var(--zap-red); border-radius: 6px; color: rgb(255, 255, 255); font-weight: 800; }

.zap-topline { border-bottom: 1px solid var(--zap-line); border-top: 1px solid var(--zap-line); color: var(--zap-muted); font-size: 0.95rem; padding-block: 0.7rem; }

.zap-section { margin-block: clamp(2.4rem, 5vw, 4.6rem); }

.zap-section-head { align-items: end; border-bottom: 3px solid var(--zap-ink); display: flex; gap: 1rem; justify-content: space-between; margin-bottom: 1.3rem; padding-bottom: 0.65rem; }

.zap-section-head h2 { font-size: clamp(1.75rem, 4vw, 3rem); line-height: 1; margin: 0px; }

.zap-section-head p { color: var(--zap-muted); margin: 0px; max-width: 420px; }

.zap-query .wp-block-post-template { gap: 1.1rem; }

.zap-card { background: rgb(255, 255, 255); border: 1px solid var(--zap-line); border-radius: 8px; box-shadow: rgba(17, 24, 39, 0.08) 0px 16px 42px; height: 100%; overflow: hidden; transition: transform 160ms, box-shadow 160ms; }

.zap-card:hover { box-shadow: rgba(17, 24, 39, 0.14) 0px 24px 60px; transform: translateY(-2px); }

.zap-card .wp-block-post-featured-image { margin: 0px; }

.zap-card .wp-block-post-featured-image img { aspect-ratio: 16 / 10; height: auto; object-fit: cover; width: 100%; }

.zap-card-body { padding: 1rem; }

.zap-card .taxonomy-category, .zap-card-label { color: var(--zap-red); font-size: 0.72rem; font-weight: 900; text-transform: uppercase; }

.zap-card h3 { font-size: clamp(1.05rem, 2.4vw, 1.28rem); line-height: 1.15; margin: 0.4rem 0px; }

.zap-card .wp-block-post-date { color: var(--zap-muted); font-size: 0.82rem; }

.zap-card .wp-block-post-excerpt { color: rgb(71, 84, 103); font-size: 0.92rem; }

.zap-hot { background: rgb(17, 24, 39); border-radius: 8px; color: rgb(255, 255, 255); padding: clamp(1.1rem, 3vw, 1.6rem); }

.zap-hot .zap-section-head { border-color: var(--zap-red); }

.zap-hot .zap-section-head p, .zap-hot .wp-block-post-excerpt { color: rgba(255, 255, 255, 0.78); }

.zap-hot .zap-card { background: rgb(31, 41, 55); border-color: rgba(255, 255, 255, 0.12); box-shadow: none; color: rgb(255, 255, 255); }

.zap-hot .wp-block-post-title a { color: rgb(255, 255, 255); }

.zap-video .zap-card { background: rgb(15, 23, 42); color: rgb(255, 255, 255); position: relative; }

.zap-video .wp-block-post-title a, .zap-video .wp-block-post-excerpt { color: rgb(255, 255, 255); }

.zap-video .zap-card::after { align-items: center; background: var(--zap-red); border-radius: 999px; color: rgb(255, 255, 255); content: ""; display: flex; font-size: 1.1rem; font-weight: 900; height: 48px; justify-content: center; left: 1rem; position: absolute; top: 1rem; width: 48px; }

.zap-video .zap-card::before { border-bottom: 9px solid transparent; border-left: 14px solid rgb(255, 255, 255); border-top: 9px solid transparent; content: ""; height: 0px; left: calc(19px + 1rem); position: absolute; top: calc(15px + 1rem); width: 0px; z-index: 2; }

.zap-comm .zap-card { background: rgb(248, 250, 252); box-shadow: none; }

.zap-comm .zap-card-label { color: rgb(71, 84, 103); }

.zap-koze { background: linear-gradient(135deg, rgb(255, 247, 237), rgb(255, 255, 255)); border-radius: 8px; padding: clamp(1rem, 3vw, 1.8rem); }

.zap-decideurs { background: rgb(11, 19, 43); border-radius: 8px; color: rgb(255, 255, 255); padding: clamp(1rem, 3vw, 1.8rem); }

.zap-decideurs .zap-section-head { border-color: var(--zap-gold); }

.zap-decideurs .zap-section-head p, .zap-decideurs .wp-block-post-excerpt { color: rgba(255, 255, 255, 0.75); }

.zap-decideurs .zap-card { background: rgba(255, 255, 255, 0.08); border-color: rgba(255, 255, 255, 0.16); box-shadow: none; color: rgb(255, 255, 255); }

.zap-decideurs .wp-block-post-title a { color: rgb(255, 255, 255); }

.zap-follow { background: var(--zap-soft); border-radius: 8px; padding: clamp(1.2rem, 4vw, 2rem); }

@media (max-width: 781px) {
  .zap-home { padding-inline: 0px; }
  .zap-hero { border-radius: 0px; min-height: 560px; }
  .zap-section { margin-block: 2.4rem; }
  .zap-section-head { align-items: start; display: block; }
  .zap-section-head h2 { font-size: 2rem; }
  .zap-query .wp-block-post-template { grid-template-columns: 1fr !important; }
  .zap-card-body { padding: 0.95rem; }
  .zap-card h3 { font-size: 1.22rem; }
}

.zap-phase3 .zap-comm, .zap-phase3 .zap-koze, .zap-phase3 .zap-decideurs, .zap-phase3 .zap-follow { background: rgb(255, 255, 255); color: rgb(17, 24, 39); padding: 1rem; }

.home #header [data-device="desktop"] [data-row="middle"] { --height: 70px; min-height: 70px; }

.home #header [data-device="desktop"] [data-row="middle"] > .ct-container, .home #header [data-device="desktop"] .site-branding, .home #header [data-device="desktop"] .site-logo-container { height: 70px; max-height: 70px; min-height: 70px; }

.home #header [data-device="desktop"] .site-logo-container { width: 190px; }

.home #header [data-device="desktop"] .site-logo-container img { max-height: 52px; max-width: 190px; object-fit: contain; }

.zap-mock .wp-block-post-date, .zap-mock-meta { color: rgb(139, 149, 165); font-size: 0.7rem; font-weight: 650; }

.zap-mock .taxonomy-category, .zap-mock .zap-card-label { color: rgb(227, 6, 19); display: inline-flex; letter-spacing: 0.03em; }

.zap-mock .wp-block-post-featured-image { border-radius: 6px; overflow: hidden; }

.zap-mock img { transition: transform 320ms, filter 320ms; }

.zap-mock-card:hover img, .zap-side-item:hover img, .zap-stack-item:hover img, .zap-mini-item:hover img { filter: saturate(1.04) contrast(1.03); transform: scale(1.035); }

.zap-mock-hero .wp-block-cover__background { background: linear-gradient(rgba(2, 6, 23, 0.12) 0%, rgba(2, 6, 23, 0.52) 48%, rgba(2, 6, 23, 0.82) 100%) !important; opacity: 1 !important; }

.zap-mock-hero h1 { color: rgb(255, 255, 255); font-size: clamp(2.15rem, 4.15vw, 3.45rem); text-shadow: rgba(0, 0, 0, 0.48) 0px 3px 22px; }

.zap-side-item { background: rgb(255, 255, 255); border: 1px solid rgb(237, 241, 246); border-radius: 7px; box-shadow: rgba(15, 23, 42, 0.035) 0px 10px 20px; grid-template-columns: 142px minmax(0px, 1fr); min-height: 112px; padding: 0.58rem; }

.zap-side-item .wp-block-post-featured-image { box-shadow: rgba(15, 23, 42, 0.07) 0px 8px 18px; }

.zap-side-item h3 { font-size: 1.06rem; line-height: 1.13; }

.zap-card-copy h3 { font-size: 1.08rem; line-height: 1.18; }

.zap-stack-copy h3, .zap-mini-copy h3, .zap-opinion-copy h3 { font-size: 1rem; line-height: 1.17; }

.zap-mock-footer h2 { color: rgb(255, 255, 255); font-size: 2.6rem; line-height: 0.98; }

.zap-mock-footer h2 span { color: rgb(227, 6, 19); }

@media (max-width: 900px) {
  .zap-side-item { grid-template-columns: 126px minmax(0px, 1fr); }
}

@media (max-width: 520px) {
  .zap-side-item, .zap-mock-card, .zap-stack-item, .zap-mini-item { grid-template-columns: 108px minmax(0px, 1fr); }
  .zap-side-item h3, .zap-card-copy h3 { font-size: 0.98rem; }
  .zap-mock-footer h2 { font-size: 2.3rem; }
}

/* Phase 7 correction - global visual harmonization lock
   Keep this block at the end to override older phase-specific colors. */
.zap-mock-section-head h2,
.zap-column-head h2,
.zap-trends .zap-column-head h2,
.zap-videos .zap-column-head h2,
.zap-opinions .zap-column-head h2 {
	color: #070b10;
	font-size: 1.25rem;
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
}

.zap-mock-section-head h2::first-letter,
.zap-column-head h2::first-letter,
.zap-trends .zap-column-head h2::first-letter,
.zap-videos .zap-column-head h2::first-letter,
.zap-opinions .zap-column-head h2::first-letter {
	color: #e30613;
}

.zap-cat-title,
.archive.category .page-title::before,
.archive.category .page-title::after {
	font-weight: 950;
	letter-spacing: 0;
	line-height: 0.95;
}

.zap-cat-title,
.archive.category .page-title::after {
	color: #070b10;
}

.zap-cat-initial,
.archive.category .page-title::before {
	color: #e30613;
}

body:not(.home) #header [data-device="desktop"] [data-row="middle"] {
	--height: 84px;
	min-height: 84px;
}

body:not(.home) #header [data-device="desktop"] [data-row="middle"] > .ct-container {
	grid-template-columns: minmax(230px, 270px) minmax(0, 1fr) !important;
	height: 84px;
	max-width: 1280px;
	min-height: 84px;
	padding-inline: 32px;
	width: 100%;
}

body:not(.home) #header [data-device="desktop"] .site-branding,
body:not(.home) #header [data-device="desktop"] .site-logo-container {
	align-items: center;
	display: flex;
	height: 84px;
	max-height: 84px;
	max-width: 230px;
	min-height: 84px;
	width: 230px;
}

body:not(.home) #header [data-device="desktop"] .site-logo-container img {
	display: block;
	height: auto !important;
	max-height: 70px;
	max-width: 230px;
	object-fit: contain;
	width: 230px !important;
}

body:not(.home) #header [data-device="mobile"] [data-row="middle"] {
	--height: 70px;
	min-height: 70px;
}

body:not(.home) #header [data-device="mobile"] [data-row="middle"] > .ct-container {
	height: 70px;
	min-height: 70px;
	padding-inline: 20px;
}

body:not(.home) #header [data-device="mobile"] .site-branding,
body:not(.home) #header [data-device="mobile"] .site-logo-container {
	align-items: center;
	display: flex;
	height: 70px;
	max-height: 70px;
	max-width: 170px;
	min-height: 70px;
	width: 170px;
}

body:not(.home) #header [data-device="mobile"] .site-logo-container img {
	display: block;
	height: auto !important;
	max-height: 54px;
	max-width: 170px;
	object-fit: contain;
	width: auto !important;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block {
	background: #090d14;
	color: #fff;
	margin: 0;
	padding: 1.2rem 0;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block .ct-container {
	max-width: 1280px;
	padding-inline: 32px;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-module-title {
	color: #fff;
	font-size: 1rem;
	font-weight: 950;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block-item {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;
	padding: 0.48rem;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block img {
	border-radius: 6px;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block .ct-post-title {
	color: #fff;
	font-weight: 850;
	line-height: 1.18;
}

body:is(.archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer {
	background: #090d14;
	color: rgba(255, 255, 255, 0.76);
}

body:is(.archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer .ct-container {
	max-width: 1280px;
	padding-block: 1.2rem;
	padding-inline: 32px;
}

body:is(.archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer a {
	color: #fff;
	font-weight: 800;
}

@media (max-width: 900px) {
	.zap-mock-section-head h2,
	.zap-column-head h2,
	.zap-trends .zap-column-head h2,
	.zap-videos .zap-column-head h2,
	.zap-opinions .zap-column-head h2 {
		font-size: 1.18rem;
	}
}

@media (max-width: 520px) {
	body:not(.home) #header [data-device="mobile"] .site-branding,
	body:not(.home) #header [data-device="mobile"] .site-logo-container {
		max-width: 160px;
		width: 160px;
	}

	body:not(.home) #header [data-device="mobile"] .site-logo-container img {
		max-height: 50px;
		max-width: 160px;
	}

	body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block .ct-container,
	body:is(.archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer .ct-container {
		padding-inline: 18px;
	}
}

body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-id="logo"] .site-logo-container,
body.wp-custom-logo:not(.home) #header [data-device="desktop"] .site-branding .site-logo-container {
	height: 84px !important;
	max-height: 84px !important;
	max-width: 230px !important;
	min-height: 84px !important;
	width: 230px !important;
}

body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-id="logo"] .site-logo-container img.default-logo,
body.wp-custom-logo:not(.home) #header [data-device="desktop"] .site-branding .site-logo-container img.default-logo {
	height: auto !important;
	max-height: 70px !important;
	max-width: 230px !important;
	object-fit: contain !important;
	width: 230px !important;
}

body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-row="middle"],
body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-row="middle"] > .ct-container,
body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-column="start"],
body.wp-custom-logo:not(.home) #header [data-device="desktop"] .site-branding {
	height: 84px !important;
	min-height: 84px !important;
}

body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-row="middle"] > .ct-container {
	grid-template-columns: minmax(270px, 270px) minmax(0, 1fr) !important;
}

body.wp-custom-logo:not(.home) #header [data-device="desktop"] [data-column="start"] {
	max-width: 270px !important;
	width: 270px !important;
}

body.wp-custom-logo:not(.home) #header [data-device="desktop"] .site-branding {
	max-height: 84px !important;
	max-width: 230px !important;
	width: 230px !important;
}

body.wp-custom-logo:not(.home) #header [data-device="mobile"] [data-id="logo"] .site-logo-container,
body.wp-custom-logo:not(.home) #header [data-device="mobile"] .site-branding .site-logo-container {
	height: 70px !important;
	max-height: 70px !important;
	max-width: 170px !important;
	min-height: 70px !important;
	width: 170px !important;
}

body.wp-custom-logo:not(.home) #header [data-device="mobile"] [data-id="logo"] .site-logo-container img.default-logo,
body.wp-custom-logo:not(.home) #header [data-device="mobile"] .site-branding .site-logo-container img.default-logo {
	height: auto !important;
	max-height: 54px !important;
	max-width: 170px !important;
	object-fit: contain !important;
	width: auto !important;
}

@media (max-width: 520px) {
	body.wp-custom-logo:not(.home) #header [data-device="mobile"] [data-id="logo"] .site-logo-container,
	body.wp-custom-logo:not(.home) #header [data-device="mobile"] .site-branding .site-logo-container {
		max-width: 160px !important;
		width: 160px !important;
	}

	body.wp-custom-logo:not(.home) #header [data-device="mobile"] [data-id="logo"] .site-logo-container img.default-logo,
	body.wp-custom-logo:not(.home) #header [data-device="mobile"] .site-branding .site-logo-container img.default-logo {
		max-height: 50px !important;
		max-width: 160px !important;
	}
}

/* Grande Une: full-card link with a lighter editorial glass panel. */
.zap-mock-hero {
	align-items: flex-end;
	color: inherit;
	justify-content: flex-start;
	text-decoration: none !important;
}

.zap-mock-hero--dynamic .wp-block-cover__image-background {
	transition: filter 260ms ease, transform 360ms ease;
}

.zap-mock-hero--dynamic:hover .wp-block-cover__image-background {
	filter: saturate(1.025) contrast(1.015);
	transform: scale(1.015);
}

.zap-mock-hero--dynamic:focus-visible {
	box-shadow: inset 0 0 0 4px #ffffff, inset 0 0 0 7px #e30613;
	outline: 0;
}

.zap-mock-hero .wp-block-cover__inner-container {
	background-color: rgba(0, 0, 0, 0.46);
	background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0));
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-left: 4px solid #e30613;
	border-radius: 14px;
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.07);
	margin: 0 0 clamp(1rem, 2vw, 1.35rem) clamp(1rem, 2vw, 1.35rem);
	max-width: calc(100% - 2rem);
	padding: clamp(1.05rem, 2.1vw, 1.55rem);
	transition: background-color 220ms ease, box-shadow 220ms ease;
	width: min(68%, 680px);
}

.zap-mock-hero--dynamic:hover .wp-block-cover__inner-container {
	background-color: rgba(0, 0, 0, 0.5);
	box-shadow: 0 21px 42px rgba(0, 0, 0, 0.27), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.zap-mock-hero h1 {
	text-shadow: 0 4px 26px rgba(0, 0, 0, 0.62);
}

.zap-mock-hero p,
.zap-mock-hero .zap-mock-meta {
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.5);
}

.zap-mock-hero .zap-mock-label {
	border-radius: 3px;
	margin-bottom: 0;
	padding: 0.36rem 0.55rem;
	width: fit-content;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.zap-mock-hero .wp-block-cover__inner-container {
		background: rgba(0, 0, 0, 0.58);
	}
}

@media (max-width: 900px) {
	.zap-mock-hero .wp-block-cover__inner-container {
		max-width: calc(100% - 2rem);
		width: calc(100% - 2rem);
	}
}

@media (max-width: 520px) {
	.zap-mock-hero .wp-block-cover__inner-container {
		background-color: rgba(0, 0, 0, 0.56);
		border-radius: 11px;
		margin: 0 0.75rem 0.75rem;
		max-width: calc(100% - 1.5rem);
		padding: 1rem;
		width: calc(100% - 1.5rem);
	}
}

/* Grande Une: concise editorial hierarchy with the image as the emotional lead. */
.home .zap-mock-hero .wp-block-cover__inner-container > p:not(.zap-mock-label):not(.zap-mock-meta) {
	display: none;
}

.home .zap-mock-hero h1 {
	font-size: clamp(1.85rem, 3.4vw, 2.8rem);
	line-height: 1.04;
	margin: 0.5rem 0 0.85rem;
	max-width: 620px;
}

.home .zap-mock-hero .zap-mock-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.82rem;
	gap: 0;
	margin: 0;
}

.home .zap-mock-hero .zap-mock-read {
	align-items: center;
	display: inline-flex;
	font-weight: 850;
	gap: 0.35rem;
	margin-left: auto;
	padding-left: 0.85rem;
}

.home .zap-mock-hero .zap-mock-read span {
	font-size: 1.05rem;
	transition: transform 180ms ease;
}

.home .zap-mock-hero--dynamic:hover .zap-mock-read span {
	transform: translateX(3px);
}

@media (max-width: 520px) {
	.home .zap-mock-hero .zap-mock-read {
		flex-basis: 100%;
		margin: 0.45rem 0 0;
		padding-left: 0;
	}
}

/* Global premium smoothing pass */
.zap-mock :is(a, button, .wp-block-button__link),
.zap-cat-page :is(a, button, .wp-block-button__link),
.archive.category :is(a, button, .wp-block-button__link),
.search :is(a, button, .wp-block-button__link),
.single-post :is(a, button, .wp-block-button__link, .submit) {
	transition: color 180ms ease, background-color 200ms ease, border-color 200ms ease, box-shadow 220ms ease, transform 220ms ease, opacity 180ms ease;
}

.zap-mock-section-head,
.zap-column-head,
.zap-cat-hero,
.archive.category .hero-section {
	border-color: rgba(7, 17, 31, 0.1);
}

.zap-mock-section-head h2,
.zap-column-head h2,
.zap-trends .zap-column-head h2,
.zap-videos .zap-column-head h2,
.zap-opinions .zap-column-head h2,
.zap-cat-title,
.archive.category .page-title::after {
	color: #070b10;
	font-weight: 950;
	letter-spacing: 0;
}

.zap-mock-section-head h2::first-letter,
.zap-column-head h2::first-letter,
.zap-trends .zap-column-head h2::first-letter,
.zap-videos .zap-column-head h2::first-letter,
.zap-opinions .zap-column-head h2::first-letter,
.zap-cat-initial,
.archive.category .page-title::before,
body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-module-title::first-letter {
	color: #e30613;
}

.zap-mock-section-head :is(a, p),
.zap-column-head :is(a, p) {
	color: #070b10;
	font-size: 0.73rem;
	font-weight: 850;
	letter-spacing: 0;
	text-transform: none;
}

.zap-mock-section-head :is(a, p):hover,
.zap-column-head :is(a, p):hover {
	color: #e30613;
}

.zap-mock-card,
.zap-side-item,
.zap-stack-item,
.zap-mini-item,
.zap-opinion-item,
.zap-cat-query .wp-block-post,
.archive.category article.entry-card,
body.search article.entry-card {
	border-color: rgba(15, 23, 42, 0.08);
	border-radius: 8px;
	transition: background-color 180ms ease, border-color 180ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.zap-mock-card:hover,
.zap-side-item:hover,
.zap-stack-item:hover,
.zap-mini-item:hover,
.zap-opinion-item:hover,
.zap-cat-query .wp-block-post:hover,
.archive.category article.entry-card:hover,
body.search article.entry-card:hover {
	border-color: rgba(227, 6, 19, 0.24);
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.085);
	transform: translateY(-2px);
}

.zap-mock :is(.wp-block-post-featured-image, .ct-media-container),
.zap-cat-card .wp-block-post-featured-image,
.archive.category article.entry-card > .ct-media-container,
body.search article.entry-card > .ct-media-container,
.single-post article.post > .ct-featured-image .ct-media-container {
	background: #f2f4f7;
	overflow: hidden;
}

.zap-mock :is(.wp-block-post-featured-image img, .ct-media-container img),
.zap-cat-card .wp-block-post-featured-image img,
.archive.category article.entry-card > .ct-media-container img,
body.search article.entry-card > .ct-media-container img,
.single-post article.post > :is(.ct-featured-image, .post-thumbnail, figure.post-thumbnail) img {
	transition: filter 320ms ease, transform 320ms ease;
}

.zap-mock-card:hover img,
.zap-side-item:hover img,
.zap-stack-item:hover img,
.zap-mini-item:hover img,
.zap-opinion-item:hover img,
.zap-cat-query .wp-block-post:hover .wp-block-post-featured-image img,
.archive.category article.entry-card:hover > .ct-media-container img,
body.search article.entry-card:hover > .ct-media-container img {
	filter: saturate(1.04) contrast(1.03);
	transform: scale(1.028);
}

.zap-mock-hero .wp-block-cover__image-background {
	transition: filter 420ms ease, transform 520ms ease;
}

.zap-mock-hero:hover .wp-block-cover__image-background {
	filter: saturate(1.04) contrast(1.02);
	transform: scale(1.018);
}

.zap-mock .taxonomy-category a,
.zap-mock .taxonomy-category,
.zap-mock .zap-card-label,
.zap-cat-card .taxonomy-category a,
.archive.category .entry-meta .meta-categories a,
body.search .entry-meta .meta-categories a,
.single-post .entry-meta .meta-categories a {
	color: #e30613;
	font-weight: 950;
	letter-spacing: 0.035em;
	text-transform: uppercase;
}

.zap-mock .wp-block-post-date,
.zap-mock-meta,
.zap-cat-card .wp-block-post-date,
.archive.category .entry-meta .meta-date,
.archive.category .entry-meta time,
body.search .entry-meta .meta-date,
body.search .entry-meta time,
.single-post .entry-meta {
	color: #8b95a5;
	font-weight: 650;
	letter-spacing: 0.01em;
}

.zap-mock :is(h3, .wp-block-post-title),
.zap-cat-card-title,
.archive.category article.entry-card > .entry-title,
body.search article.entry-card > .entry-title {
	font-weight: 950;
	letter-spacing: 0;
}

.zap-mock :is(h3 a, .wp-block-post-title a),
.zap-cat-card-title a,
.archive.category article.entry-card > .entry-title a,
body.search article.entry-card > .entry-title a {
	color: #07111f;
	text-decoration: none;
}

.zap-mock :is(h3 a, .wp-block-post-title a):hover,
.zap-cat-card-title a:hover,
.archive.category article.entry-card > .entry-title a:hover,
body.search article.entry-card > .entry-title a:hover {
	color: #e30613;
}

.zap-mock .wp-block-button__link,
.zap-newsletter .wp-block-button__link,
.single-post .comment-form .submit {
	border-radius: 999px;
	font-weight: 950;
	letter-spacing: 0.01em;
}

.zap-newsletter .wp-block-button__link:hover,
.single-post .comment-form .submit:hover {
	box-shadow: 0 16px 32px rgba(0, 0, 0, 0.22);
	transform: translateY(-1px);
}

.zap-video-stack .wp-block-post-template > li:first-child .zap-stack-item::after,
.zap-cat-page-videos .wp-block-post-featured-image a::after,
.archive.category-videos article.entry-card > .ct-media-container::after,
.archive.category.category-videos article.entry-card > .ct-media-container::after {
	background: rgba(7, 11, 16, 0.62);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	border: 1px solid rgba(255, 255, 255, 0.22);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
	transition: background-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.zap-video-stack .wp-block-post-template > li:first-child .zap-stack-item:hover::after,
.zap-cat-page-videos .wp-block-post:hover .wp-block-post-featured-image a::after,
.archive.category-videos article.entry-card:hover > .ct-media-container::after,
.archive.category.category-videos article.entry-card:hover > .ct-media-container::after {
	background: rgba(227, 6, 19, 0.82);
	box-shadow: 0 16px 34px rgba(227, 6, 19, 0.22);
	transform: translate(-50%, -50%) scale(1.04);
}

body.search .entries {
	align-items: start;
	gap: 1.1rem;
	margin-inline: auto;
	max-width: 1280px;
	width: min(100% - 32px, 1280px);
}

body.search article.entry-card {
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.045);
	overflow: hidden;
}

body.search article.entry-card > .ct-media-container {
	aspect-ratio: 16 / 9;
	position: relative;
	width: 100%;
}

body.search article.entry-card > .ct-media-container img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block {
	background: #090d14;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block-item {
	transition: background-color 180ms ease, border-color 180ms ease, box-shadow 220ms ease, transform 220ms ease;
}

body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block-item:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.14);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
	transform: translateY(-1px);
}

body:is(.archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer {
	background: #090d14;
}

body:is(.archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) #footer a:hover {
	color: #e30613;
}

/* ZAP.RE article editorial blocks and native Blocksy modules */
.single-post .entry-content::after {
	content: none !important;
	display: none !important;
}

.single-post .entry-content :is(.zap-article-keypoints, .zap-article-why, .zap-article-ad) {
	box-sizing: border-box;
	margin-block: clamp(1.35rem, 3vw, 2rem);
	max-width: 760px;
	width: 100%;
}

.single-post .entry-content .zap-article-keypoints {
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.09);
	border-left: 4px solid #e30613;
	border-radius: 10px;
	box-shadow: 0 16px 38px rgba(15, 23, 42, 0.07);
	padding: clamp(1.1rem, 3vw, 1.45rem);
	position: relative;
}

.single-post .entry-content .zap-article-keypoints::before {
	align-items: center;
	background: #e30613;
	border-radius: 999px;
	color: #fff;
	content: "!";
	display: flex;
	font-size: 0.9rem;
	font-weight: 950;
	height: 38px;
	justify-content: center;
	left: clamp(1rem, 3vw, 1.25rem);
	line-height: 1;
	position: absolute;
	top: clamp(1rem, 3vw, 1.25rem);
	width: 38px;
}

.single-post .entry-content .zap-article-keypoints :is(h2, h3, h4) {
	color: #07111f;
	font-size: clamp(1.18rem, 2.6vw, 1.45rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.08;
	margin: 0 0 0.75rem;
	padding-left: 3.05rem;
}

.single-post .entry-content .zap-article-keypoints ul {
	margin: 0;
	padding-left: clamp(1.15rem, 3vw, 1.45rem);
}

.single-post .entry-content .zap-article-keypoints li {
	color: #1f2937;
	font-size: 0.98rem;
	font-weight: 650;
	line-height: 1.55;
	margin: 0.28rem 0;
}

.single-post .entry-content .zap-article-keypoints li::marker {
	color: #e30613;
}

.single-post .entry-content .zap-article-why {
	background:
		linear-gradient(135deg, rgba(227, 6, 19, 0.095), rgba(227, 6, 19, 0.025)),
		#fff;
	border: 1px solid rgba(227, 6, 19, 0.14);
	border-left: 4px solid #e30613;
	border-radius: 10px;
	box-shadow: 0 14px 32px rgba(227, 6, 19, 0.06);
	padding: clamp(1.1rem, 3vw, 1.45rem);
	position: relative;
}

.single-post .entry-content .zap-article-why::before {
	align-items: center;
	background: #e30613;
	border-radius: 999px;
	color: #fff;
	content: "?";
	display: flex;
	font-size: 1rem;
	font-weight: 950;
	height: 38px;
	justify-content: center;
	left: clamp(1rem, 3vw, 1.25rem);
	line-height: 1;
	position: absolute;
	top: clamp(1rem, 3vw, 1.25rem);
	width: 38px;
}

.single-post .entry-content .zap-article-why :is(h2, h3, h4) {
	color: #07111f;
	font-size: clamp(1.14rem, 2.4vw, 1.38rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.1;
	margin: 0 0 0.55rem;
	padding-left: 3.05rem;
}

.single-post .entry-content .zap-article-why p {
	color: #1f2937;
	font-size: 0.98rem;
	font-weight: 560;
	line-height: 1.62;
	margin: 0;
	padding-left: 3.05rem;
}

/* Compact native Gutenberg table used by the cyclone-name explainer. */
.single-post .entry-content .wp-block-table.zap-cyclone-names {
	margin-block: 1.25rem 2rem;
	overflow: visible;
}

.single-post .entry-content .wp-block-table.zap-cyclone-names table,
.single-post .entry-content .wp-block-table.zap-cyclone-names tbody {
	border: 0;
	display: block;
	width: 100%;
}

.single-post .entry-content .wp-block-table.zap-cyclone-names tbody {
	display: grid;
	gap: 0.65rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.single-post .entry-content .wp-block-table.zap-cyclone-names tr {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	box-shadow: 0 5px 14px rgba(15, 23, 42, 0.05);
	display: block;
	min-width: 0;
	padding: 0.65rem 0.75rem;
}

.single-post .entry-content .wp-block-table.zap-cyclone-names td {
	border: 0;
	display: block;
	line-height: 1.3;
	padding: 0;
}

.single-post .entry-content .wp-block-table.zap-cyclone-names td:first-child {
	color: #111827;
	font-size: 0.82rem;
	font-weight: 900;
}

.single-post .entry-content .wp-block-table.zap-cyclone-names td:last-child {
	color: #667085;
	font-size: 0.72rem;
	font-weight: 650;
	margin-top: 0.14rem;
}

@media (max-width: 600px) {
	.single-post .entry-content .wp-block-table.zap-cyclone-names tbody {
		gap: 0.48rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.single-post .entry-content .wp-block-table.zap-cyclone-names tr {
		padding: 0.58rem 0.62rem;
	}

	.single-post .entry-content .wp-block-table.zap-cyclone-names td:first-child {
		font-size: 0.76rem;
	}

	.single-post .entry-content .wp-block-table.zap-cyclone-names td:last-child {
		font-size: 0.68rem;
	}
}

.single-post .entry-content .zap-article-ad {
	align-items: center;
	background:
		linear-gradient(135deg, rgba(15, 23, 42, 0.045), rgba(15, 23, 42, 0.105)),
		#f3f5f8;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 8px;
	color: #475569;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: clamp(92px, 16vw, 132px);
	padding: clamp(1.15rem, 3vw, 1.75rem);
	text-align: center;
}

.single-post .entry-content .zap-article-ad p {
	color: inherit;
	font-size: 0.82rem;
	font-weight: 850;
	letter-spacing: 0.06em;
	line-height: 1.35;
	margin: 0;
	text-transform: uppercase;
}

.single-post .entry-content .zap-article-ad p + p {
	color: #64748b;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0;
	margin-top: 0.25rem;
	text-transform: none;
}

.single-post .ct-share-box {
	background: #fff;
	border-top: 3px solid #07111f;
	box-shadow: none;
	margin: clamp(1.6rem, 3.5vw, 2.4rem) auto 0;
	max-width: 760px;
	padding: 1rem 0 0;
	width: min(100% - 32px, 760px);
}

.single-post .ct-share-box .ct-module-title {
	color: #07111f;
	display: block;
	font-size: clamp(1.15rem, 2.3vw, 1.45rem);
	font-weight: 950;
	letter-spacing: 0;
	margin-bottom: 0.75rem;
	text-transform: none;
}

.single-post .ct-share-box .ct-social-box {
	display: flex;
	flex-wrap: wrap;
	gap: 0.62rem;
}

.single-post .ct-share-box .ct-social-box a {
	align-items: center;
	border-radius: 6px;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
	display: inline-flex;
	font-size: 0.84rem;
	font-weight: 900;
	min-height: 38px;
	padding-inline: 0.9rem;
}

.single-post .ct-share-box .ct-social-box a:hover {
	box-shadow: 0 12px 22px rgba(15, 23, 42, 0.13);
	transform: translateY(-1px);
}

.single-post .ct-related-posts-container {
	background: #fff;
	margin-top: clamp(1.7rem, 4vw, 2.6rem);
}

.single-post .ct-related-posts {
	margin-inline: auto;
	max-width: 1040px;
	width: min(100% - 32px, 1040px);
}

.single-post .ct-related-posts > .ct-module-title {
	color: #07111f;
	font-size: clamp(1.28rem, 2.8vw, 1.7rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 1rem;
	text-transform: none;
}

.single-post .ct-related-posts > .ct-module-title::first-letter {
	color: #e30613;
}

.single-post .ct-related-posts-items {
	display: grid !important;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.single-post .ct-related-posts article {
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.045);
	overflow: hidden;
	transition: box-shadow 220ms ease, transform 220ms ease;
	width: 100% !important;
}

.single-post .ct-related-posts article:hover {
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.09);
	transform: translateY(-2px);
}

.single-post .ct-related-posts article .ct-media-container {
	aspect-ratio: 16 / 9;
	border-radius: 0;
	margin: 0;
	overflow: hidden;
	width: 100%;
}

.single-post .ct-related-posts article .ct-media-container img {
	height: 100%;
	object-fit: cover;
	transition: transform 320ms ease, filter 320ms ease;
	width: 100%;
}

.single-post .ct-related-posts article:hover .ct-media-container img {
	filter: saturate(1.04) contrast(1.03);
	transform: scale(1.035);
}

.single-post .ct-related-posts .related-entry-title {
	font-size: 1rem;
	font-weight: 930;
	letter-spacing: 0;
	line-height: 1.18;
	margin: 0.65rem 0.8rem 0.3rem;
}

.single-post .ct-related-posts .related-entry-title a {
	color: #07111f;
	text-decoration: none;
}

.single-post .ct-related-posts .related-entry-title a:hover {
	color: #e30613;
}

.single-post .ct-related-posts .entry-meta {
	color: #7b8494;
	font-size: 0.72rem;
	font-weight: 750;
	margin: 0 0.8rem 0.85rem;
}

.single-post .ct-related-posts .entry-meta .meta-categories a {
	background: transparent;
	border-radius: 0;
	color: #e30613 !important;
	font-size: 0.68rem;
	font-weight: 950;
	letter-spacing: 0.04em;
	padding: 0;
	text-transform: uppercase;
}

/* Studio editorial V2: the WordPress excerpt is the single chapo source. */
.single-post .entry-header .page-description {
	--theme-text-color: #334155;
	color: #334155 !important;
	font-weight: 560;
	opacity: 1;
}

@media (max-width: 760px) {
	.single-post .entry-content .zap-article-keypoints,
	.single-post .entry-content .zap-article-why {
		border-radius: 8px;
		padding: 1rem;
	}

	.single-post .entry-content .zap-article-keypoints::before,
	.single-post .entry-content .zap-article-why::before {
		height: 34px;
		width: 34px;
	}

	.single-post .entry-content .zap-article-keypoints :is(h2, h3, h4),
	.single-post .entry-content .zap-article-why :is(h2, h3, h4),
	.single-post .entry-content .zap-article-why p {
		padding-left: 2.75rem;
	}

	.single-post .ct-share-box {
		width: min(100% - 28px, 760px);
	}

	.single-post .ct-share-box .ct-social-box {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.single-post .ct-share-box .ct-social-box a {
		justify-content: center;
		min-width: 0;
		padding-inline: 0.65rem;
		width: 100%;
	}

	.single-post .ct-related-posts {
		width: min(100% - 28px, 1040px);
	}

	.single-post .ct-related-posts-items {
		grid-template-columns: 1fr !important;
	}
}

/* ZAP.RE editorial signature: article content only. */
.single-post .entry-content > h2.wp-block-heading {
	border-left: 4px solid #e30613;
	color: #192a3d;
	line-height: 1.15;
	margin-block: clamp(2.35rem, 5vw, 3.5rem) clamp(1rem, 2.4vw, 1.35rem);
	padding-left: 0.78rem;
}

.single-post .entry-content .zap-article-keypoints::before {
	content: "i";
	font-family: Georgia, serif;
	font-style: italic;
}

.single-post .entry-content .zap-article-why {
	background: #f6f7f9;
	border: 1px solid #e3e6eb;
	border-left: 3px solid #e30613;
	border-radius: 8px;
	box-shadow: 0 7px 20px rgba(15, 23, 42, 0.045);
}

.single-post .entry-content .zap-article-why::before {
	background: #e30613;
	border: 0;
	border-radius: 999px;
	box-shadow: none;
	content: "";
	height: 2px;
	left: clamp(1rem, 3vw, 1.25rem);
	top: clamp(1.75rem, 3vw, 2rem);
	width: 28px;
}

.single-post .entry-content .zap-article-why :is(h2, h3, h4) {
	padding-left: 2.65rem;
}

.single-post .entry-content .zap-article-why p {
	color: #3f4b5b;
	margin-top: 0.8rem;
	padding-left: 0;
}

.single-post .entry-content .zap-article-good-to-know {
	background: #fff;
	border: 1px solid #e3e6eb;
	border-left: 3px solid #c9ced6;
	border-radius: 8px;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
	box-sizing: border-box;
	margin-block: clamp(1.5rem, 3.5vw, 2.25rem);
	padding: 1rem 1.1rem 1rem 3.35rem;
	position: relative;
	width: 100%;
}

.single-post .entry-content .zap-article-good-to-know::before {
	align-items: center;
	background: #f4f5f7;
	border: 1px solid #dfe3e8;
	border-radius: 999px;
	color: #e30613;
	content: "i";
	display: flex;
	font-family: Georgia, serif;
	font-size: 0.9rem;
	font-style: italic;
	font-weight: 700;
	height: 28px;
	justify-content: center;
	left: 1rem;
	line-height: 1;
	position: absolute;
	top: 1rem;
	width: 28px;
}

.single-post .entry-content .zap-article-good-to-know :is(h2, h3, h4) {
	border: 0;
	color: #192a3d;
	font-size: clamp(1.08rem, 2vw, 1.22rem);
	font-weight: 900;
	line-height: 1.15;
	margin: 0 0 0.42rem;
	padding: 0;
}

.single-post .entry-content .zap-article-good-to-know p {
	color: #4b5565;
	font-size: 0.94rem;
	line-height: 1.62;
	margin: 0;
}

.single-post .entry-content > h2.wp-block-heading + p > a[target="_blank"] {
	color: #d9000c;
	display: inline;
	font-weight: 700;
	text-decoration: none;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.22em;
	transition: color 180ms ease, text-decoration-color 180ms ease;
}

.single-post .entry-content > h2.wp-block-heading + p > a[target="_blank"]::before {
	content: "↗";
	display: inline-block;
	font-size: 0.9em;
	font-weight: 900;
	margin-right: 0.38rem;
	transition: transform 180ms ease;
}

.single-post .entry-content > h2.wp-block-heading + p > a[target="_blank"]:hover {
	color: #ac0009;
	text-decoration: underline;
}

.single-post .entry-content > h2.wp-block-heading + p > a[target="_blank"]:hover::before {
	transform: translate(1px, -1px);
}

@media (max-width: 760px) {
	.single-post .entry-content > h2.wp-block-heading {
		border-left-width: 3px;
		margin-block: 2rem 0.9rem;
		padding-left: 0.65rem;
	}

	.single-post .entry-content .zap-article-why :is(h2, h3, h4) {
		padding-left: 2.35rem;
	}

	.single-post .entry-content .zap-article-why p {
		padding-left: 0;
	}

	.single-post .entry-content .zap-article-good-to-know {
		padding: 0.95rem 0.95rem 0.95rem 3.15rem;
	}

	.single-post .entry-content .zap-article-good-to-know::before {
		height: 26px;
		left: 0.9rem;
		top: 0.9rem;
		width: 26px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.single-post .entry-content > h2.wp-block-heading + p > a[target="_blank"],
	.single-post .entry-content > h2.wp-block-heading + p > a[target="_blank"]::before {
		transition: none;
	}
}

@media (hover: none) {
	.zap-mock-card:hover,
	.zap-side-item:hover,
	.zap-stack-item:hover,
	.zap-mini-item:hover,
	.zap-opinion-item:hover,
	.zap-cat-query .wp-block-post:hover,
	.archive.category article.entry-card:hover,
	body.search article.entry-card:hover,
	body:is(.home, .archive, .search, .single-post, .page-id-3280, .page-id-3282, .page-id-3284, .page-id-3286, .page-id-3288, .page-id-3290) .ct-trending-block-item:hover {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.zap-mock *,
	.zap-cat-page *,
	.archive.category *,
	.search *,
	.single-post * {
		transition-duration: 0.01ms !important;
	}
}

/* Article hero final polish: editorial signature and press rhythm. */
.single-post article.post > .hero-section {
	box-shadow: 0 18px 44px rgba(15, 23, 42, 0.052);
}

.single-post article.post > .hero-section::after {
	background: linear-gradient(90deg, #e30613 0 64px, #e6e9ee 64px 100%);
	content: "" !important;
	display: block !important;
	height: 1px;
	margin-top: clamp(1.15rem, 2.4vw, 1.45rem);
	width: 100%;
}

.single-post .entry-header {
	display: flex;
	flex-direction: column;
}

.single-post .entry-header .entry-meta {
	display: contents;
}

.single-post .entry-header .entry-meta :is(li, a, time) {
	line-height: 1.35;
}

.single-post .entry-header .entry-meta li::after {
	content: none !important;
	display: none !important;
}

/* The author remains in the document and SEO schema; only its duplicate visual row is hidden. */
.single-post .entry-header .entry-meta .meta-author {
	display: none;
}

.single-post .entry-header .entry-meta .meta-categories {
	align-items: center;
	display: inline-flex;
	gap: 0.5rem;
	margin: 0 0 clamp(0.58rem, 1.2vw, 0.72rem);
	order: 0;
	width: fit-content;
}

.single-post .entry-header .entry-meta .meta-categories::before {
	background: #e30613;
	border-radius: 999px;
	content: "";
	display: inline-block;
	height: 3px;
	width: 22px;
}

.single-post .entry-header .entry-meta .meta-categories a {
	background: transparent !important;
	border-radius: 0 !important;
	color: #07111f !important;
	font-size: 0.76rem;
	font-weight: 950;
	letter-spacing: 0.045em;
	padding: 0 !important;
	text-transform: uppercase;
}

.single-post .entry-header .page-title,
.single-post .entry-header .entry-title {
	order: 1;
}

.single-post .entry-header .page-description {
	display: block !important;
	margin-top: clamp(1.15rem, 2.3vw, 1.45rem);
	max-width: 760px;
	order: 2;
}

.single-post .entry-header .entry-meta .meta-date {
	color: #64748b;
	display: block;
	font-size: 0.92rem;
	font-weight: 560;
	letter-spacing: 0;
	margin-top: clamp(0.9rem, 1.9vw, 1.08rem);
	order: 3;
	text-transform: none;
	width: fit-content;
}

.single-post .entry-header .entry-meta .meta-date::before {
	color: #1f2937;
	content: "Par l’équipe ZAP · ";
	font-weight: 760;
}

.single-post article.post > :is(.ct-featured-image, .post-thumbnail, figure.post-thumbnail) {
	margin-top: clamp(1.2rem, 2.6vw, 1.55rem);
}

@media (max-width: 760px) {
	.single-post article.post > .hero-section::after {
		margin-top: 1.05rem;
	}

	.single-post .entry-header .entry-meta .meta-categories {
		margin-bottom: 0.55rem;
	}

	.single-post .entry-header .page-description {
		margin-top: 0.95rem;
	}

	.single-post .entry-header .entry-meta .meta-date {
		font-size: 0.86rem;
		margin-top: 0.85rem;
	}

	.single-post article.post > :is(.ct-featured-image, .post-thumbnail, figure.post-thumbnail) {
		margin-top: 1.1rem;
	}
}

/* Article hero: stronger chapo and optional press-style photo credit. */
.single-post .entry-header .page-description {
	color: #374151 !important;
	font-size: clamp(1.125rem, 1.45vw, 1.25rem);
	font-weight: 540;
	line-height: 1.58;
	max-width: 72ch !important;
	width: 100% !important;
}

.single-post .entry-header .entry-meta .meta-date {
	margin-top: clamp(1.15rem, 2.2vw, 1.35rem);
}

.single-post .zap-featured-media-caption {
	box-sizing: border-box;
	color: #6b7280;
	font-size: 0.8125rem;
	font-style: italic;
	line-height: 1.45;
	margin: 0.55rem auto 0;
	max-width: 760px;
	width: min(100% - 32px, 760px);
}

.single-post .zap-featured-media-caption p {
	color: inherit;
	font-size: inherit;
	line-height: inherit;
	margin: 0;
}

.single-post .zap-featured-media-credit span {
	font-weight: 650;
}

.single-post .zap-featured-media-description {
	margin-top: 0.18rem !important;
}

.single-post .zap-article-sources {
	border-top: 2px solid #07111f;
	box-sizing: border-box;
	margin: clamp(1.8rem, 4vw, 2.6rem) auto 0;
	max-width: 760px;
	padding-top: clamp(1rem, 2.5vw, 1.25rem);
	width: min(100% - 32px, 760px);
}

.single-post .zap-article-sources__header {
	align-items: center;
	display: flex;
	gap: 0.7rem;
	margin-bottom: 0.55rem;
}

.single-post .zap-article-sources__header > span {
	background: #e30613;
	display: block;
	height: 3px;
	width: 28px;
}

.single-post .zap-article-sources__header h2 {
	color: #07111f;
	font-size: clamp(1.15rem, 2.6vw, 1.4rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.1;
	margin: 0;
}

.single-post .zap-article-sources__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-post .zap-article-sources__item {
	align-items: center;
	border-bottom: 1px solid rgba(15, 23, 42, 0.1);
	display: grid;
	gap: 0.85rem 1.2rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: 0.95rem 0;
}

.single-post .zap-article-sources__copy {
	display: flex;
	flex-direction: column;
	gap: 0.18rem;
	min-width: 0;
}

.single-post .zap-article-sources__copy strong {
	color: #1f2937;
	font-size: 0.94rem;
	font-weight: 850;
	line-height: 1.35;
}

.single-post .zap-article-sources__copy > span {
	color: #4b5563;
	font-size: 0.85rem;
	line-height: 1.45;
}

.single-post .zap-article-sources__copy time {
	color: #7b8494;
	font-size: 0.76rem;
	font-weight: 650;
	line-height: 1.4;
}

.single-post .zap-article-sources__link {
	align-items: center;
	border: 1px solid rgba(15, 23, 42, 0.16);
	border-radius: 999px;
	color: #1f2937;
	display: inline-flex;
	font-size: 0.76rem;
	font-weight: 850;
	gap: 0.35rem;
	padding: 0.48rem 0.7rem;
	text-decoration: none;
	white-space: nowrap;
}

.single-post .zap-article-sources__link:hover,
.single-post .zap-article-sources__link:focus-visible {
	border-color: rgba(227, 6, 19, 0.48);
	color: #e30613;
}

@media (max-width: 760px) {
	.single-post .entry-header .page-description {
		font-size: 1.08rem;
		line-height: 1.55;
		max-width: 100% !important;
	}

	.single-post .entry-header .entry-meta .meta-date {
		margin-top: 1rem;
	}

	.single-post .zap-featured-media-caption {
		font-size: 0.78rem;
		max-width: calc(100vw - 56px) !important;
		width: calc(100vw - 56px) !important;
	}

	.single-post .zap-article-sources {
		max-width: calc(100vw - 56px) !important;
		width: calc(100vw - 56px) !important;
	}

	.single-post .zap-article-sources__item {
		align-items: start;
		grid-template-columns: 1fr;
	}

	.single-post .zap-article-sources__link {
		width: fit-content;
	}
}

/* Espace ZAP: global services banner above the public header. */
.zap-espace {
	background: #020305;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	color: #ffffff;
	position: relative;
	z-index: 80;
}

.home .zap-mock-topbar {
	display: none !important;
}

.zap-espace__inner {
	align-items: center;
	display: flex;
	gap: clamp(0.9rem, 2vw, 1.35rem);
	margin-inline: auto;
	min-height: 58px;
	padding-block: 0.55rem;
	width: min(100% - 48px, 1360px);
}

.zap-espace__brand {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	gap: 0.9rem;
	min-width: 0;
}

.zap-espace__icon {
	align-items: center;
	background: rgba(227, 6, 19, 0.12);
	border: 1px solid rgba(227, 6, 19, 0.55);
	border-radius: 999px;
	display: inline-flex;
	height: 38px;
	justify-content: center;
	width: 38px;
}

.zap-espace__icon::before {
	background: #ff1724;
	content: "";
	display: block;
	height: 20px;
	mask: var(--zap-espace-icon) center / contain no-repeat;
	width: 20px;
	-webkit-mask: var(--zap-espace-icon) center / contain no-repeat;
}

.zap-espace__icon--megaphone::before {
	--zap-espace-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.5v3h3.2l5.3 4.1V6.4L6.2 10.5H3Zm10.5-4v11l1.8 1.3V5.2l-1.8 1.3Zm3.4 2.2 1.4-1.4A6.6 6.6 0 0 1 20.5 12a6.6 6.6 0 0 1-2.2 4.7l-1.4-1.4A4.5 4.5 0 0 0 18.5 12a4.5 4.5 0 0 0-1.6-3.3Z'/%3E%3C/svg%3E");
}

.zap-espace__icon--calendar::before {
	--zap-espace-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3v16H4V5h3V2Zm11 8H6v9h12v-9ZM6 8h12V7H6v1Zm2 4h2v2H8v-2Zm4 0h2v2h-2v-2Zm4 0h2v2h-2v-2Zm-8 4h2v2H8v-2Zm4 0h2v2h-2v-2Z'/%3E%3C/svg%3E");
}

.zap-espace__icon--mail::before {
	--zap-espace-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h18v14H3V5Zm2 3.3V17h14V8.3l-7 5-7-5Zm1.2-1.3 5.8 4.1L17.8 7H6.2Z'/%3E%3C/svg%3E");
}

.zap-espace__label {
	color: #ff1724;
	font-size: clamp(0.9rem, 1.5vw, 1rem);
	font-weight: 950;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	white-space: nowrap;
}

.zap-espace__separator {
	background: rgba(255, 255, 255, 0.24);
	display: block;
	flex: 0 0 1px;
	height: 26px;
}

.zap-espace__messages {
	align-items: center;
	display: flex;
	flex: 1 1 auto;
	min-height: 28px;
	min-width: 0;
	overflow: hidden;
	position: relative;
}

.zap-espace__message {
	align-items: baseline;
	color: #ffffff;
	display: flex;
	gap: 0.75rem;
	inset: auto 0 auto 0;
	min-width: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	text-decoration: none;
	transform: translateY(5px);
	transition: opacity 420ms ease, transform 420ms ease;
	white-space: nowrap;
}

.zap-espace__message.is-active {
	opacity: 1;
	pointer-events: auto;
	position: relative;
	transform: translateY(0);
}

.zap-espace__message strong,
.zap-espace__message span {
	display: block;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

.zap-espace__message strong {
	font-size: clamp(0.92rem, 1.65vw, 1.08rem);
	font-weight: 920;
	line-height: 1.1;
}

.zap-espace__message span {
	color: rgba(255, 255, 255, 0.84);
	font-size: clamp(0.82rem, 1.35vw, 0.96rem);
	font-weight: 540;
	line-height: 1.15;
}

.zap-espace__message i {
	color: #ff1724;
	font-size: 1.45rem;
	font-style: normal;
	font-weight: 300;
	line-height: 0;
	margin-left: 0.2rem;
}

.zap-espace__message:hover {
	color: #ffffff;
}

.zap-espace__message:hover i {
	transform: translateX(3px);
}

@keyframes zap-espace-mobile-scroll {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(calc(-1 * var(--zap-scroll-distance, 0px)));
	}
}

@media (max-width: 768px) {
	.zap-espace__inner {
		gap: 0.58rem;
		min-height: 42px;
		padding-block: 0.38rem;
		width: min(100% - 24px, 100%);
	}

	.zap-espace__brand {
		gap: 0.48rem;
	}

	.zap-espace__icon {
		height: 28px;
		width: 28px;
	}

	.zap-espace__icon::before {
		height: 15px;
		width: 15px;
	}

	.zap-espace__label {
		font-size: 0.72rem;
	}

	.zap-espace__separator {
		display: none;
	}

	.zap-espace__messages {
		min-height: 22px;
	}

	.zap-espace__message {
		align-items: center;
		gap: 0.35rem;
		max-width: none;
		min-width: max-content;
		transform: translateX(0);
		transition: opacity 380ms ease;
		width: max-content;
	}

	.zap-espace__message.is-active {
		transform: translateX(0);
	}

	.zap-espace__message.is-scrolling {
		animation: zap-espace-mobile-scroll var(--zap-scroll-duration, 18000ms) linear 2s 1 both;
		will-change: transform;
	}

	.zap-espace__message strong,
	.zap-espace__message span {
		overflow: visible;
		text-overflow: clip;
		white-space: nowrap;
	}

	.zap-espace__message strong {
		font-size: 0.78rem;
		max-width: none;
	}

	.zap-espace__message span {
		display: block;
		font-size: 0.76rem;
	}

	.zap-espace__message i {
		font-size: 1.02rem;
		margin-left: 0.08rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.zap-espace__message.is-scrolling {
		animation: none;
	}
}

/* Archive tag initiative-locale: targeted media-rubric styling. */
body.archive.tag-initiative-locale .site-main {
	background: #ffffff;
}

body.archive.tag-initiative-locale .hero-section {
	background: #ffffff;
	border-bottom: 1px solid rgba(7, 17, 31, 0.1);
	box-sizing: border-box;
	margin: 1.15rem auto 1.05rem;
	padding: 1.35rem 0 1.05rem;
	width: min(100% - 32px, 1280px);
}

body.archive.tag-initiative-locale .page-title {
	color: transparent;
	font-size: 0;
	letter-spacing: 0;
	line-height: 0.95;
	margin: 0;
}

body.archive.tag-initiative-locale .page-title::before,
body.archive.tag-initiative-locale .page-title::after {
	display: inline;
	font-size: clamp(1.9rem, 4vw, 3.15rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 0.95;
	text-transform: uppercase;
}

body.archive.tag-initiative-locale .page-title::before {
	color: #e30613;
	content: "L";
}

body.archive.tag-initiative-locale .page-title::after {
	color: #070b10;
	content: "A RÉUNION S’ENGAGE";
}

body.archive.tag-initiative-locale .hero-section::after {
	color: #5d6675;
	content: "Les initiatives qui font bouger notre île.";
	display: block;
	font-size: clamp(0.95rem, 1.4vw, 1.08rem);
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.45;
	margin-top: 0.55rem;
	max-width: 720px;
}

body.archive.tag-initiative-locale .entries {
	align-items: start;
	box-sizing: border-box;
	display: grid;
	gap: 1.1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 auto 2.6rem;
	width: min(100% - 32px, 1280px);
}

body.archive.tag-initiative-locale article.entry-card {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 8px;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.055);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 220ms ease, transform 220ms ease;
}

body.archive.tag-initiative-locale article.entry-card:hover {
	border-color: rgba(227, 6, 19, 0.24);
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.085);
	transform: translateY(-2px);
}

body.archive.tag-initiative-locale .entries article.entry-card:first-child {
	grid-column: span 2;
}

body.archive.tag-initiative-locale article.entry-card > .ct-media-container {
	aspect-ratio: 16 / 9;
	background: #f2f4f7;
	order: 1;
	overflow: hidden;
}

body.archive.tag-initiative-locale article.entry-card > .ct-media-container img {
	aspect-ratio: 16 / 9;
	display: block;
	height: 100%;
	object-fit: cover;
	transition: filter 320ms ease, transform 320ms ease;
	width: 100%;
}

body.archive.tag-initiative-locale article.entry-card:hover > .ct-media-container img {
	filter: saturate(1.04) contrast(1.03);
	transform: scale(1.028);
}

body.archive.tag-initiative-locale article.entry-card > .entry-meta:first-child {
	order: 2;
	padding: 0.85rem 1rem 0;
}

body.archive.tag-initiative-locale article.entry-card > .entry-title {
	font-size: clamp(1rem, 1.25vw, 1.18rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0;
	order: 3;
	padding: 0.38rem 1rem 0;
}

body.archive.tag-initiative-locale article.entry-card > .entry-title a {
	color: #07111f;
	text-decoration: none;
	transition: color 180ms ease;
}

body.archive.tag-initiative-locale article.entry-card > .entry-title a:hover {
	color: #e30613;
}

body.archive.tag-initiative-locale article.entry-card > .entry-excerpt {
	color: #556171;
	font-size: 0.88rem;
	line-height: 1.45;
	margin: 0;
	order: 4;
	padding: 0.55rem 1rem 0;
}

body.archive.tag-initiative-locale article.entry-card > .entry-meta:last-child {
	color: #8d97a7;
	font-size: 0.72rem;
	font-weight: 650;
	letter-spacing: 0.01em;
	margin: 0;
	order: 5;
	padding: 0.65rem 1rem 1rem;
}

body.archive.tag-initiative-locale article.entry-card:not(:first-child) > .entry-excerpt {
	display: none;
}

body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-title {
	font-size: clamp(1.45rem, 2.2vw, 2rem);
	line-height: 1.04;
}

body.archive.tag-initiative-locale .entry-meta {
	margin: 0;
}

body.archive.tag-initiative-locale .entry-meta .meta-categories a {
	color: #e30613;
	font-size: 0.67rem;
	font-weight: 950;
	letter-spacing: 0.035em;
	text-decoration: none;
	text-transform: uppercase;
}

body.archive.tag-initiative-locale .entry-meta .meta-date,
body.archive.tag-initiative-locale .entry-meta time {
	color: #8d97a7;
	font-size: 0.72rem;
	font-weight: 650;
}

@media (max-width: 999px) {
	body.archive.tag-initiative-locale .entries {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 690px) {
	body.archive.tag-initiative-locale .hero-section {
		margin-top: 1rem;
		padding: 1.2rem 0 1rem;
		width: min(100% - 28px, 1280px);
	}

	body.archive.tag-initiative-locale .entries {
		gap: 0.9rem;
		grid-template-columns: 1fr;
		width: min(100% - 28px, 1280px);
	}

	body.archive.tag-initiative-locale .entries article.entry-card:first-child {
		grid-column: span 1;
	}

	body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-title,
	body.archive.tag-initiative-locale article.entry-card > .entry-title {
		font-size: 1.06rem;
		line-height: 1.12;
	}
}

/* La Reunion s'engage: premium homepage module, scoped to this block only. */
.zap-engage {
	background:
		radial-gradient(circle at 12% 8%, rgba(255, 223, 153, 0.34), transparent 34%),
		linear-gradient(135deg, #fff8ed 0%, #fff5e7 48%, #fffaf4 100%);
	border: 1px solid rgba(231, 210, 178, 0.72);
	border-radius: 13px;
	box-shadow: 0 18px 42px rgba(97, 63, 26, 0.1);
	margin-top: 1.15rem;
	overflow: hidden;
	padding: 1.05rem 1.15rem 1rem;
}

.zap-engage .zap-engage-head {
	align-items: center;
	display: flex;
	gap: 0.82rem;
	justify-content: flex-start;
	margin: 0 0 1rem;
	padding: 0;
}

.zap-engage .zap-engage-icon {
	align-items: center;
	background:
		linear-gradient(#ffffff, #ffffff) padding-box,
		linear-gradient(135deg, rgba(227, 6, 19, 0.9), rgba(7, 11, 16, 0.92)) border-box;
	border: 1.5px solid transparent;
	border-radius: 14px;
	box-shadow: 0 10px 22px rgba(7, 11, 16, 0.1);
	color: #0b0b0b;
	display: inline-flex;
	flex: 0 0 48px;
	height: 48px;
	justify-content: center;
	margin: 0;
	position: relative;
	width: 48px;
}

.zap-engage .zap-engage-icon::before {
	border: 2.5px solid #070b10;
	border-radius: 50% 50% 50% 0;
	content: "";
	height: 22px;
	transform: rotate(-45deg) translate(1px, -1px);
	width: 22px;
}

.zap-engage .zap-engage-icon::after {
	background: #e30613;
	border-radius: 999px;
	box-shadow: 0 0 0 5px rgba(255, 216, 79, 0.22);
	content: "";
	height: 7px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -58%);
	width: 7px;
}

.zap-engage .zap-engage-titlebox {
	margin: 0;
	min-width: 0;
}

.zap-engage .zap-engage-head h2 {
	color: #090909;
	font-size: clamp(1.22rem, 2.2vw, 1.62rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 0.98;
	margin: 0;
	text-transform: uppercase;
}

.zap-engage .zap-engage-head h2::first-letter {
	color: #e30613;
}

.zap-engage .zap-engage-head p {
	color: #30261d;
	font-size: 0.82rem;
	font-weight: 760;
	line-height: 1.25;
	margin: 0.18rem 0 0;
}

.zap-engage .zap-engage-layout {
	align-items: stretch !important;
	display: grid !important;
	gap: 1rem;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.2fr);
	margin: 0;
}

.zap-engage .zap-engage-layout > .wp-block-column {
	margin: 0;
	min-width: 0;
}

.zap-engage .zap-engage-feature {
	background: #ffffff;
	border: 1px solid rgba(238, 220, 192, 0.9);
	border-radius: 9px;
	box-shadow: 0 12px 30px rgba(52, 38, 22, 0.08);
	color: #0b0b0b;
	display: grid;
	grid-template-columns: minmax(0, 1.06fr) minmax(220px, 0.9fr);
	height: 100%;
	overflow: hidden;
}

.zap-engage .zap-engage-media {
	margin: 0;
	min-height: 100%;
	position: relative;
}

.zap-engage .zap-engage-cover {
	height: 100%;
	margin: 0;
	overflow: hidden;
}

.zap-engage .zap-engage-cover img {
	aspect-ratio: 4 / 3;
	display: block;
	filter: saturate(1.05) contrast(1.02);
	height: 100%;
	object-fit: cover;
	transition: transform 220ms ease, filter 220ms ease;
	width: 100%;
}

.zap-engage .zap-engage-feature:hover .zap-engage-cover img,
.zap-engage .zap-engage-item:hover .wp-block-post-featured-image img {
	filter: saturate(1.09) contrast(1.04);
	transform: scale(1.025);
}

.zap-engage .zap-engage-badge {
	background: #ffd84f;
	border-radius: 5px;
	color: #17110a;
	font-size: 0.58rem;
	font-weight: 950;
	left: 0.72rem;
	letter-spacing: 0.01em;
	line-height: 1;
	margin: 0;
	padding: 0.46rem 0.55rem;
	position: absolute;
	text-transform: uppercase;
	top: 0.72rem;
	z-index: 2;
}

.zap-engage .zap-engage-logo {
	align-items: center;
	background: #ffffff;
	border: 3px solid #f7f7f7;
	border-radius: 999px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
	color: #e30613;
	display: inline-flex;
	font-size: 1rem;
	font-weight: 950;
	height: 70px;
	justify-content: center;
	left: 0.82rem;
	line-height: 1;
	margin: 0;
	position: absolute;
	text-align: center;
	bottom: 0.82rem;
	width: 70px;
	z-index: 2;
}

.zap-engage .zap-engage-logo::after {
	background: #e30613;
	content: "";
	height: 28px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 7px;
	z-index: -1;
}

.zap-engage .zap-engage-feature-body {
	align-content: center;
	display: grid;
	padding: 1rem 1.05rem;
}

.zap-engage .zap-engage-feature-body h3 {
	color: #0b0b0b;
	font-size: clamp(1.05rem, 1.65vw, 1.36rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.04;
	margin: 0 0 0.22rem;
}

.zap-engage .zap-engage-town {
	color: #4f5967;
	font-size: 0.76rem;
	font-weight: 780;
	line-height: 1.2;
	margin: 0 0 0.72rem;
	padding-left: 1rem;
	position: relative;
}

.zap-engage .zap-engage-town::before {
	background: #e30613;
	border-radius: 999px;
	content: "";
	height: 7px;
	left: 0;
	position: absolute;
	top: 0.33rem;
	width: 7px;
}

.zap-engage .zap-engage-summary {
	color: #273140;
	font-size: 0.84rem;
	font-weight: 560;
	line-height: 1.45;
	margin: 0 0 0.88rem;
}

.zap-engage .zap-engage-buttons {
	margin: 0;
}

.zap-engage .zap-engage-buttons .wp-block-button__link {
	align-items: center;
	background: #e30613;
	border-radius: 6px;
	box-shadow: 0 10px 22px rgba(227, 6, 19, 0.22);
	color: #ffffff;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 950;
	justify-content: center;
	line-height: 1;
	padding: 0.74rem 0.9rem;
	text-decoration: none;
	transition: box-shadow 180ms ease, transform 180ms ease, background 180ms ease;
	white-space: nowrap;
}

.zap-engage .zap-engage-buttons .wp-block-button__link:hover {
	background: #bf0510;
	box-shadow: 0 14px 28px rgba(227, 6, 19, 0.29);
	transform: translateY(-1px);
}

.zap-engage .zap-engage-feed-col {
	background: transparent;
	border: 0;
	display: grid;
	grid-template-rows: auto 1fr auto;
	padding: 0;
}

.zap-engage .zap-engage-feed-head {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin: 0 0 0.72rem;
	padding: 0;
}

.zap-engage .zap-engage-feed-head h3 {
	color: #111111;
	font-size: 0.84rem;
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.zap-engage .zap-engage-feed-head p,
.zap-engage .zap-engage-actions p {
	font-size: 0.72rem;
	font-weight: 900;
	line-height: 1.25;
	margin: 0;
}

.zap-engage .zap-engage-feed-head a,
.zap-engage .zap-engage-actions a {
	color: #0b0b0b;
	text-decoration: none;
	transition: color 180ms ease;
	white-space: nowrap;
}

.zap-engage .zap-engage-feed-head a::after,
.zap-engage .zap-engage-actions a::after {
	color: #e30613;
	content: "";
}

.zap-engage .zap-engage-feed-head a:hover,
.zap-engage .zap-engage-actions a:hover {
	color: #e30613;
}

.zap-engage .zap-engage-query .wp-block-post-template {
	align-items: stretch;
	display: grid;
	gap: 0.78rem;
	grid-auto-rows: 1fr;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0;
	padding: 0;
}

.zap-engage .zap-engage-query .wp-block-post {
	display: flex;
	height: 100%;
}

.zap-engage .zap-engage-item {
	background: #ffffff;
	border: 1px solid rgba(238, 220, 192, 0.85);
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(52, 38, 22, 0.07);
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 266px;
	overflow: hidden;
	transition: box-shadow 180ms ease, transform 180ms ease;
	width: 100%;
}

.zap-engage .zap-engage-item:hover {
	box-shadow: 0 14px 30px rgba(52, 38, 22, 0.12);
	transform: translateY(-2px);
}

.zap-engage .zap-engage-item .wp-block-post-featured-image {
	background: #e9dfcf;
	border-radius: 0;
	margin: 0;
	overflow: hidden;
}

.zap-engage .zap-engage-item .wp-block-post-featured-image a,
.zap-engage .zap-engage-item .wp-block-post-featured-image img {
	display: block;
	width: 100%;
}

.zap-engage .zap-engage-item .wp-block-post-featured-image img {
	aspect-ratio: 16 / 10;
	height: auto;
	object-fit: cover;
	transition: transform 220ms ease, filter 220ms ease;
}

.zap-engage .zap-engage-item-copy {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	padding: 0.56rem 0.62rem 0.62rem;
}

.zap-engage .zap-engage-item-copy::before {
	background: #fff2b9;
	border-radius: 4px;
	color: #5b4400;
	content: "SOLIDARITÉ";
	display: inline-flex;
	font-size: 0.55rem;
	font-weight: 950;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-bottom: 0.42rem;
	padding: 0.32rem 0.42rem;
	text-transform: uppercase;
}

.zap-engage .wp-block-post:nth-child(2) .zap-engage-item-copy::before {
	background: #e5ffd7;
	color: #1e5b18;
	content: "SPORT";
}

.zap-engage .wp-block-post:nth-child(3) .zap-engage-item-copy::before {
	background: #e6f6cf;
	color: #285d1f;
	content: "ENVIRONNEMENT";
}

.zap-engage .wp-block-post:nth-child(4) .zap-engage-item-copy::before {
	background: #f5e7ff;
	color: #69328d;
	content: "CULTURE";
}

.zap-engage .zap-engage-item-copy h4 {
	display: -webkit-box;
	font-size: 0.84rem;
	font-weight: 950;
	min-height: 2.92em;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	letter-spacing: 0;
	line-height: 1.16;
	margin: 0 0 0.36rem;
	overflow: hidden;
}

.zap-engage .zap-engage-item-copy h4 a {
	color: #0b0b0b;
	text-decoration: none;
}

.zap-engage .zap-engage-item:hover h4 a {
	color: #e30613;
}

.zap-engage .zap-engage-org {
	margin: auto 0 0.24rem;
}

.zap-engage .zap-engage-org .wp-block-post-excerpt__excerpt {
	color: #e30613;
	font-size: 0.68rem;
	font-weight: 880;
	line-height: 1.22;
	margin: 0;
}

.zap-engage .zap-engage-item .wp-block-post-date {
	color: #7b817f;
	font-size: 0.66rem;
	font-weight: 760;
	line-height: 1.2;
	margin: 0;
}

.zap-engage .zap-engage-actions {
	align-items: center;
	display: flex;
	justify-content: flex-end;
	margin-top: 0.82rem;
	padding: 0;
}

.zap-engage .zap-engage-actions p {
	align-items: center;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(227, 6, 19, 0.28);
	border-radius: 6px;
	box-shadow: 0 8px 18px rgba(52, 38, 22, 0.06);
	display: inline-flex;
	gap: 0.5rem;
	padding: 0.58rem 0.76rem;
}

.zap-engage .zap-engage-actions strong {
	color: #0b0b0b;
	font-weight: 950;
}

.zap-engage .zap-engage-actions a {
	color: #e30613;
}

@media (max-width: 980px) {
	.zap-engage .zap-engage-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.zap-engage {
		border-radius: 12px;
		margin-left: 1rem;
		margin-right: 1rem;
		margin-top: 1rem;
		padding: 0.88rem;
	}

	.zap-engage .zap-engage-head {
		gap: 0.68rem;
		margin-bottom: 0.8rem;
	}

	.zap-engage .zap-engage-icon {
		flex-basis: 42px;
		height: 42px;
		border-radius: 12px;
		width: 42px;
	}

	.zap-engage .zap-engage-icon::before {
		height: 27px;
		width: 27px;
	}

	.zap-engage .zap-engage-head h2 {
		font-size: 1.1rem;
		line-height: 1.04;
	}

	.zap-engage .zap-engage-head p {
		font-size: 0.74rem;
	}

	.zap-engage .zap-engage-feature {
		grid-template-columns: 1fr;
	}

	.zap-engage .zap-engage-cover img {
		aspect-ratio: 16 / 9;
		min-height: 0;
	}

	.zap-engage .zap-engage-logo {
		height: 60px;
		width: 60px;
	}

	.zap-engage .zap-engage-feature-body {
		padding: 0.88rem;
	}

	.zap-engage .zap-engage-summary {
		font-size: 0.8rem;
	}

	.zap-engage .zap-engage-buttons .wp-block-button__link {
		white-space: normal;
	}

	.zap-engage .zap-engage-feed-head {
		align-items: flex-start;
		gap: 0.5rem;
	}

	.zap-engage .zap-engage-feed-head h3 {
		font-size: 0.82rem;
	}

	.zap-engage .zap-engage-query .wp-block-post-template {
		grid-template-columns: 1fr;
	}

	.zap-engage .zap-engage-item {
		display: grid;
		gap: 0;
		grid-template-columns: 118px minmax(0, 1fr);
		min-height: 0;
	}

	.zap-engage .zap-engage-item .wp-block-post-featured-image img {
		aspect-ratio: 4 / 3;
		height: 100%;
	}

	.zap-engage .zap-engage-item-copy {
		display: block;
		padding: 0.54rem 0.58rem;
	}

	.zap-engage .zap-engage-item-copy h4 {
		font-size: 0.82rem;
		line-height: 1.14;
		min-height: 0;
	}

	.zap-engage .zap-engage-actions {
		justify-content: stretch;
	}

	.zap-engage .zap-engage-actions p {
		align-items: flex-start;
		display: grid;
		gap: 0.22rem;
		width: 100%;
	}
}

@media (max-width: 420px) {
	.zap-engage {
		margin-left: 0.75rem;
		margin-right: 0.75rem;
		padding: 0.78rem;
	}

	.zap-engage .zap-engage-feed-head p {
		font-size: 0.66rem;
	}

	.zap-engage .zap-engage-item {
		grid-template-columns: 104px minmax(0, 1fr);
	}

	.zap-engage .zap-engage-item-copy::before {
		font-size: 0.5rem;
		margin-bottom: 0.34rem;
		padding: 0.28rem 0.36rem;
	}
}

/* Homepage coherence lock - design system minimum, no new feature. */
.home .zap-mock {
	--zap-card-radius: 8px;
	--zap-card-border: rgba(15, 23, 42, 0.08);
	--zap-card-shadow: 0 10px 24px rgba(15, 23, 42, 0.055);
	--zap-card-shadow-hover: 0 16px 34px rgba(15, 23, 42, 0.09);
	--zap-section-gap: 1.55rem;
	--zap-card-pad: 0.72rem;
	--zap-soft-bg: #f8fafc;
}

.home .zap-mock :is(.zap-mock-section, .zap-mock-triple, .zap-mock-duo) {
	margin-top: var(--zap-section-gap);
}

.home .zap-mock :is(.zap-mock-card, .zap-side-item, .zap-stack-item, .zap-mini-item, .zap-opinion-item),
.home .zap-engage :is(.zap-engage-feature, .zap-engage-item) {
	border: 1px solid var(--zap-card-border);
	border-radius: var(--zap-card-radius);
	box-shadow: var(--zap-card-shadow);
}

.home .zap-mock :is(.zap-mock-card, .zap-side-item, .zap-stack-item, .zap-mini-item, .zap-opinion-item):hover,
.home .zap-engage :is(.zap-engage-feature, .zap-engage-item):hover {
	border-color: rgba(227, 6, 19, 0.22);
	box-shadow: var(--zap-card-shadow-hover);
}

.home .zap-mock :is(.wp-block-post-featured-image, .ct-media-container),
.home .zap-engage :is(.wp-block-post-featured-image, .zap-engage-cover) {
	border-radius: calc(var(--zap-card-radius) - 2px);
	overflow: hidden;
}

.home .zap-mock :is(.zap-mock-card img, .zap-stack-item img, .zap-mini-item img),
.home .zap-engage .zap-engage-item .wp-block-post-featured-image img {
	aspect-ratio: 16 / 9;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.home .zap-mock :is(.taxonomy-category a, .taxonomy-category, .zap-card-label),
.home .zap-engage .zap-engage-item-copy::before {
	background: #f4f5f7;
	border-left: 3px solid #e30613;
	border-radius: 4px;
	color: #e30613;
	display: inline-flex;
	font-size: 0.62rem;
	font-weight: 950;
	letter-spacing: 0.025em;
	line-height: 1;
	padding: 0.32rem 0.42rem;
	text-decoration: none;
	text-transform: uppercase;
}

.home .zap-mock :is(.zap-mock-card h3, .zap-side-item h3, .zap-stack-copy h3, .zap-mini-copy h3, .zap-opinion-copy h3) {
	color: #07111f;
	font-weight: 950;
	letter-spacing: 0;
}

.home .zap-side-head {
	align-items: end;
	border-bottom: 1px solid rgba(15, 23, 42, 0.1);
	display: flex;
	justify-content: space-between;
	margin-bottom: 0.72rem;
	padding-bottom: 0.55rem;
}

.home .zap-side-head h2 {
	color: #07111f;
	font-size: 0.96rem;
	font-weight: 950;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.home .zap-side-head h2::first-letter {
	color: #e30613;
}

.home .zap-side-head p {
	color: #6b7280;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1.1;
	margin: 0;
	text-align: right;
}

.home .zap-side-empty {
	background: #f8fafc;
	border: 1px dashed rgba(15, 23, 42, 0.18);
	border-radius: var(--zap-card-radius);
	color: #6b7280;
	font-size: 0.82rem;
	font-weight: 700;
	margin: 0;
	padding: 1rem;
}

.home .zap-engage {
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border-color: rgba(15, 23, 42, 0.08);
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.07);
}

.home .zap-engage .zap-engage-icon {
	background:
		linear-gradient(#ffffff, #ffffff) padding-box,
		linear-gradient(135deg, rgba(227, 6, 19, 0.95), rgba(7, 11, 16, 0.92)) border-box;
	border-radius: var(--zap-card-radius);
}

.home .zap-engage .zap-engage-icon::after {
	box-shadow: 0 0 0 4px rgba(227, 6, 19, 0.08);
}

.home .zap-engage .zap-engage-badge {
	background: #e30613;
	color: #ffffff;
}

.home .zap-engage .zap-engage-feature {
	background: #ffffff;
}

.home .zap-engage .zap-engage-item {
	min-height: 274px;
}

.home .zap-engage .zap-engage-item-copy::before,
.home .zap-engage .wp-block-post:nth-child(2) .zap-engage-item-copy::before,
.home .zap-engage .wp-block-post:nth-child(3) .zap-engage-item-copy::before,
.home .zap-engage .wp-block-post:nth-child(4) .zap-engage-item-copy::before {
	background: #f4f5f7;
	color: #e30613;
}

.home .zap-engage .zap-engage-item-copy h4 {
	-webkit-line-clamp: 2;
	min-height: 2.32em;
}

.home .zap-engage .zap-engage-actions p {
	background: #ffffff;
	border-color: rgba(227, 6, 19, 0.24);
}

.home .zap-mock-institutional {
	display: grid;
	gap: 1.2rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home .zap-mock-institutional .zap-mock-column {
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: var(--zap-card-radius);
	box-shadow: var(--zap-card-shadow);
	padding: 0.95rem;
}

.home .zap-mock-institutional .zap-mini-query .wp-block-post-template {
	display: grid;
	gap: 0.72rem;
	margin: 0;
	padding: 0;
}

.home .zap-mock-institutional .zap-mini-item {
	align-items: center;
	background: #ffffff;
	display: grid;
	gap: 0.68rem;
	grid-template-columns: 84px minmax(0, 1fr);
	padding: 0.58rem;
}

.home .zap-mock-institutional .zap-mini-item .wp-block-post-featured-image {
	margin: 0;
}

.home .zap-mock-institutional .zap-mini-item img {
	aspect-ratio: 1 / 1;
	height: 100%;
}

.home .zap-mock-institutional .zap-mini-copy h3 {
	font-size: 0.96rem;
	line-height: 1.15;
	margin: 0.28rem 0 0.24rem;
}

body.archive.tag-initiative-locale .hero-section {
	margin-top: 0.95rem;
	padding-bottom: 0.85rem;
	padding-top: 1.05rem;
}

body.archive.tag-initiative-locale article.entry-card {
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.055);
}

@media (max-width: 900px) {
	.home .zap-mock-institutional {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px) {
	.home .zap-side-head {
		align-items: flex-start;
		display: grid;
		gap: 0.18rem;
	}

	.home .zap-side-head p {
		text-align: left;
	}

	.home .zap-engage .zap-engage-item {
		min-height: 0;
	}

	.home .zap-mock-institutional .zap-mini-item {
		grid-template-columns: 104px minmax(0, 1fr);
	}
}

/* Focus fix: make /tag/initiative-locale/ follow the validated rubric archive layout. */
body.archive.tag-initiative-locale #header [data-device="desktop"] [data-row="middle"] {
	--height: 70px;
	min-height: 70px;
}

body.archive.tag-initiative-locale #header [data-device="desktop"] [data-row="middle"] > .ct-container,
body.archive.tag-initiative-locale #header [data-device="desktop"] .site-branding {
	height: 70px;
	min-height: 70px;
}

body.archive.tag-initiative-locale #header [data-device="desktop"] .site-logo-container {
	height: 70px;
	max-height: 70px;
	width: 190px;
}

body.archive.tag-initiative-locale #header [data-device="desktop"] .site-logo-container img {
	max-height: 52px;
	max-width: 190px;
	object-fit: contain;
}

body.archive.tag-initiative-locale #header .site-title-container {
	display: none !important;
}

body.archive.tag-initiative-locale .site-main {
	background: #ffffff;
}

body.archive.tag-initiative-locale .hero-section {
	background: #ffffff;
	border-bottom: 1px solid #edf1f6;
	box-sizing: border-box;
	margin: 1.4rem auto 1.25rem;
	max-width: 1280px;
	padding: 1.8rem 0 1.2rem;
	width: min(100% - 32px, 1280px);
}

body.archive.tag-initiative-locale .entry-header {
	margin: 0;
}

body.archive.tag-initiative-locale .page-title {
	color: transparent;
	font-size: 0;
	letter-spacing: 0;
	line-height: 0.95;
	margin: 0;
	text-transform: uppercase;
}

body.archive.tag-initiative-locale .page-title::before,
body.archive.tag-initiative-locale .page-title::after {
	display: inline;
	font-size: clamp(2.4rem, 5vw, 4.2rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 0.95;
	text-transform: uppercase;
}

body.archive.tag-initiative-locale .page-title::before {
	color: #e30613;
	content: "L";
}

body.archive.tag-initiative-locale .page-title::after {
	color: #070b10;
	content: "A R\00C9UNION S\2019 ENGAGE";
}

body.archive.tag-initiative-locale .hero-section::after {
	color: #5d6675;
	content: "Les initiatives qui font bouger notre \00EEle.";
	display: block;
	font-size: clamp(0.95rem, 1.4vw, 1.08rem);
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.45;
	margin-top: 0.8rem;
	max-width: 760px;
}

body.archive.tag-initiative-locale .entries {
	align-items: start;
	box-sizing: border-box;
	display: grid;
	gap: 1.1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0 auto 3rem;
	max-width: 1280px;
	width: min(100% - 32px, 1280px);
}

body.archive.tag-initiative-locale article.entry-card {
	background: #ffffff;
	border: 1px solid #edf1f6;
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.043);
	display: flex;
	flex-direction: column;
	height: auto;
	min-height: 0;
	overflow: hidden;
	padding: 0;
	transition: border-color 180ms ease, box-shadow 220ms ease, transform 220ms ease;
}

body.archive.tag-initiative-locale article.entry-card:hover {
	border-color: rgba(227, 6, 19, 0.22);
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.08);
	transform: translateY(-1px);
}

body.archive.tag-initiative-locale .entries article.entry-card:first-child {
	grid-column: span 2;
}

body.archive.tag-initiative-locale article.entry-card > .ct-media-container {
	aspect-ratio: 16 / 9;
	background: #f2f4f7;
	border-radius: 0;
	display: block;
	margin: 0;
	order: 1;
	overflow: hidden;
	position: relative;
	width: 100%;
}

body.archive.tag-initiative-locale article.entry-card > .ct-media-container img {
	aspect-ratio: 16 / 9;
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	transition: transform 320ms ease, filter 320ms ease;
	width: 100%;
}

body.archive.tag-initiative-locale article.entry-card:hover > .ct-media-container img {
	filter: saturate(1.04) contrast(1.03);
	transform: scale(1.035);
}

body.archive.tag-initiative-locale article.entry-card > .entry-meta:first-child {
	order: 2;
	padding: 0.85rem 1rem 0;
}

body.archive.tag-initiative-locale article.entry-card > .entry-title {
	font-size: clamp(1rem, 1.25vw, 1.18rem);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.16;
	margin: 0.32rem 0 0;
	order: 3;
	padding: 0 1rem;
}

body.archive.tag-initiative-locale article.entry-card > .entry-title a {
	color: #07111f;
	text-decoration: none;
	transition: color 180ms ease;
}

body.archive.tag-initiative-locale article.entry-card:hover > .entry-title a {
	color: #e30613;
}

body.archive.tag-initiative-locale article.entry-card > .entry-excerpt {
	color: #556171;
	font-size: 0.88rem;
	line-height: 1.45;
	margin: 0.55rem 0 0;
	order: 4;
	padding: 0 1rem;
}

body.archive.tag-initiative-locale article.entry-card > .entry-meta:last-child {
	color: #8d97a7;
	font-size: 0.72rem;
	font-weight: 650;
	margin: 0;
	order: 5;
	padding: 0.65rem 1rem 1rem;
}

body.archive.tag-initiative-locale article.entry-card:not(:first-child) > .entry-excerpt {
	display: none;
}

body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-title {
	font-size: clamp(1.45rem, 2.2vw, 2rem);
	line-height: 1.08;
	padding-inline: 1.15rem;
}

body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-meta:first-child,
body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-excerpt,
body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-meta:last-child {
	padding-inline: 1.15rem;
}

body.archive.tag-initiative-locale .entry-meta {
	margin: 0;
}

body.archive.tag-initiative-locale .entry-meta .meta-categories a {
	color: #e30613;
	font-size: 0.67rem;
	font-weight: 950;
	letter-spacing: 0.03em;
	text-decoration: none;
	text-transform: uppercase;
}

body.archive.tag-initiative-locale .entry-meta .meta-date,
body.archive.tag-initiative-locale .entry-meta time {
	color: #8d97a7;
	font-size: 0.72rem;
	font-weight: 650;
}

@media (max-width: 900px) {
	body.archive.tag-initiative-locale .hero-section,
	body.archive.tag-initiative-locale .entries {
		width: min(100% - 28px, 1280px);
	}

	body.archive.tag-initiative-locale .entries {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.archive.tag-initiative-locale .entries article.entry-card:first-child {
		grid-column: span 2;
	}
}

@media (max-width: 560px) {
	body.archive.tag-initiative-locale .hero-section {
		margin-top: 1rem;
		padding: 1.2rem 0 1rem;
	}

	body.archive.tag-initiative-locale .page-title::before,
	body.archive.tag-initiative-locale .page-title::after {
		font-size: clamp(2.1rem, 11vw, 3.05rem);
		line-height: 0.98;
	}

	body.archive.tag-initiative-locale .entries {
		gap: 0.9rem;
		grid-template-columns: 1fr;
	}

	body.archive.tag-initiative-locale .entries article.entry-card:first-child {
		grid-column: span 1;
	}

	body.archive.tag-initiative-locale .entries article.entry-card:first-child > .entry-title,
	body.archive.tag-initiative-locale article.entry-card > .entry-title {
		font-size: 1.18rem;
		line-height: 1.14;
	}
}

/* Category labels cleanup: no decorative red brackets or bars. */
.zap-mock :is(.taxonomy-category, .taxonomy-category a, .zap-card-label),
.zap-cat-card :is(.taxonomy-category, .taxonomy-category a),
.archive.category .entry-meta :is(.meta-categories, .meta-categories a),
body.archive.tag-initiative-locale .entry-meta :is(.meta-categories, .meta-categories a),
body.search .entry-meta :is(.meta-categories, .meta-categories a),
.single-post .entry-meta :is(.meta-categories, .meta-categories a),
.single-post .ct-related-posts .entry-meta :is(.meta-categories, .meta-categories a),
.home .zap-engage .zap-engage-item-copy::before {
	background: transparent !important;
	border: 0 !important;
	border-left: 0 !important;
	border-right: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #e30613 !important;
	display: inline-flex;
	font-weight: 950;
	letter-spacing: 0.035em;
	line-height: 1.1;
	padding: 0 !important;
	text-transform: uppercase;
}

.zap-mock :is(.taxonomy-category, .taxonomy-category a, .zap-card-label)::before,
.zap-mock :is(.taxonomy-category, .taxonomy-category a, .zap-card-label)::after,
.zap-cat-card :is(.taxonomy-category, .taxonomy-category a)::before,
.zap-cat-card :is(.taxonomy-category, .taxonomy-category a)::after,
.archive.category .entry-meta :is(.meta-categories, .meta-categories a)::before,
.archive.category .entry-meta :is(.meta-categories, .meta-categories a)::after,
body.archive.tag-initiative-locale .entry-meta :is(.meta-categories, .meta-categories a)::before,
body.archive.tag-initiative-locale .entry-meta :is(.meta-categories, .meta-categories a)::after,
body.search .entry-meta :is(.meta-categories, .meta-categories a)::before,
body.search .entry-meta :is(.meta-categories, .meta-categories a)::after,
.single-post .entry-meta :is(.meta-categories, .meta-categories a)::before,
.single-post .entry-meta :is(.meta-categories, .meta-categories a)::after,
.single-post .ct-related-posts .entry-meta :is(.meta-categories, .meta-categories a)::before,
.single-post .ct-related-posts .entry-meta :is(.meta-categories, .meta-categories a)::after,
.home .zap-engage .zap-engage-item-copy::after {
	content: none !important;
	display: none !important;
}

/* Homepage: keep card copy clear of its border across all editorial sections. */
.home .zap-mock-card .zap-card-copy {
	padding: 0.65rem 0.75rem 0.75rem;
}

.home .zap-stack-query .wp-block-post-template > li:first-child .zap-stack-copy {
	padding: 0 0.75rem 0.75rem;
}

.home .zap-stack-query .wp-block-post-template > li:not(:first-child) .zap-stack-copy,
.home .zap-side-text,
.home .zap-mini-copy,
.home .zap-opinion-copy {
	padding-right: 0.65rem;
}

@media (max-width: 900px) {
	.home .zap-mock-card .zap-card-copy {
		padding: 0.55rem 0.75rem 0.55rem 0;
	}
}

/* Shared mobile header: compact service bar and deployable category navigation. */
.zap-site-mobile-header {
	display: none;
}

.zap-mobile-menu {
	display: contents;
}

.zap-mobile-menu__toggle,
.zap-mobile-menu__search-toggle,
.zap-mobile-menu__backdrop,
.zap-mobile-menu__panel-head,
.zap-mobile-menu__eyebrow,
.zap-mobile-menu__engage,
.zap-mobile-menu__search {
	display: none;
}

.zap-mobile-menu__panel {
	display: contents;
}

@media (max-width: 760px) {
	body:not(.home) #header [data-device="mobile"] {
		display: none !important;
	}

	.zap-site-mobile-header {
		background: #fff;
		border-bottom: 1px solid #eceff3;
		display: block;
		position: relative;
	}

	.zap-site-mobile-header__inner {
		align-items: center;
		display: flex;
		justify-content: center;
		min-height: 66px;
		padding: 0.55rem 1rem;
		position: relative;
	}

	.zap-site-mobile-header__logo {
		align-items: center;
		display: flex;
		height: 48px;
		justify-content: center;
		max-width: 146px;
		position: relative;
		width: 146px;
		z-index: 2;
	}

	.zap-site-mobile-header__logo :is(.custom-logo-link, img) {
		display: block;
		margin: 0;
		max-height: 48px;
		max-width: 146px;
		width: auto;
	}

	.zap-site-mobile-header__brand {
		color: #07101d;
		font-size: 1.65rem;
		font-weight: 950;
		letter-spacing: -0.055em;
	}

	.zap-site-mobile-header__brand span {
		color: #e30613;
	}

	.zap-espace__inner {
		gap: 0.35rem;
		justify-content: center;
		min-height: 38px;
		padding: 0.3rem 1rem;
		width: 100%;
	}

	.zap-espace__brand {
		gap: 0;
	}

	.zap-espace__icon,
	.zap-espace__separator {
		display: none;
	}

	.zap-espace__message strong,
	.zap-espace__message span {
		border: 0;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		white-space: nowrap;
		width: 1px;
	}

	.zap-espace__label {
		font-size: 0.75rem;
		letter-spacing: 0.035em;
	}

	.zap-espace__messages {
		flex: 0 0 18px;
		min-height: 20px;
		overflow: visible;
		width: 18px;
	}

	.zap-espace__message,
	.zap-espace__message.is-active,
	.zap-espace__message.is-scrolling {
		animation: none;
		inset: 0;
		min-width: 18px;
		transform: none;
		width: 18px;
	}

	.zap-espace__message i {
		display: block;
		font-size: 1rem;
		line-height: 20px;
		margin: 0;
		text-align: center;
	}

	.home .zap-mock-header {
		align-items: center;
		flex-wrap: nowrap;
		gap: 0;
		justify-content: center;
		min-height: 66px;
		padding: 0.55rem 1rem;
		position: relative;
	}

	.home .zap-mock-logo {
		flex: 0 0 146px !important;
		margin: 0 !important;
		max-width: 146px;
		position: relative;
		width: 146px;
		z-index: 2;
	}

	.home .zap-mock-logo img {
		max-height: 48px;
		max-width: 146px;
		width: 146px;
	}

	.zap-mobile-menu {
		align-items: center;
		bottom: 0;
		display: flex;
		inset-inline: 1rem;
		justify-content: space-between;
		position: absolute;
		top: 0;
	}

	.zap-mobile-menu__toggle,
	.zap-mobile-menu__search-toggle {
		align-items: center;
		background: transparent;
		border: 0;
		border-radius: 4px;
		color: #07101d;
		cursor: pointer;
		display: inline-flex;
		height: 44px;
		justify-content: center;
		margin: 0;
		padding: 0;
		width: 44px;
		z-index: 1002;
	}

	.zap-mobile-menu__toggle {
		flex-direction: column;
		gap: 5px;
	}

	.zap-mobile-menu__toggle > span {
		background: currentColor;
		border-radius: 999px;
		display: block;
		height: 2px;
		width: 23px;
	}

	.zap-mobile-menu__search-toggle svg {
		fill: none;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-width: 2;
	}

	.zap-mobile-menu__toggle:focus-visible,
	.zap-mobile-menu__search-toggle:focus-visible,
	.zap-mobile-menu__panel-head button:focus-visible,
	.zap-mobile-menu__panel a:focus-visible,
	.zap-mobile-menu__search :is(input, button):focus-visible {
		outline: 3px solid rgba(227, 6, 19, 0.35);
		outline-offset: 2px;
	}

	.zap-mobile-menu__backdrop {
		background: rgba(7, 15, 29, 0.52);
		display: block;
		inset: 0;
		opacity: 0;
		pointer-events: none;
		position: fixed;
		transition: opacity 220ms ease;
		z-index: 1098;
	}

	.zap-mobile-menu__panel {
		background: #fff;
		box-shadow: 18px 0 42px rgba(7, 15, 29, 0.2);
		display: flex;
		flex-direction: column;
		height: 100dvh;
		inset: 0 auto 0 0;
		max-width: 360px;
		overflow-y: auto;
		padding: 1rem 1.25rem 1.5rem;
		position: fixed;
		transform: translateX(-105%);
		transition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1);
		width: min(88vw, 360px);
		z-index: 1099;
	}

	.zap-mobile-menu.is-open .zap-mobile-menu__backdrop {
		opacity: 1;
		pointer-events: auto;
	}

	.zap-mobile-menu.is-open .zap-mobile-menu__panel {
		transform: translateX(0);
	}

	.zap-mobile-menu__panel-head {
		align-items: center;
		border-bottom: 1px solid #eceff3;
		display: flex;
		justify-content: space-between;
		min-height: 58px;
		padding-bottom: 0.8rem;
	}

	.zap-mobile-menu__panel-head strong {
		color: #07101d;
		font-size: 1.45rem;
		font-weight: 950;
		letter-spacing: -0.055em;
	}

	.zap-mobile-menu__panel-head strong span {
		color: #e30613;
	}

	.zap-mobile-menu__panel-head button {
		align-items: center;
		background: #f4f5f7;
		border: 0;
		border-radius: 999px;
		color: #07101d;
		cursor: pointer;
		display: flex;
		font-size: 1.7rem;
		height: 42px;
		justify-content: center;
		line-height: 1;
		padding: 0 0 3px;
		width: 42px;
	}

	.zap-mobile-menu__eyebrow {
		color: #6b7280;
		display: block;
		font-size: 0.68rem;
		font-weight: 900;
		letter-spacing: 0.11em;
		margin: 1.25rem 0 0.35rem;
		text-transform: uppercase;
	}

	.zap-mobile-menu__panel .zap-mock-nav {
		display: block !important;
		flex: none;
		font-size: 1rem;
		margin: 0;
		width: 100% !important;
	}

	.zap-mobile-menu__panel .zap-mock-nav .wp-block-navigation__container {
		display: block !important;
		width: 100% !important;
	}

	.zap-mobile-menu__panel .zap-mock-nav .wp-block-navigation-item {
		border-bottom: 1px solid #eceff3;
		display: block;
		width: 100%;
	}

	.zap-mobile-menu__panel .zap-mock-nav .wp-block-navigation-item__content {
		align-items: center;
		color: #07101d;
		display: flex;
		font-size: 1.02rem;
		font-weight: 900;
		justify-content: space-between;
		min-height: 54px;
		padding: 0.7rem 0.15rem;
		width: 100%;
	}

	.zap-mobile-menu__panel .zap-mock-nav .wp-block-navigation-item__content::after {
		background: transparent;
		bottom: auto;
		color: #a0a6b0;
		content: "\2192" !important;
		display: block !important;
		height: auto;
		left: auto;
		position: static;
		right: auto;
	}

	.zap-mobile-menu__panel .zap-mock-nav .is-active .wp-block-navigation-item__content {
		color: #e30613;
	}

	.zap-mobile-menu__engage {
		align-items: center;
		background: #07101d;
		border-radius: 5px;
		color: #fff !important;
		display: flex;
		font-size: 0.86rem;
		font-weight: 900;
		justify-content: space-between;
		margin-top: 1.15rem;
		min-height: 50px;
		padding: 0.75rem 0.9rem;
		text-transform: uppercase;
	}

	.zap-mobile-menu__engage span {
		color: #e30613;
		font-size: 1.2rem;
	}

	.zap-mobile-menu__search {
		display: block;
		margin-top: auto;
		padding-top: 1.4rem;
	}

	.zap-mobile-menu__search label {
		color: #07101d;
		display: block;
		font-size: 0.72rem;
		font-weight: 900;
		letter-spacing: 0.07em;
		margin-bottom: 0.45rem;
		text-transform: uppercase;
	}

	.zap-mobile-menu__search > div {
		display: flex;
	}

	.zap-mobile-menu__search input {
		border: 1px solid #d9dde3;
		border-radius: 5px 0 0 5px;
		font-size: 16px;
		height: 48px;
		min-width: 0;
		padding: 0.65rem 0.75rem;
		width: 100%;
	}

	.zap-mobile-menu__search button {
		background: #e30613;
		border: 0;
		border-radius: 0 5px 5px 0;
		color: #fff;
		cursor: pointer;
		font-size: 1.15rem;
		font-weight: 900;
		width: 50px;
	}

	body.zap-mobile-menu-open {
		overflow: hidden;
	}

	@media (prefers-reduced-motion: reduce) {
		.zap-mobile-menu__backdrop,
		.zap-mobile-menu__panel {
			transition: none;
		}
	}
}

/* Homepage grande une: editorial copy and image remain visually separate. */
.home .zap-mock-hero {
	aspect-ratio: auto;
	background: #fff;
	border: 1px solid #e3e6ea;
	border-top: 4px solid #e30613;
	border-radius: 6px;
	box-shadow: 0 12px 30px rgba(7, 15, 29, 0.08);
	cursor: pointer;
	display: flex;
	flex-direction: column;
	margin: 0;
	min-height: 0 !important;
	overflow: hidden;
	padding: 0;
}

.home .zap-mock-hero .wp-block-cover__background {
	display: none;
}

.home .zap-mock-hero > .wp-block-cover__image-background {
	aspect-ratio: 16 / 9;
	display: block;
	height: auto !important;
	inset: auto !important;
	object-fit: cover;
	order: 2;
	position: relative !important;
	transition: transform 260ms ease;
	width: 100%;
}

.home .zap-mock-hero:hover > .wp-block-cover__image-background {
	transform: scale(1.012);
}

.home .zap-mock-hero .wp-block-cover__inner-container {
	align-self: stretch;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	background: #fff;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	box-sizing: border-box;
	margin: 0;
	max-width: none;
	order: 1;
	padding: 1.25rem 1.4rem 1.15rem;
	transition: none;
	width: 100%;
}

.home .zap-mock-hero .zap-mock-label {
	background: transparent;
	color: #e30613;
	font-size: 0.7rem;
	letter-spacing: 0.055em;
	margin: 0 0 0.55rem;
	padding: 0;
	text-shadow: none;
}

.home .zap-mock-hero h1 {
	color: #07101d;
	font-size: clamp(2rem, 3.5vw, 3rem);
	letter-spacing: -0.035em;
	line-height: 0.98;
	margin: 0;
	max-width: 760px;
	text-shadow: none;
}

.home .zap-mock-hero__excerpt,
.home .zap-mock-hero .wp-block-cover__inner-container > p:not(.zap-mock-label, .zap-mock-meta) {
	color: #4b5563;
	display: block !important;
	font-size: 0.92rem;
	line-height: 1.5;
	margin: 0.8rem 0 0;
	margin-inline: 0 !important;
	max-width: 680px;
	text-shadow: none;
}

.home .zap-mock-hero .zap-mock-meta {
	align-items: center;
	border-top: 1px solid #eceff3;
	color: #6b7280;
	display: flex;
	font-size: 0.74rem;
	margin: 1rem 0 0;
	margin-inline: 0 !important;
	max-width: none;
	padding-top: 0.75rem;
	text-shadow: none;
	width: 100%;
}

.home .zap-mock-hero .zap-mock-read {
	color: #e30613;
	flex-basis: auto;
	font-weight: 900;
	margin-left: auto;
	margin-top: 0;
	padding-left: 0.75rem;
	text-transform: uppercase;
}

.home .zap-mock-hero .zap-mock-read span {
	display: inline-block;
	transition: transform 180ms ease;
}

.home .zap-mock-hero:hover .zap-mock-read span {
	transform: translateX(3px);
}

@media (max-width: 760px) {
	.home .zap-mock-hero {
		border-radius: 5px;
		box-shadow: 0 8px 22px rgba(7, 15, 29, 0.07);
	}

	.home .zap-mock-hero .wp-block-cover__inner-container {
		padding: 1rem 1rem 0.9rem;
	}

	.home .zap-mock-hero h1 {
		font-size: clamp(1.8rem, 8.4vw, 2.15rem);
		line-height: 1.01;
	}

	.home .zap-mock-hero__excerpt,
	.home .zap-mock-hero .wp-block-cover__inner-container > p:not(.zap-mock-label, .zap-mock-meta) {
		display: none !important;
	}

	.home .zap-mock-hero .zap-mock-meta {
		margin-top: 0.8rem;
		padding-top: 0.65rem;
	}

	.home .zap-mock-hero > .wp-block-cover__image-background {
		aspect-ratio: 4 / 3;
	}
}

@media (prefers-reduced-motion: reduce) {
	.home .zap-mock-hero > .wp-block-cover__image-background,
	.home .zap-mock-hero .zap-mock-read span {
		transition: none;
	}
}
