:root{--cr-navy:#0d1b2a;--cr-navy-2:#163a5f;--cr-orange:#ff6a00;--cr-orange-dark:#e85f00;--cr-text:#1f2937;--cr-muted:#667085;--cr-line:#e7ebf0;--cr-soft:#f5f7fa;--cr-white:#fff;--cr-radius:18px;--cr-shadow:0 18px 50px rgba(13,27,42,.08)}
.cr-home{overflow:hidden;color:var(--cr-text)}.cr-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.cr-hero{padding:92px 0 88px;background:radial-gradient(circle at 80% 35%,rgba(255,106,0,.10),transparent 26%),linear-gradient(180deg,#fff 0%,#f8fafc 100%);border-bottom:1px solid var(--cr-line)}.cr-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);align-items:center;gap:64px}.cr-eyebrow{margin:0 0 16px;color:var(--cr-orange);font-weight:800;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.cr-hero h1,.cr-section h2{color:var(--cr-navy);letter-spacing:-.035em}.cr-hero h1{max-width:760px;margin:0;font-size:clamp(3rem,5.5vw,5.4rem);line-height:.98;font-weight:800}.cr-lead{max-width:720px;margin:28px 0 0;color:var(--cr-muted);font-size:clamp(1.08rem,1.6vw,1.3rem);line-height:1.7}.cr-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.cr-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:12px;font-weight:750;text-decoration:none!important;transition:.2s}.cr-btn:hover{transform:translateY(-2px)}.cr-btn-primary{color:#fff!important;background:var(--cr-orange);box-shadow:0 12px 30px rgba(255,106,0,.22)}.cr-btn-primary:hover{background:var(--cr-orange-dark)}.cr-btn-secondary{color:var(--cr-navy)!important;background:#fff;border:1px solid var(--cr-line)}.cr-proof{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:30px;color:var(--cr-muted);font-size:.9rem}.cr-proof span:before{content:'•';margin-right:8px;color:var(--cr-orange)}.cr-hero-visual{position:relative;min-height:500px;border-radius:32px;background:linear-gradient(145deg,rgba(13,27,42,.98),rgba(22,58,95,.95));box-shadow:var(--cr-shadow);isolation:isolate}.cr-orbit{position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}.cr-orbit-large{inset:55px}.cr-orbit-small{inset:125px}.cr-symbol{position:absolute;inset:50%;width:188px;height:188px;transform:translate(-50%,-50%);border:18px solid #fff;border-right-color:transparent;border-radius:50%;box-shadow:0 0 80px rgba(255,106,0,.15)}.cr-symbol-dot{position:absolute;top:50%;left:50%;width:54px;height:54px;transform:translate(-50%,-50%);border-radius:50%;background:var(--cr-orange);box-shadow:0 0 34px rgba(255,106,0,.5)}.cr-symbol-line{position:absolute;display:block;background:#fff;border-radius:99px}.cr-symbol-top,.cr-symbol-bottom{left:50%;width:7px;height:30px;transform:translateX(-50%)}.cr-symbol-top{top:-50px}.cr-symbol-bottom{bottom:-50px}.cr-symbol-left,.cr-symbol-right{top:50%;width:30px;height:7px;transform:translateY(-50%)}.cr-symbol-left{left:-50px}.cr-symbol-right{right:-50px}.cr-card{position:absolute;width:210px;padding:18px 20px;border:1px solid rgba(255,255,255,.16);border-radius:16px;color:#fff;background:rgba(255,255,255,.08);backdrop-filter:blur(10px)}.cr-card strong,.cr-card span{display:block}.cr-card span{margin-top:6px;color:rgba(255,255,255,.7);font-size:.84rem}.cr-card-a{top:52px;right:32px}.cr-card-b{bottom:42px;left:32px}.cr-section{padding:88px 0}.cr-section-heading{max-width:700px;margin-bottom:38px}.cr-section-heading h2,.cr-why h2,.cr-cta h2{margin:0;font-size:clamp(2rem,4vw,3.35rem);line-height:1.05}.cr-section-heading>p:last-child{margin:14px 0 0;color:var(--cr-muted);font-size:1.05rem}.cr-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cr-topic-card{display:grid;grid-template-columns:48px 1fr;gap:8px 16px;padding:24px;border:1px solid var(--cr-line);border-radius:var(--cr-radius);color:var(--cr-text)!important;background:#fff;text-decoration:none!important;transition:.2s}.cr-topic-card:hover{transform:translateY(-4px);border-color:rgba(255,106,0,.35);box-shadow:var(--cr-shadow)}.cr-topic-icon{grid-row:1/3;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;color:var(--cr-orange);background:rgba(255,106,0,.09);font-weight:800}.cr-topic-card strong{color:var(--cr-navy);font-size:1.05rem}.cr-topic-card small{color:var(--cr-muted);line-height:1.5}.cr-latest{background:var(--cr-soft)}.cr-heading-inline{display:flex;align-items:end;justify-content:space-between;max-width:none}.cr-text-link{color:var(--cr-navy)!important;font-weight:750;text-decoration:none!important}.cr-text-link:hover{color:var(--cr-orange)!important}.cr-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.cr-post-card{overflow:hidden;border:1px solid var(--cr-line);border-radius:var(--cr-radius);background:#fff;box-shadow:0 12px 35px rgba(13,27,42,.05)}.cr-post-media{display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,var(--cr-navy),var(--cr-navy-2))}.cr-post-media img{width:100%;height:100%;object-fit:cover;transition:.35s}.cr-post-card:hover .cr-post-media img{transform:scale(1.04)}.cr-post-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff;font-weight:800;letter-spacing:.04em}.cr-post-body{padding:24px}.cr-post-meta{margin-bottom:10px;color:var(--cr-orange);font-size:.82rem;font-weight:750}.cr-post-card h3{margin:0 0 12px;font-size:1.35rem;line-height:1.25}.cr-post-card h3 a{color:var(--cr-navy)!important;text-decoration:none!important}.cr-post-card p{color:var(--cr-muted);line-height:1.65}.cr-empty-state{grid-column:1/-1;padding:42px;border:1px dashed #cfd6de;border-radius:var(--cr-radius);text-align:center;background:#fff}.cr-why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}.cr-values{display:grid;gap:18px}.cr-values>div{padding:22px 24px;border-left:3px solid var(--cr-orange);background:var(--cr-soft);border-radius:0 14px 14px 0}.cr-values strong{color:var(--cr-navy);font-size:1.1rem}.cr-values p{margin:6px 0 0;color:var(--cr-muted)}.cr-cta{padding-top:20px}.cr-cta-box{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:46px 50px;border-radius:26px;color:#fff;background:linear-gradient(135deg,var(--cr-navy),var(--cr-navy-2))}.cr-cta-box h2{color:#fff}.cr-cta-box p:not(.cr-eyebrow){margin-bottom:0;color:rgba(255,255,255,.72)}
@media(max-width:980px){.cr-hero-grid,.cr-why-grid{grid-template-columns:1fr}.cr-hero-visual{min-height:430px}.cr-topic-grid,.cr-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.cr-container{width:min(100% - 28px,1180px)}.cr-hero{padding:68px 0 56px}.cr-hero h1{font-size:3rem}.cr-hero-visual{min-height:360px}.cr-symbol{width:135px;height:135px;border-width:14px}.cr-card{width:170px;padding:14px}.cr-card-a{right:16px}.cr-card-b{left:16px}.cr-section{padding:66px 0}.cr-topic-grid,.cr-post-grid{grid-template-columns:1fr}.cr-heading-inline,.cr-cta-box{align-items:flex-start;flex-direction:column}.cr-cta-box{padding:34px 28px}}


/* Pages internes */
.cr-page-hero {
	padding: 86px 0 72px;
	background:
		radial-gradient(circle at 85% 30%, rgba(255,106,0,.09), transparent 24%),
		linear-gradient(180deg, #fff 0%, #f5f7fa 100%);
	border-bottom: 1px solid var(--cr-line);
}
.cr-page-hero h1 {
	max-width: 900px;
	margin: 0;
	color: var(--cr-navy);
	font-size: clamp(2.8rem, 6vw, 5rem);
	line-height: 1;
	letter-spacing: -.04em;
}
.cr-page-hero > .cr-container > p:last-child {
	max-width: 760px;
	margin: 24px 0 0;
	color: var(--cr-muted);
	font-size: 1.18rem;
	line-height: 1.7;
}
.cr-editor-content {
	margin-bottom: 42px;
	font-size: 1.05rem;
	line-height: 1.8;
}
.cr-editor-content:empty { display: none; }
.cr-notice-box {
	margin-bottom: 34px;
	padding: 20px 22px;
	border-left: 4px solid var(--cr-orange);
	border-radius: 0 12px 12px 0;
	background: #fff6ef;
}
.cr-tool-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0,1fr));
	gap: 22px;
}
.cr-tool-card,
.cr-contact-card {
	padding: 30px;
	border: 1px solid var(--cr-line);
	border-radius: var(--cr-radius);
	background: #fff;
	box-shadow: 0 12px 35px rgba(13,27,42,.05);
}
.cr-tool-card h2 {
	margin: 16px 0 12px;
	color: var(--cr-navy);
	font-size: 1.45rem;
}
.cr-tool-status {
	display: inline-flex;
	padding: 6px 10px;
	border-radius: 999px;
	color: var(--cr-orange-dark);
	background: rgba(255,106,0,.1);
	font-size: .78rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .08em;
}
.cr-about-grid,
.cr-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 58px;
	align-items: start;
}
.cr-article-hero {
	padding: 84px 0 58px;
	background: var(--cr-soft);
	border-bottom: 1px solid var(--cr-line);
}
.cr-article-narrow {
	width: min(820px, calc(100% - 40px));
}
.cr-article-hero h1 {
	margin: 14px 0 0;
	color: var(--cr-navy);
	font-size: clamp(2.7rem, 6vw, 4.8rem);
	line-height: 1.04;
	letter-spacing: -.04em;
}
.cr-article-content {
	padding-top: 58px;
	padding-bottom: 90px;
	font-size: 1.08rem;
	line-height: 1.85;
}
.cr-article-content h2,
.cr-article-content h3 {
	color: var(--cr-navy);
	margin-top: 2em;
}
.cr-article-image {
	margin-bottom: 42px;
	overflow: hidden;
	border-radius: 20px;
}
.cr-article-image img {
	width: 100%;
	height: auto;
}
@media (max-width: 820px) {
	.cr-tool-grid,
	.cr-about-grid,
	.cr-contact-grid {
		grid-template-columns: 1fr;
	}
}


/* ===========================
   CYBER REPÈRE V3 — PREMIUM
   =========================== */

.cr-premium-page { background: #fff; }
.cr-premium-hero {
	position: relative;
	overflow: hidden;
	padding: 108px 0 94px;
	background:
		radial-gradient(circle at 84% 26%, rgba(255,106,0,.11), transparent 24%),
		linear-gradient(180deg, #ffffff 0%, #f6f8fb 100%);
	border-bottom: 1px solid var(--cr-line);
}
.cr-premium-hero::after {
	content: "";
	position: absolute;
	right: -180px;
	bottom: -250px;
	width: 520px;
	height: 520px;
	border: 1px solid rgba(13,27,42,.08);
	border-radius: 50%;
}
.cr-premium-hero-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0,1.1fr) minmax(360px,.9fr);
	gap: 72px;
	align-items: center;
}
.cr-premium-hero h1 {
	max-width: 860px;
	margin: 0;
	color: var(--cr-navy);
	font-size: clamp(3.2rem,6.5vw,6.15rem);
	line-height: .96;
	letter-spacing: -.055em;
}
.cr-premium-lead {
	max-width: 730px;
	margin: 28px 0 0;
	color: var(--cr-muted);
	font-size: clamp(1.1rem,1.55vw,1.34rem);
	line-height: 1.75;
}
.cr-premium-visual,
.cr-news-panel,
.cr-alert-meter,
.cr-tools-radar,
.cr-manifesto-card,
.cr-contact-highlight {
	position: relative;
	min-height: 360px;
	border-radius: 28px;
	background: linear-gradient(145deg, var(--cr-navy), var(--cr-navy-2));
	box-shadow: 0 28px 70px rgba(13,27,42,.16);
}
.cr-dashboard-card {
	position: absolute;
	padding: 26px;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 18px;
	color: #fff;
	background: rgba(255,255,255,.08);
	backdrop-filter: blur(12px);
}
.cr-dashboard-main {
	top: 70px;
	left: 56px;
	right: 56px;
}
.cr-dashboard-label {
	display:block;
	color: rgba(255,255,255,.62);
	font-size:.8rem;
	text-transform:uppercase;
	letter-spacing:.1em;
}
.cr-dashboard-card strong {
	display:block;
	margin-top:8px;
	font-size:1.55rem;
}
.cr-dashboard-card small {
	display:block;
	margin-top:12px;
	color:rgba(255,255,255,.65);
}
.cr-progress {
	height:8px;
	margin-top:22px;
	overflow:hidden;
	border-radius:999px;
	background:rgba(255,255,255,.14);
}
.cr-progress span {
	display:block;
	height:100%;
	border-radius:inherit;
	background:var(--cr-orange);
}
.cr-floating-chip {
	position:absolute;
	padding:10px 14px;
	border:1px solid rgba(255,255,255,.14);
	border-radius:999px;
	color:#fff;
	background:rgba(255,255,255,.08);
	font-size:.82rem;
	font-weight:700;
}
.cr-chip-one { top:28px; right:28px; }
.cr-chip-two { bottom:30px; left:34px; }
.cr-chip-three { bottom:40px; right:28px; }

.cr-premium-intro { background:#fff; }
.cr-premium-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:22px;
}
.cr-premium-card {
	display:flex;
	flex-direction:column;
	min-height:330px;
	padding:30px;
	border:1px solid var(--cr-line);
	border-radius:22px;
	color:var(--cr-text)!important;
	background:#fff;
	text-decoration:none!important;
	box-shadow:0 14px 40px rgba(13,27,42,.05);
	transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.cr-premium-card:hover {
	transform:translateY(-7px);
	border-color:rgba(255,106,0,.35);
	box-shadow:0 24px 55px rgba(13,27,42,.1);
}
.cr-premium-icon {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:54px;
	height:54px;
	border-radius:16px;
	color:var(--cr-orange);
	background:rgba(255,106,0,.09);
}
.cr-premium-icon svg {
	width:25px;
	height:25px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.cr-premium-kicker {
	margin-top:28px;
	color:var(--cr-orange-dark);
	font-size:.78rem;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.09em;
}
.cr-premium-card h3 {
	margin:10px 0 12px;
	color:var(--cr-navy);
	font-size:1.55rem;
	line-height:1.15;
}
.cr-premium-card p {
	color:var(--cr-muted);
	line-height:1.65;
}
.cr-card-link {
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin-top:auto;
	color:var(--cr-navy);
	font-weight:800;
}
.cr-card-link svg {
	width:18px;
	height:18px;
	fill:none;
	stroke:currentColor;
	stroke-width:2;
}

.cr-news-panel {
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:36px;
}
.cr-news-line {
	display:grid;
	grid-template-columns:48px 1fr;
	gap:18px;
	align-items:center;
	padding:20px 0;
	color:#fff;
	border-bottom:1px solid rgba(255,255,255,.12);
}
.cr-news-line:last-child { border-bottom:0; }
.cr-news-line span { color:var(--cr-orange); font-weight:800; }
.cr-news-line strong { font-size:1.08rem; }

.cr-alert-meter {
	display:grid;
	grid-template-columns:180px 1fr;
	gap:28px;
	align-items:center;
	padding:36px;
	color:#fff;
}
.cr-alert-meter-ring {
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:180px;
	height:180px;
	border:14px solid rgba(255,255,255,.12);
	border-top-color:var(--cr-orange);
	border-radius:50%;
}
.cr-alert-meter-ring span { color:rgba(255,255,255,.65); }
.cr-alert-meter-ring strong { margin-top:4px; font-size:1.5rem; }
.cr-alert-meter ul { list-style:none; margin:0; padding:0; }
.cr-alert-meter li {
	display:flex;
	align-items:center;
	gap:10px;
	margin:16px 0;
	color:rgba(255,255,255,.86);
}
.cr-alert-meter li svg {
	width:20px;
	height:20px;
	fill:none;
	stroke:var(--cr-orange);
	stroke-width:2.4;
}

.cr-letter-strip {
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:38px;
}
.cr-letter-strip span {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:38px;
	height:38px;
	border:1px solid var(--cr-line);
	border-radius:10px;
	color:var(--cr-navy);
	background:#fff;
	font-weight:800;
}

.cr-tools-radar {
	min-height:390px;
}
.cr-radar-ring {
	position:absolute;
	inset:50%;
	transform:translate(-50%,-50%);
	border:1px solid rgba(255,255,255,.18);
	border-radius:50%;
}
.ring-1 { width:270px; height:270px; }
.ring-2 { width:190px; height:190px; }
.ring-3 { width:110px; height:110px; }
.cr-radar-dot {
	position:absolute;
	top:50%;
	left:50%;
	width:28px;
	height:28px;
	transform:translate(-50%,-50%);
	border-radius:50%;
	background:var(--cr-orange);
	box-shadow:0 0 45px rgba(255,106,0,.65);
}
.cr-tool-card-premium {
	position:relative;
	overflow:hidden;
	min-height:330px;
}
.cr-tool-card-premium::after {
	content:"";
	position:absolute;
	right:-45px;
	bottom:-45px;
	width:130px;
	height:130px;
	border-radius:50%;
	background:rgba(255,106,0,.05);
}

.cr-manifesto-card,
.cr-contact-highlight {
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:42px;
	color:#fff;
}
.cr-manifesto-card span,
.cr-contact-highlight span {
	color:var(--cr-orange);
	font-size:.82rem;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.1em;
}
.cr-manifesto-card blockquote {
	margin:22px 0 0;
	font-size:clamp(1.7rem,3vw,2.6rem);
	line-height:1.15;
	font-weight:750;
}
.cr-contact-highlight strong {
	display:block;
	margin-top:14px;
	font-size:2rem;
}
.cr-contact-highlight p {
	color:rgba(255,255,255,.7);
}
.cr-contact-card-premium {
	padding:40px;
}
.cr-contact-email {
	display:inline-block;
	margin-top:18px;
	color:var(--orange);
	font-size:1.15rem;
	font-weight:800;
}
.cr-form-shell {
	padding:34px;
	border:1px solid var(--cr-line);
	border-radius:22px;
	background:#fff;
	box-shadow:0 18px 50px rgba(13,27,42,.06);
}
.cr-values-premium > div {
	position:relative;
	padding-left:78px;
}
.cr-values-premium > div > span {
	position:absolute;
	top:20px;
	left:24px;
	color:var(--cr-orange);
	font-size:.82rem;
	font-weight:800;
}

/* Footer premium */
.cr-footer {
	margin-top:90px;
	padding:72px 0 24px;
	color:rgba(255,255,255,.72);
	background:var(--cr-navy);
}
.cr-footer-grid {
	display:grid;
	grid-template-columns:1.6fr repeat(3,1fr);
	gap:48px;
}
.cr-footer-name {
	color:#fff!important;
	font-size:1.8rem;
	font-weight:850;
	text-decoration:none!important;
}
.cr-footer-name span { color:var(--cr-orange); }
.cr-footer-brand p { max-width:300px; }
.cr-footer-mantra {
	margin-top:22px;
	color:#fff;
	font-weight:700;
}
.cr-footer-mantra span { color:var(--cr-orange); }
.cr-footer h3 {
	margin:0 0 18px;
	color:#fff;
	font-size:.95rem;
}
.cr-footer a:not(.cr-footer-name) {
	display:block;
	margin:11px 0;
	color:rgba(255,255,255,.67)!important;
	text-decoration:none!important;
}
.cr-footer a:hover { color:#fff!important; }
.cr-footer-bottom {
	display:flex;
	justify-content:space-between;
	gap:24px;
	margin-top:54px;
	padding-top:22px;
	border-top:1px solid rgba(255,255,255,.1);
	font-size:.86rem;
}

@media (max-width:980px) {
	.cr-premium-hero-grid,
	.cr-footer-grid {
		grid-template-columns:1fr;
	}
	.cr-premium-grid {
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.cr-alert-meter {
		grid-template-columns:1fr;
	}
}
@media (max-width:640px) {
	.cr-premium-hero { padding:72px 0 62px; }
	.cr-premium-hero h1 { font-size:3.2rem; }
	.cr-premium-grid { grid-template-columns:1fr; }
	.cr-premium-card { min-height:auto; }
	.cr-alert-meter-ring { width:150px; height:150px; }
	.cr-footer-bottom { flex-direction:column; }
}


/* ===========================
   CYBER REPÈRE V4
   =========================== */
body { padding-top: 84px; }
.cr-skip-link {
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 99999;
	padding: 10px 14px;
	transform: translateY(-150%);
	background: #fff;
}
.cr-skip-link:focus { transform: none; }

.cr-header {
	position: fixed;
	inset: 0 0 auto 0;
	z-index: 1000;
	height: 84px;
	background: rgba(255,255,255,.88);
	border-bottom: 1px solid rgba(13,27,42,.06);
	backdrop-filter: blur(16px);
	transition: box-shadow .2s ease, background .2s ease;
}
.cr-header.is-scrolled {
	background: rgba(255,255,255,.96);
	box-shadow: 0 10px 35px rgba(13,27,42,.08);
}
.cr-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100%;
	gap: 28px;
}
.cr-brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--cr-navy)!important;
	text-decoration: none!important;
}
.cr-brand-mark {
	position: relative;
	width: 38px;
	height: 38px;
	border: 5px solid var(--cr-navy);
	border-right-color: transparent;
	border-radius: 50%;
}
.cr-brand-mark span {
	position: absolute;
	inset: 50% auto auto 50%;
	width: 10px;
	height: 10px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: var(--cr-orange);
}
.cr-brand-text { font-size: 1.18rem; font-weight: 750; }
.cr-brand-text strong { color: var(--cr-orange); }
.cr-main-nav { margin-left: auto; }
.cr-menu {
	display: flex;
	align-items: center;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.cr-menu a {
	display: block;
	padding: 10px 12px;
	border-radius: 10px;
	color: var(--cr-navy)!important;
	font-size: .93rem;
	font-weight: 700;
	text-decoration: none!important;
}
.cr-menu a:hover { background: var(--cr-soft); }
.cr-header-actions { display: flex; align-items: center; gap: 10px; }
.cr-icon-btn,
.cr-mobile-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid var(--cr-line);
	border-radius: 12px;
	background: #fff;
	cursor: pointer;
}
.cr-icon-btn svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: var(--cr-navy);
	stroke-width: 2;
}
.cr-header-cta {
	padding: 12px 18px;
	border-radius: 11px;
	color: #fff!important;
	background: var(--cr-orange);
	font-weight: 800;
	text-decoration: none!important;
}
.cr-mobile-toggle { display: none; flex-direction: column; gap: 4px; }
.cr-mobile-toggle span { width: 18px; height: 2px; background: var(--cr-navy); }

.cr-search-overlay {
	position: fixed;
	inset: 0;
	z-index: 2000;
	display: grid;
	place-items: start center;
	padding: 110px 20px 20px;
	background: rgba(13,27,42,.72);
	backdrop-filter: blur(12px);
}
.cr-search-panel {
	position: relative;
	width: min(780px, 100%);
	padding: 38px;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 35px 90px rgba(0,0,0,.25);
}
.cr-search-panel h2 { margin: 0 0 26px; color: var(--cr-navy); font-size: 2rem; }
.cr-search-close {
	position: absolute;
	top: 18px;
	right: 18px;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background: var(--cr-soft);
	font-size: 1.5rem;
	cursor: pointer;
}
.cr-search-form,
.cr-hero-search {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px;
	border: 1px solid var(--cr-line);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 16px 45px rgba(13,27,42,.08);
}
.cr-search-form input,
.cr-hero-search input {
	flex: 1;
	min-width: 0;
	padding: 12px;
	border: 0;
	outline: 0;
	background: transparent;
}
.cr-search-form button,
.cr-hero-search button {
	padding: 12px 16px;
	border: 0;
	border-radius: 10px;
	color: #fff;
	background: var(--cr-navy);
	font-weight: 800;
	cursor: pointer;
}
.cr-search-results {
	display: grid;
	gap: 8px;
	margin-top: 18px;
}
.cr-search-results a {
	display: grid;
	gap: 4px;
	padding: 14px;
	border-radius: 12px;
	color: var(--cr-navy)!important;
	background: var(--cr-soft);
	text-decoration: none!important;
}
.cr-search-results a span {
	color: var(--cr-orange);
	font-size: .75rem;
	font-weight: 800;
	text-transform: uppercase;
}
.cr-search-loading,
.cr-search-empty { color: var(--cr-muted); }

.cr-v4-hero {
	position: relative;
	overflow: hidden;
	padding: 112px 0 96px;
	background:
		radial-gradient(circle at 78% 26%, rgba(255,106,0,.13), transparent 24%),
		linear-gradient(180deg, #fff 0%, #f6f8fb 100%);
	border-bottom: 1px solid var(--cr-line);
}
.cr-v4-hero-grid {
	display: grid;
	grid-template-columns: minmax(0,1.1fr) minmax(420px,.9fr);
	gap: 70px;
	align-items: center;
}
.cr-v4-hero h1 {
	max-width: 850px;
	margin: 0;
	color: var(--cr-navy);
	font-size: clamp(3.5rem,6.8vw,6.5rem);
	line-height: .94;
	letter-spacing: -.06em;
}
.cr-hero-search { max-width: 760px; margin-top: 34px; }
.cr-hero-search svg {
	width: 21px;
	height: 21px;
	margin-left: 9px;
	fill: none;
	stroke: var(--cr-muted);
	stroke-width: 2;
}
.cr-v4-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 28px;
	margin-top: 36px;
}
.cr-v4-stats div { display: grid; gap: 2px; }
.cr-v4-stats strong { color: var(--cr-navy); font-size: 1.45rem; }
.cr-v4-stats span { color: var(--cr-muted); font-size: .84rem; }
.cr-v4-hero-visual {
	position: relative;
	min-height: 520px;
	overflow: hidden;
	border-radius: 32px;
	background: linear-gradient(145deg, var(--cr-navy), #153d66);
	box-shadow: 0 30px 80px rgba(13,27,42,.2);
}
.cr-grid-plane {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
	background-size: 38px 38px;
	mask-image: linear-gradient(to bottom, black, transparent);
}
.cr-orbit-system { position: absolute; inset: 50%; width: 320px; height: 320px; transform: translate(-50%,-50%); }
.cr-orbit-system .cr-orbit {
	position: absolute;
	inset: 50%;
	transform: translate(-50%,-50%);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 50%;
}
.cr-orbit-a { width: 310px; height: 310px; }
.cr-orbit-b { width: 220px; height: 220px; }
.cr-orbit-c { width: 130px; height: 130px; }
.cr-center-node {
	position: absolute;
	inset: 50%;
	width: 60px;
	height: 60px;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	background: var(--cr-orange);
	box-shadow: 0 0 50px rgba(255,106,0,.6);
}
.cr-node {
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 64px;
	height: 36px;
	padding: 0 12px;
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 999px;
	color: #fff;
	background: rgba(255,255,255,.08);
	font-size: .8rem;
	font-weight: 800;
	backdrop-filter: blur(10px);
}
.cr-node-1 { top: 8px; left: 48%; }
.cr-node-2 { bottom: 28px; left: 0; }
.cr-node-3 { right: -12px; bottom: 90px; }

.cr-v4-category-grid {
	display: grid;
	grid-template-columns: repeat(5,minmax(0,1fr));
	gap: 14px;
}
.cr-v4-category-card {
	display: flex;
	flex-direction: column;
	gap: 22px;
	min-height: 210px;
	padding: 24px;
	border: 1px solid var(--cr-line);
	border-radius: 20px;
	color: var(--cr-navy)!important;
	background: #fff;
	text-decoration: none!important;
	transition: transform .2s ease, box-shadow .2s ease;
}
.cr-v4-category-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 45px rgba(13,27,42,.1);
}
.cr-v4-category-card > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 14px;
	color: var(--cr-orange);
	background: rgba(255,106,0,.09);
}
.cr-v4-category-card svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
}
.cr-v4-category-card strong { display: block; font-size: 1.08rem; }
.cr-v4-category-card small { display: block; margin-top: 6px; color: var(--cr-muted); line-height: 1.5; }

.cr-featured-story {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	overflow: hidden;
	border: 1px solid var(--cr-line);
	border-radius: 28px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(13,27,42,.09);
}
.cr-featured-media { min-height: 420px; background: var(--cr-navy); }
.cr-featured-media img { width: 100%; height: 100%; object-fit: cover; }
.cr-featured-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 54px;
}
.cr-featured-copy h2 {
	margin: 14px 0 18px;
	font-size: clamp(2rem,3vw,3.2rem);
	line-height: 1.05;
}
.cr-featured-copy h2 a { color: var(--cr-navy)!important; text-decoration: none!important; }
.cr-featured-copy p { color: var(--cr-muted); line-height: 1.7; }

.cr-v4-trust { background: var(--cr-navy); color: #fff; }
.cr-v4-trust h2 { color: #fff; }
.cr-v4-trust-grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 70px;
}
.cr-v4-trust-list { display: grid; gap: 18px; }
.cr-v4-trust-list > div {
	display: grid;
	grid-template-columns: 52px 1fr;
	gap: 6px 18px;
	padding: 20px 0;
	border-bottom: 1px solid rgba(255,255,255,.12);
}
.cr-v4-trust-list span { grid-row: 1 / 3; color: var(--cr-orange); font-weight: 800; }
.cr-v4-trust-list strong { font-size: 1.2rem; }
.cr-v4-trust-list p { margin: 0; color: rgba(255,255,255,.65); }

.cr-v4-article-layout {
	display: grid;
	grid-template-columns: 250px minmax(0,820px);
	gap: 54px;
	align-items: start;
	padding-top: 58px;
	padding-bottom: 90px;
}
.cr-article-meta-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 22px;
	margin-top: 24px;
	color: var(--cr-muted);
	font-size: .9rem;
}
.cr-article-category {
	display: inline-flex;
	margin-bottom: 16px;
	color: var(--cr-orange)!important;
	font-weight: 800;
	text-decoration: none!important;
}
.cr-article-sidebar {
	position: sticky;
	top: 112px;
	display: grid;
	gap: 18px;
}
.cr-toc,
.cr-share-box {
	padding: 20px;
	border: 1px solid var(--cr-line);
	border-radius: 16px;
	background: #fff;
}
.cr-toc strong,
.cr-share-box strong { display: block; margin-bottom: 12px; color: var(--cr-navy); }
.cr-toc nav { display: grid; gap: 9px; }
.cr-toc a,
.cr-share-box a {
	color: var(--cr-muted)!important;
	font-size: .88rem;
	text-decoration: none!important;
}
.cr-toc a:hover,
.cr-share-box a:hover { color: var(--cr-orange)!important; }
.cr-toc a.is-sub { padding-left: 14px; font-size: .82rem; }
.cr-share-box { display: grid; gap: 8px; }
.cr-v4-article .cr-article-content { width: auto; padding: 0; }
.cr-related { padding: 88px 0; background: var(--cr-soft); }

.cr-filter-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 34px;
}
.cr-filter-chips a {
	padding: 10px 14px;
	border: 1px solid var(--cr-line);
	border-radius: 999px;
	color: var(--cr-navy)!important;
	background: #fff;
	font-weight: 750;
	text-decoration: none!important;
}

@media (max-width: 1100px) {
	.cr-v4-category-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
	.cr-v4-hero-grid,
	.cr-v4-trust-grid,
	.cr-featured-story { grid-template-columns: 1fr; }
	.cr-featured-media { min-height: 330px; }
	.cr-v4-article-layout { grid-template-columns: 1fr; }
	.cr-article-sidebar { position: static; }
}
@media (max-width: 900px) {
	body { padding-top: 74px; }
	.cr-header { height: 74px; }
	.cr-main-nav {
		position: fixed;
		top: 74px;
		left: 14px;
		right: 14px;
		display: none;
		padding: 16px;
		border: 1px solid var(--cr-line);
		border-radius: 18px;
		background: #fff;
		box-shadow: 0 24px 60px rgba(13,27,42,.16);
	}
	.cr-main-nav.is-open { display: block; }
	.cr-menu { flex-direction: column; align-items: stretch; }
	.cr-mobile-toggle { display: inline-flex; }
	.cr-header-cta { display: none; }
}
@media (max-width: 680px) {
	.cr-v4-hero { padding: 76px 0 62px; }
	.cr-v4-hero h1 { font-size: 3.25rem; }
	.cr-v4-hero-visual { min-height: 390px; }
	.cr-v4-category-grid { grid-template-columns: 1fr; }
	.cr-v4-category-card { min-height: auto; }
	.cr-featured-copy { padding: 30px; }
	.cr-search-form,
	.cr-hero-search { flex-wrap: wrap; }
	.cr-search-form button,
	.cr-hero-search button { width: 100%; }
	.cr-search-panel { padding: 28px 20px; }
}


/* Correctif V4.1 : respecte l'attribut hidden de la recherche */
.cr-search-overlay[hidden] {
	display: none !important;
}


/* ===========================
   CYBER REPÈRE V5 — POLISH
   =========================== */

:root {
	--cr-navy: #0b1b2d;
	--cr-navy-2: #112b47;
	--cr-orange: #f36a21;
	--cr-orange-dark: #d95717;
	--cr-soft: #f5f7fa;
	--cr-line: #e7ebf0;
	--cr-muted: #64748b;
}

/* Header plus léger en haut de l'accueil */
.cr-header.cr-header-home:not(.is-scrolled) {
	background: rgba(255,255,255,.66);
	border-bottom-color: transparent;
	box-shadow: none;
}
.cr-header {
	transition: background .25s ease, box-shadow .25s ease, border-color .25s ease, transform .25s ease;
}
.cr-brand-mark {
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.35);
}
.cr-menu a,
.cr-header-cta,
.cr-icon-btn,
.cr-btn {
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.cr-header-cta:hover,
.cr-btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(243,106,33,.26);
}

/* Hero plus équilibré */
.cr-v4-hero {
	background:
		radial-gradient(circle at 82% 24%, rgba(243,106,33,.11), transparent 26%),
		linear-gradient(180deg, #ffffff 0%, #f7f9fb 100%);
}
.cr-v4-hero h1 {
	max-width: 900px;
}
.cr-v4-hero .cr-lead {
	max-width: 760px;
	font-size: clamp(1.08rem,1.35vw,1.26rem);
}

/* Carte À la une */
.cr-featured-story {
	border-radius: 30px;
	box-shadow: 0 28px 80px rgba(11,27,45,.1);
}
.cr-featured-media {
	position: relative;
	display: block;
	overflow: hidden;
	min-height: 460px;
	background: linear-gradient(145deg, #0b1b2d, #112b47);
}
.cr-featured-media::after {
	content: "";
	position: absolute;
	inset: auto 0 0 0;
	height: 38%;
	background: linear-gradient(to top, rgba(4,15,27,.3), transparent);
	pointer-events: none;
}
.cr-featured-copy {
	padding: 58px;
}
.cr-featured-copy h2 {
	letter-spacing: -.045em;
}
.cr-featured-copy > p:not(.cr-eyebrow) {
	font-size: 1.04rem;
}

/* Illustration premium quand aucun visuel n'est présent */
.cr-featured-illustration {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 460px;
	overflow: hidden;
}
.cr-fi-grid {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
	background-size: 42px 42px;
	mask-image: linear-gradient(to bottom, black 70%, transparent);
}
.cr-fi-ring {
	position: absolute;
	top: 50%;
	left: 50%;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 50%;
	transform: translate(-50%,-50%);
}
.cr-fi-ring-a { width: 330px; height: 330px; }
.cr-fi-ring-b { width: 220px; height: 220px; }
.cr-fi-core {
	position: absolute;
	top: 50%;
	left: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	transform: translate(-50%,-50%);
	color: #fff;
}
.cr-fi-core-mark {
	position: relative;
	width: 86px;
	height: 86px;
	border: 10px solid #fff;
	border-right-color: transparent;
	border-radius: 50%;
	box-shadow: 0 0 40px rgba(255,255,255,.12);
}
.cr-fi-core-mark::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--cr-orange);
	transform: translate(-50%,-50%);
	box-shadow: 0 0 24px rgba(243,106,33,.65);
}
.cr-fi-core strong {
	font-size: 1.28rem;
	letter-spacing: -.02em;
}
.cr-fi-chip {
	position: absolute;
	padding: 10px 14px;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 999px;
	color: #fff;
	background: rgba(255,255,255,.07);
	font-size: .78rem;
	font-weight: 800;
	backdrop-filter: blur(10px);
}
.cr-fi-chip-a { top: 20%; right: 16%; }
.cr-fi-chip-b { left: 14%; bottom: 22%; }
.cr-fi-chip-c { right: 17%; bottom: 16%; }

/* Badges de métadonnées */
.cr-post-meta-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}
.cr-post-meta-badges span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 10px;
	border: 1px solid rgba(243,106,33,.16);
	border-radius: 999px;
	color: var(--cr-orange-dark);
	background: rgba(243,106,33,.055);
	font-size: .78rem;
	font-weight: 750;
}
.cr-post-meta-badges svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Bouton plus compact et plus premium */
.cr-featured-copy .cr-btn {
	align-self: flex-start;
	width: auto;
	min-width: 185px;
	margin-top: 8px;
}
.cr-btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 14px 20px;
	border-radius: 12px;
}
.cr-btn-arrow svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .2s ease;
}
.cr-btn-arrow:hover svg {
	transform: translateX(4px);
}

/* Cartes et interactions plus homogènes */
.cr-v4-category-card,
.cr-premium-card,
.cr-tool-card,
.cr-post-card {
	border-color: rgba(11,27,45,.09);
}
.cr-v4-category-card:hover,
.cr-premium-card:hover,
.cr-tool-card:hover,
.cr-post-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 22px 55px rgba(11,27,45,.1);
}
.cr-v4-category-card > span,
.cr-premium-icon {
	box-shadow: inset 0 0 0 1px rgba(243,106,33,.08);
}

/* Micro-animation discrète */
@keyframes cr-float-soft {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-8px); }
}
.cr-fi-chip-a { animation: cr-float-soft 5s ease-in-out infinite; }
.cr-fi-chip-b { animation: cr-float-soft 6s ease-in-out infinite .8s; }
.cr-fi-chip-c { animation: cr-float-soft 5.5s ease-in-out infinite 1.4s; }

@media (prefers-reduced-motion: reduce) {
	.cr-fi-chip-a,
	.cr-fi-chip-b,
	.cr-fi-chip-c {
		animation: none;
	}
	* {
		scroll-behavior: auto !important;
	}
}

@media (max-width: 680px) {
	.cr-featured-copy { padding: 30px; }
	.cr-featured-media,
	.cr-featured-illustration { min-height: 340px; }
	.cr-fi-ring-a { width: 250px; height: 250px; }
	.cr-fi-ring-b { width: 170px; height: 170px; }
	.cr-featured-copy .cr-btn { width: 100%; }
}


/* ===========================
   CYBER REPÈRE V6 — FINITIONS
   =========================== */

/* Typographie éditoriale */
.cr-article-content {
	color: #263548;
	font-size: 1.08rem;
	line-height: 1.82;
}
.cr-article-content > p:first-of-type {
	font-size: 1.18rem;
	color: #42546a;
}
.cr-article-content h2 {
	margin-top: 2.4em;
	padding-top: .2em;
	color: var(--cr-navy);
	font-size: clamp(1.85rem,3vw,2.55rem);
	letter-spacing: -.035em;
}
.cr-article-content h3 {
	margin-top: 1.9em;
	color: var(--cr-navy);
	font-size: clamp(1.35rem,2vw,1.72rem);
	letter-spacing: -.025em;
}
.cr-article-content a {
	color: var(--cr-orange-dark);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}
.cr-article-content img {
	border-radius: 18px;
	box-shadow: 0 20px 55px rgba(11,27,45,.11);
}

/* Citations */
.cr-article-content blockquote {
	position: relative;
	margin: 2.2em 0;
	padding: 28px 30px 28px 72px;
	border: 0;
	border-radius: 18px;
	color: var(--cr-navy);
	background: #f5f7fa;
	font-size: 1.16rem;
	font-weight: 650;
	line-height: 1.65;
}
.cr-article-content blockquote::before {
	content: "“";
	position: absolute;
	top: 10px;
	left: 22px;
	color: var(--cr-orange);
	font-size: 4rem;
	line-height: 1;
	font-family: Georgia, serif;
}

/* Encadrés Gutenberg */
.cr-article-content .wp-block-group.has-background,
.cr-article-content .wp-block-cover {
	margin: 2em 0;
	padding: 28px;
	border-radius: 18px;
}
.cr-article-content .wp-block-group.has-background {
	border: 1px solid var(--cr-line);
	box-shadow: 0 12px 35px rgba(11,27,45,.05);
}
.cr-article-content .wp-block-separator {
	margin: 3em 0;
	border-color: var(--cr-line);
}

/* Listes plus lisibles */
.cr-article-content ul,
.cr-article-content ol {
	padding-left: 1.35em;
}
.cr-article-content li {
	margin: .58em 0;
}
.cr-article-content li::marker {
	color: var(--cr-orange);
	font-weight: 800;
}

/* Tableaux */
.cr-article-content table {
	width: 100%;
	margin: 2em 0;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border: 1px solid var(--cr-line);
	border-radius: 14px;
}
.cr-article-content th,
.cr-article-content td {
	padding: 14px 16px;
	border-right: 1px solid var(--cr-line);
	border-bottom: 1px solid var(--cr-line);
	text-align: left;
}
.cr-article-content th {
	color: var(--cr-navy);
	background: var(--cr-soft);
}
.cr-article-content tr:last-child td { border-bottom: 0; }
.cr-article-content th:last-child,
.cr-article-content td:last-child { border-right: 0; }

/* Bloc auteur */
.cr-author-box {
	display: grid;
	grid-template-columns: 72px 1fr;
	gap: 20px;
	align-items: center;
	margin-top: 64px;
	padding: 26px;
	border: 1px solid var(--cr-line);
	border-radius: 20px;
	background: linear-gradient(145deg, #ffffff, #f7f9fb);
	box-shadow: 0 16px 45px rgba(11,27,45,.06);
}
.cr-author-avatar img {
	display: block;
	width: 72px;
	height: 72px;
	border-radius: 18px;
	box-shadow: none;
}
.cr-author-label {
	margin: 0 0 4px;
	color: var(--cr-orange-dark);
	font-size: .76rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .08em;
}
.cr-author-box strong {
	display: block;
	color: var(--cr-navy);
	font-size: 1.12rem;
}
.cr-author-box p:last-child {
	margin: 5px 0 0;
	color: var(--cr-muted);
	font-size: .92rem;
	line-height: 1.55;
}

/* Focus clavier */
.cr-btn:focus-visible,
.cr-menu a:focus-visible,
.cr-icon-btn:focus-visible,
.cr-header-cta:focus-visible,
.cr-search-form input:focus-visible,
.cr-hero-search input:focus-visible {
	outline: 3px solid rgba(243,106,33,.35);
	outline-offset: 3px;
}

/* Finitions générales */
.cr-post-card,
.cr-featured-story,
.cr-v4-category-card,
.cr-premium-card,
.cr-tool-card {
	will-change: transform;
}
.cr-footer {
	margin-top: 0;
}
.cr-footer-bottom {
	color: rgba(255,255,255,.52);
}

@media (max-width: 680px) {
	.cr-author-box {
		grid-template-columns: 1fr;
	}
	.cr-author-avatar img {
		width: 62px;
		height: 62px;
	}
	.cr-article-content blockquote {
		padding: 54px 22px 24px;
	}
	.cr-article-content blockquote::before {
		top: 8px;
		left: 20px;
	}
}


/* ==================================
   CYBER REPÈRE V7 — RELEASE CANDIDATE
   ================================== */

/* Header final */
.cr-header-cta {
	gap: 8px;
}
.cr-header-cta span {
	display: inline-block;
	transition: transform .2s ease;
}
.cr-header-cta:hover span {
	transform: translateX(3px);
}
.cr-menu a.is-current {
	color: var(--cr-navy);
	background: var(--cr-soft);
}
.cr-menu a.is-current::after {
	content: "";
	position: absolute;
	right: 14px;
	bottom: 7px;
	left: 14px;
	height: 2px;
	border-radius: 10px;
	background: var(--cr-orange);
}

/* Méga-menu Guides */
.cr-guides-mega {
	position: absolute;
	z-index: 95;
	top: 100%;
	right: 0;
	left: 0;
	visibility: hidden;
	opacity: 0;
	transform: translateY(-8px);
	pointer-events: none;
	transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.cr-guides-mega.is-open {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
.cr-guides-mega::before {
	content: "";
	position: absolute;
	inset: 0;
	border-top: 1px solid rgba(11,27,45,.08);
	background: rgba(255,255,255,.98);
	box-shadow: 0 28px 70px rgba(11,27,45,.14);
	backdrop-filter: blur(18px);
}
.cr-guides-mega-inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(230px,.72fr) 2fr;
	gap: 44px;
	padding-top: 30px;
	padding-bottom: 34px;
}
.cr-mega-intro {
	padding: 6px 32px 6px 0;
	border-right: 1px solid var(--cr-line);
}
.cr-mega-intro > strong {
	display: block;
	margin: 8px 0 18px;
	color: var(--cr-navy);
	font-size: 1.18rem;
	line-height: 1.45;
}
.cr-mega-intro > a {
	color: var(--cr-orange-dark);
	font-size: .9rem;
	font-weight: 800;
}
.cr-mega-topics {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 10px;
}
.cr-mega-topics a {
	display: grid;
	grid-template-columns: 28px 1fr;
	column-gap: 10px;
	padding: 15px;
	border-radius: 14px;
	color: var(--cr-navy);
	transition: background .2s ease, transform .2s ease;
}
.cr-mega-topics a:hover,
.cr-mega-topics a:focus-visible {
	background: var(--cr-soft);
	transform: translateY(-2px);
}
.cr-mega-topics span {
	grid-row: 1 / 3;
	color: var(--cr-orange);
	font-size: .72rem;
	font-weight: 900;
	letter-spacing: .08em;
}
.cr-mega-topics strong {
	display: block;
	font-size: .96rem;
}
.cr-mega-topics small {
	display: block;
	margin-top: 3px;
	color: var(--cr-muted);
	font-size: .76rem;
	line-height: 1.4;
}

/* Guides essentiels */
.cr-v7-guides {
	background: #fff;
}
.cr-v7-guide-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 14px;
}
.cr-v7-guide-grid > a {
	display: grid;
	grid-template-columns: 42px 1fr 30px;
	gap: 15px;
	align-items: center;
	min-height: 132px;
	padding: 24px;
	border: 1px solid var(--cr-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 35px rgba(11,27,45,.04);
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.cr-v7-guide-grid > a:hover {
	transform: translateY(-4px);
	border-color: rgba(243,106,33,.35);
	box-shadow: 0 20px 48px rgba(11,27,45,.09);
}
.cr-v7-guide-number {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	color: var(--cr-orange-dark);
	background: rgba(243,106,33,.1);
	font-size: .76rem;
	font-weight: 900;
}
.cr-v7-guide-grid strong {
	display: block;
	margin-bottom: 5px;
	color: var(--cr-navy);
	font-size: 1.08rem;
}
.cr-v7-guide-grid p {
	margin: 0;
	color: var(--cr-muted);
	font-size: .88rem;
	line-height: 1.55;
}
.cr-v7-guide-arrow {
	color: var(--cr-orange);
	font-size: 1.35rem;
	transition: transform .2s ease;
}
.cr-v7-guide-grid > a:hover .cr-v7-guide-arrow {
	transform: translateX(4px);
}

/* Glossaire et outils */
.cr-v7-resources {
	padding-top: 24px;
	background: #fff;
}
.cr-v7-resources-grid {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 20px;
}
.cr-v7-resource-card {
	position: relative;
	overflow: hidden;
	min-height: 330px;
	padding: clamp(28px,4vw,48px);
	border-radius: 24px;
	transition: transform .25s ease, box-shadow .25s ease;
}
.cr-v7-resource-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 26px 62px rgba(11,27,45,.13);
}
.cr-v7-resource-card::after {
	content: "";
	position: absolute;
	width: 220px;
	height: 220px;
	right: -80px;
	bottom: -100px;
	border: 1px solid currentColor;
	border-radius: 50%;
	opacity: .12;
}
.cr-v7-resource-glossary {
	color: #fff;
	background: var(--cr-navy);
}
.cr-v7-resource-tools {
	color: var(--cr-navy);
	border: 1px solid rgba(243,106,33,.2);
	background: linear-gradient(145deg,#fff7f1,#fff);
}
.cr-v7-resource-card .cr-v7-resource-icon {
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	margin-bottom: 36px;
	border-radius: 15px;
	background: rgba(243,106,33,.14);
}
.cr-v7-resource-card svg {
	width: 25px;
	height: 25px;
}
.cr-v7-resource-card h2 {
	max-width: 420px;
	margin: 8px 0 14px;
	color: inherit;
	font-size: clamp(1.75rem,3vw,2.5rem);
	letter-spacing: -.04em;
}
.cr-v7-resource-card > p:not(.cr-eyebrow) {
	max-width: 480px;
	margin-bottom: 26px;
	color: inherit;
	opacity: .72;
	line-height: 1.7;
}
.cr-v7-resource-card > strong {
	color: inherit;
	font-size: .9rem;
}
.cr-v7-resource-glossary .cr-eyebrow {
	color: #ff9b62;
}

/* Footer final */
.cr-footer-brand p {
	line-height: 1.65;
}
.cr-footer-grid {
	padding-top: 68px;
	padding-bottom: 52px;
}

@media (max-width: 980px) {
	.cr-guides-mega {
		display: none;
	}
	.cr-v7-guide-grid,
	.cr-v7-resources-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {
	.cr-v7-guide-grid > a {
		grid-template-columns: 38px 1fr;
		padding: 20px;
	}
	.cr-v7-guide-arrow {
		display: none;
	}
	.cr-v7-resource-card {
		min-height: 300px;
	}
}
