/* Revue de presse — only page-specific styles. The official EVI design comes from assets/site.css. */
.press-page .page-hero--press { align-items:center; }
.press-page .page-hero--press .page-hero__copy { min-width:0; }
.press-hero-visual { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-self:stretch; align-content:center; padding:14px 0; }
.press-hero-visual__tile { aspect-ratio:1.28; min-width:0; border-radius:14px; padding:12px; background:#fff; border:1px solid rgba(40,69,103,.12); box-shadow:0 12px 32px rgba(28,56,88,.08); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.press-hero-visual__tile img { width:100%; height:100%; max-width:100%; object-fit:contain; }
.press-page .press-board { padding-bottom:3rem; }
.press-board__introduction { margin:0 0 22px; line-height:1.65; opacity:.8; }
.press-filters { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:0 0 28px; }
.press-filter { background:transparent; border:1px solid #dce5ed; color:inherit; border-radius:999px; padding:10px 16px; font:inherit; font-size:.86rem; font-weight:650; cursor:pointer; transition:background-color .16s, border-color .16s, color .16s; }
.press-filter:hover { background:#eff5fa; border-color:#b3c8db; }
.press-filter.is-active { color:#fff; background:#123d68; border-color:#123d68; }
.press-filter:focus-visible,.press-page a:focus-visible,.press-video-play:focus-visible { outline:3px solid #40a5df; outline-offset:3px; }
.press-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:stretch; }
.press-card { display:flex; min-width:0; flex-direction:column; background:#fff; border:1px solid #e5eaf0; border-radius:16px; overflow:hidden; box-shadow:0 5px 18px rgba(24,46,68,.045); transition:transform .22s,box-shadow .22s; }
.press-card:hover { transform:translateY(-3px); box-shadow:0 16px 38px rgba(24,46,68,.105); }
.press-card[hidden] { display:none!important; }
.press-card__cover-link { display:block; padding:17px; background:#f4f6f9; }
.press-card__cover { position:relative; background:#fff; width:100%; aspect-ratio:1.34; display:flex; align-items:center; justify-content:center; overflow:hidden; border-radius:7px; }
.press-card__cover img { width:100%; height:100%; max-width:100%; object-fit:contain; display:block; }
.press-card__format { position:absolute; top:9px; right:9px; background:rgba(15,43,68,.88); color:#fff; font-size:10px; font-weight:700; letter-spacing:.08em; padding:5px 8px; border-radius:5px; }
.press-card__content { display:flex; flex:1; flex-direction:column; padding:20px 20px 21px; }
.press-card__meta { display:flex; flex-wrap:wrap; gap:7px 12px; justify-content:space-between; align-items:center; font-size:.77rem; font-weight:700; color:#476b8a; }
.press-card__year { color:#667986; }
.press-card__content h3 { font-size:clamp(1.05rem,1.4vw,1.24rem); line-height:1.28; margin:10px 0 11px; overflow-wrap:anywhere; color:#152e44; }
.press-card__summary { font-size:.9rem; line-height:1.6; color:#536577; margin:0 0 16px; flex:1; }
.press-card__action { display:inline-flex; align-items:center; justify-content:space-between; gap:8px; align-self:flex-start; font-weight:700; font-size:.87rem; color:#1462a8; border-bottom:1px solid transparent; padding-bottom:2px; }
.press-card__action:hover { border-color:currentColor; }
.press-no-results { padding:25px; text-align:center; }
.press-page .references-note { margin-top:20px; }
.press-rich-content { margin-top:0; }
.press-videos { margin:32px 0 54px; }
.press-videos__intro { max-width:790px; line-height:1.7; margin:0 0 25px; }
.press-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.press-video-card { min-width:0; border:1px solid #e0e7ef; background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 6px 18px rgba(14,45,75,.05); }
.press-video-stage { position:relative; aspect-ratio:16/9; background:#122d48; color:#fff; overflow:hidden; }
.press-video-stage iframe { position:absolute; width:100%;height:100%;top:0;left:0;border:0; }
.press-video-placeholder { position:relative; isolation:isolate; display:flex; align-items:center; flex-direction:column; justify-content:center; gap:14px; width:100%; height:100%; padding:18px; background:#122d48; text-align:center; }
.press-video-thumbnail { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; }
.press-video-placeholder::before { content:""; position:absolute; z-index:-1; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(8,26,46,.48),rgba(8,26,46,.05) 37%,rgba(8,26,46,.56)); }
.press-video-placeholder__eyebrow { position:absolute; top:15px; left:16px; background:rgba(6,31,52,.75); border-radius:5px; padding:7px 10px; }
.press-video-placeholder__title { display:none; }
.press-video-placeholder small { position:absolute; bottom:11px; left:12px; right:12px; color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.95); }
.press-video-placeholder__eyebrow { font-size:.72rem; text-transform:uppercase; letter-spacing:.13em; opacity:.72; font-weight:700; }
.press-video-placeholder__title { font-size:clamp(1.3rem,3vw,2rem); font-weight:800; letter-spacing:.03em; }
.press-video-placeholder small { font-size:.76rem; opacity:.75; }
.press-video-play { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; height:60px;width:60px;border:0;border-radius:50%;color:#fff;background:#176da5;font-size:20px; cursor:pointer; box-shadow:0 8px 18px rgba(0,0,0,.2); }
.press-video-play:hover { background:#2688c2; }
.press-video-play span { transform:translateX(2px); }
.press-video-card__body { padding:20px 22px; }
.press-video-card__body h3 { color:#18344e; font-size:1.1rem; margin:0 0 13px; }
.press-video-card__body a,.press-videos__source a { color:#12659e; text-decoration:underline; text-underline-offset:3px; font-weight:650; }
.press-videos__source { margin:24px 0 0; font-size:.9rem; line-height:1.65; }
.press-page .press-contact { margin-bottom:0; }
@media (max-width:1040px) { .press-grid { grid-template-columns:repeat(2,minmax(0,1fr));} .press-hero-visual { gap:8px; } }
@media (max-width:700px) { .press-grid,.press-video-grid { grid-template-columns:1fr; } .press-page .page-hero--press { display:flex; flex-direction:column; align-items:stretch; } .press-hero-visual { width:100%; grid-template-columns:repeat(4,minmax(0,1fr)); padding:0 0 20px; } .press-hero-visual__tile { padding:5px; aspect-ratio:.84; border-radius:8px; } .press-videos { margin:22px 0 30px; } .press-page .press-board { padding-bottom:2rem; } }
@media (max-width:450px) { .press-card__content { padding:16px; } .press-filters { gap:6px; } .press-filter { font-size:.78rem; padding:9px 12px; } .press-hero-visual { gap:6px; } }
