/* ============================================================
 * SC SCPI — Fiche avis SCPI (thème SOMBRE)
 * Hérite des tokens --sc-* du socle (sc-core-css). Préfixe local : .scs-
 * Charte : Orbitron (titres/chiffres) + Inter (corps).
 * ============================================================ */

.sc-scpi-wrap {
	--scs-gerant: var(--sc-accent);
	--scs-secteur: #f0b86e;
	--scs-geo: var(--sc-immo);
	--scs-isr: var(--sc-enr);
	--scs-rdt: var(--sc-accent-2);
	--scs-cash: #f3b6c6;

	width: 100%;
	font-family: var(--sc-font-body);
	color: var(--sc-ink);
	line-height: 1.6;
	font-size: 15px;

	/* Cadre sombre englobant (comme SC Avis) : le fil d'Ariane et les blocs
	 * vivent DANS ce cadre ; les espaces entre cartes laissent voir ce fond
	 * sombre, et non le blanc de la page. */
	background:
		radial-gradient(1100px 480px at 12% -8%, rgba(124,141,240,.10), transparent 60%),
		radial-gradient(900px 460px at 95% 0%, rgba(155,140,240,.10), transparent 55%),
		linear-gradient(180deg, var(--sc-bg) 0%, var(--sc-bg-2) 100%);
	border: 1px solid var(--sc-line);
	border-radius: 24px;
	box-shadow: 0 18px 50px -20px rgba(0,0,0,.55);
	padding: clamp(16px, 3vw, 36px);
	margin: 28px 0;
}
.sc-scpi-wrap *,
.sc-scpi-wrap *::before,
.sc-scpi-wrap *::after { box-sizing: border-box; }

.sc-scpi-erreur {
	font-family: var(--sc-font-body, sans-serif);
	background: rgba(240,128,154,.1); border: 1px solid var(--sc-neg, #f0809a);
	color: #f0809a; border-radius: 12px; padding: 14px 18px;
}

/* ---------- HERO ---------- */
.scs-hero {
	position: relative; overflow: hidden;
	background: linear-gradient(135deg, rgba(124,141,240,.10), rgba(155,140,240,.05)), var(--sc-card);
	border: 1px solid var(--sc-line-2); border-radius: var(--sc-radius);
	padding: 26px 28px; margin-bottom: 18px;
}
.scs-hero-glow {
	position: absolute; top: -60%; right: -10%; width: 420px; height: 420px;
	background: radial-gradient(circle, rgba(124,141,240,.22), transparent 70%);
	pointer-events: none;
}
.scs-hero-inner {
	position: relative; display: flex; align-items: center; justify-content: space-between;
	gap: 26px; flex-wrap: wrap;
}
.scs-hero-id { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; min-width: 0; flex: 1 1 0; }
.scs-mono {
	width: 60px; height: 60px; flex: none; border-radius: 16px;
	display: flex; align-items: center; justify-content: center;
	font-family: var(--sc-font-head); font-weight: 800; font-size: 1.4rem;
	color: var(--sc-accent); background: var(--sc-accent-bg);
	border: 1px solid var(--sc-line-2); letter-spacing: .02em;
}
.scs-hero-titles { min-width: 0; }
.scs-hero-kicker {
	font-size: .72rem; text-transform: uppercase; letter-spacing: .14em;
	color: var(--sc-muted); font-weight: 600;
}
.scs-hero-name {
	font-family: var(--sc-font-head); font-weight: 800;
	font-size: clamp(1.4rem, 3vw, 2.05rem); line-height: 1.1;
	margin: 4px 0 10px; color: #fff;
}
.scs-hero-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.scs-tag {
	font-size: 11.5px; font-weight: 600; padding: 4px 11px;
	border-radius: var(--sc-radius-pill); white-space: nowrap;
	background: var(--sc-card-2); color: var(--sc-ink-2); border: 1px solid var(--sc-line);
}
.scs-tag-gerant  { background: var(--sc-accent-bg); color: var(--sc-accent); border-color: transparent; }
.scs-tag-secteur { background: rgba(240,184,110,.15); color: var(--scs-secteur); border-color: transparent; }
.scs-tag-geo     { background: rgba(127,178,229,.15); color: var(--scs-geo); border-color: transparent; }
.scs-tag-flag,
.scs-tag-isr     { background: rgba(95,217,160,.15); color: var(--sc-enr); border-color: transparent; }
.scs-tag-cash    {
	color: #0e1525; border-color: transparent; font-weight: 700;
	background: linear-gradient(100deg, #f3b6c6, #f0809a);
}

.scs-hero-rdt {
	flex: none; text-align: center; min-width: 180px;
	background: rgba(14,21,37,.42); border: 1px solid var(--sc-line-2);
	border-radius: var(--sc-radius-sm); padding: 16px 22px;
}
.scs-rdt-val {
	font-family: var(--sc-font-head); font-weight: 800;
	font-size: clamp(2rem, 5vw, 2.9rem); line-height: 1; color: var(--sc-enr);
}
.scs-rdt-val span { font-size: .5em; margin-left: 2px; color: var(--sc-ink-2); }
.scs-rdt-lbl {
	font-size: .76rem; text-transform: uppercase; letter-spacing: .08em;
	color: var(--sc-muted); font-weight: 600; margin-top: 6px;
}
.scs-rdt-sec { font-family: var(--sc-font-head); font-size: .8rem; color: var(--sc-ink-2); margin-top: 6px; }
.scs-rdt-pos { margin-top: 8px; font-size: .74rem; font-weight: 600; padding: 3px 10px; border-radius: var(--sc-radius-pill); display: inline-block; }
.scs-rdt-pos-haut   { background: rgba(95,217,160,.15); color: var(--sc-enr); }
.scs-rdt-pos-milieu { background: rgba(127,178,229,.15); color: var(--sc-immo); }
.scs-rdt-pos-bas    { background: rgba(240,143,168,.15); color: var(--sc-autre); }
.scs-rdt-empty { font-family: var(--sc-font-head); color: var(--sc-muted); font-size: .95rem; font-weight: 600; line-height: 1.4; }

/* ---------- PARTENAIRES ---------- */
.scs-partners {
	background: linear-gradient(135deg, rgba(243,182,198,.07), rgba(124,141,240,.05)), var(--sc-card);
	border: 1px solid var(--sc-line-2); border-radius: var(--sc-radius);
	padding: 24px 26px; margin-bottom: 18px;
}
.scs-partners-head { margin-bottom: 18px; }
.scs-partners-title {
	font-family: var(--sc-font-head); font-weight: 700;
	font-size: clamp(1.05rem, 2.2vw, 1.4rem); line-height: 1.25; color: #fff; margin: 0 0 6px;
}
.scs-partners-sub { font-size: .92rem; color: var(--sc-ink-2); margin: 0; }
.scs-partners-sub strong { color: var(--sc-enr); }
.scs-partners-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.scs-partner {
	display: flex; flex-direction: column; gap: 10px;
	background: rgba(14,21,37,.5); border: 1px solid var(--sc-line);
	border-radius: var(--sc-radius-sm); padding: 18px; transition: border-color .15s ease, transform .15s ease;
}
.scs-partner:hover { border-color: var(--sc-line-2); transform: translateY(-2px); }
.scs-partner-head { display: flex; align-items: center; gap: 12px; }
.scs-partner-logo {
	width: 44px; height: 44px; flex: none; border-radius: 10px; overflow: hidden;
	background: #fff; border: 1px solid var(--sc-line-2);
	display: flex; align-items: center; justify-content: center;
}
.scs-partner-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.scs-partner-logo-txt { background: var(--sc-accent-bg); color: var(--sc-accent); font-family: var(--sc-font-head); font-weight: 800; }
.scs-partner-name { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.05rem; color: #fff; }
.scs-partner-kicker { font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; color: var(--sc-muted); }
.scs-partner-cash {
	font-size: .92rem; color: var(--sc-ink); background: rgba(95,217,160,.12);
	border: 1px solid rgba(95,217,160,.3); border-radius: 10px; padding: 8px 12px;
}
.scs-partner-cash strong { color: var(--sc-enr); font-family: var(--sc-font-head); }
.scs-partner-offre { font-size: .88rem; color: var(--sc-ink-2); }
.scs-partner-offre ul { margin: 6px 0; padding-left: 18px; }
.scs-partner-offre li { margin: 3px 0; }
.scs-partner-offre a { color: var(--sc-immo); }
.scs-partner-code { font-size: .86rem; color: var(--sc-ink-2); }
.scs-partner-code strong { font-family: var(--sc-font-head); color: var(--scs-cash); letter-spacing: .04em; }
.scs-partner-cta {
	margin-top: auto; display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--sc-font-body); font-size: 13.5px; font-weight: 700;
	color: #0e1525 !important; text-decoration: none !important;
	background: linear-gradient(100deg, var(--sc-accent), var(--sc-accent-2));
	border-radius: var(--sc-radius-pill); padding: 11px 18px; transition: filter .15s ease;
}
.scs-partner-cta:hover { filter: brightness(1.08); }
.scs-partner-disc { font-size: .68rem; color: var(--sc-muted); text-align: center; }

/* ---------- KPI BAND ---------- */
.scs-kpis {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 12px; margin-bottom: 18px;
}
.scs-kpi {
	background: var(--sc-card); border: 1px solid var(--sc-line);
	border-radius: var(--sc-radius-sm); padding: 16px; transition: transform .15s ease, border-color .15s ease;
}
.scs-kpi:hover { transform: translateY(-3px); border-color: var(--sc-line-2); }
.scs-kpi-label { font-size: .72rem; text-transform: uppercase; letter-spacing: .07em; color: var(--sc-muted); font-weight: 600; }
.scs-kpi-val { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.45rem; color: #fff; margin: 6px 0 3px; line-height: 1.1; }
.scs-kpi-sub { font-size: .74rem; color: var(--sc-ink-2); }

/* ---------- NAV ANCRES ---------- */
.scs-nav {
	display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 20px;
	position: sticky; top: 0; z-index: 5;
	background: linear-gradient(var(--sc-bg), var(--sc-bg) 70%, transparent);
	padding: 10px 0;
}
.scs-nav a {
	font-size: 13px; font-weight: 600; color: var(--sc-muted); text-decoration: none;
	padding: 7px 14px; border-radius: var(--sc-radius-pill); border: 1px solid var(--sc-line);
	background: var(--sc-card); transition: all .15s ease;
}
.scs-nav a:hover { color: var(--sc-accent); border-color: var(--sc-accent); background: var(--sc-accent-bg); }

/* ---------- CARTES / SECTIONS ---------- */
.scs-card {
	background: var(--sc-card); border: 1px solid var(--sc-line);
	border-radius: var(--sc-radius); padding: 24px; margin-bottom: 18px; scroll-margin-top: 70px;
}
.scs-h2 {
	font-family: var(--sc-font-head); font-weight: 700; font-size: 1.25rem; color: #fff;
	margin: 0 0 14px; display: flex; align-items: center; gap: 10px;
}
.scs-h2-ic { font-size: 1.1em; filter: grayscale(.1); }
.scs-lead { font-size: .98rem; color: var(--sc-ink-2); margin: 0 0 16px; }
.scs-prose { color: var(--sc-ink-2); font-size: .95rem; }
.scs-prose p { margin: 0 0 12px; }
.scs-prose p:last-child { margin-bottom: 0; }
.scs-prose a { color: var(--sc-accent); }
.scs-note { font-size: .82rem; color: var(--sc-muted); margin: 14px 0 0; font-style: italic; }
.scs-empty { text-align: center; color: var(--sc-muted); padding: 22px 12px; font-style: italic; }

.scs-callout {
	border-radius: var(--sc-radius-sm); padding: 16px 18px; margin: 16px 0 0;
	border: 1px solid var(--sc-line); background: var(--sc-card-2);
}
.scs-callout-keys { border-left: 3px solid var(--sc-enr); }
.scs-callout-editorial { border-left: 3px solid var(--sc-accent); }
.scs-callout-title {
	font-family: var(--sc-font-head); font-weight: 600; font-size: .82rem;
	text-transform: uppercase; letter-spacing: .06em; color: var(--sc-ink); margin-bottom: 8px;
}
.scs-banner {
	font-size: .9rem; border-radius: var(--sc-radius-sm); padding: 12px 16px; margin-bottom: 16px;
}
.scs-banner-good { background: rgba(95,217,160,.1); border: 1px solid rgba(95,217,160,.3); color: var(--sc-ink-2); }
.scs-banner-good strong { color: var(--sc-enr); }
.scs-video { margin-top: 18px; position: relative; padding-bottom: 56.25%; height: 0; border-radius: var(--sc-radius-sm); overflow: hidden; border: 1px solid var(--sc-line); }
.scs-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* ---------- PRÉSENTATION (avis / stratégie / points clés) ---------- */
.scs-prose-lead { font-size: .95rem; color: var(--sc-ink-2); margin: 0 0 16px; }
.scs-prose-lead strong { color: var(--sc-ink); }
.scs-block { margin-top: 18px; }
.scs-h3 {
	font-family: var(--sc-font-head); font-weight: 600; font-size: 1.02rem; color: var(--sc-ink);
	margin: 0 0 8px; padding-left: 11px; border-left: 3px solid var(--sc-accent);
}
.scs-block-keys { background: var(--sc-card-2); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); padding: 16px 18px; }
.scs-block-keys .scs-h3 { border-left-color: var(--sc-enr); }
.scs-keys { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.scs-keys li { position: relative; padding-left: 26px; color: var(--sc-ink-2); font-size: .93rem; line-height: 1.5; }
.scs-keys li::before {
	content: "✓"; position: absolute; left: 0; top: 1px;
	color: var(--sc-enr); font-weight: 700; font-size: .9rem;
}

/* ---------- LISTES DE STATS (dl) ---------- */
.scs-stats {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 2px; margin: 0; border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); overflow: hidden;
}
.scs-stat {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 12px 16px; background: var(--sc-card); margin: 0;
}
.scs-stat-label { font-size: .82rem; color: var(--sc-muted); font-weight: 500; display: inline-flex; align-items: center; gap: 6px; }
.scs-stat-hint {
	display: inline-flex; align-items: center; justify-content: center;
	width: 15px; height: 15px; border-radius: 50%; font-size: 10px; font-weight: 700;
	background: var(--sc-line); color: var(--sc-muted); cursor: help;
}
.scs-stat-val { font-family: var(--sc-font-head); font-weight: 600; font-size: .98rem; color: var(--sc-ink); text-align: right; }

/* ---------- PERFORMANCE ---------- */
.scs-chart-box {
	position: relative; height: 320px; background: var(--sc-bg-2);
	border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); padding: 14px;
}
.scs-obj-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-top: 16px; }
.scs-obj {
	text-align: center; background: var(--sc-card-2); border: 1px solid var(--sc-line);
	border-radius: var(--sc-radius-sm); padding: 16px 12px;
}
.scs-obj-val { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.5rem; color: var(--sc-accent); }
.scs-obj-lbl { font-size: .78rem; color: var(--sc-muted); margin-top: 4px; }
.scs-obj-lbl span { display: block; font-size: .72rem; color: var(--sc-ink-2); margin-top: 2px; }
.scs-obj-hl { background: linear-gradient(135deg, rgba(95,217,160,.14), rgba(124,141,240,.08)); border-color: rgba(95,217,160,.35); }
.scs-obj-hl .scs-obj-val { color: var(--sc-enr); }

/* ---------- PATRIMOINE & RISQUE ---------- */
.scs-risk-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.scs-risk-side { display: flex; flex-direction: column; gap: 14px; }
.scs-sri { background: var(--sc-card-2); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); padding: 16px; }
.scs-sri-title { font-size: .8rem; text-transform: uppercase; letter-spacing: .06em; color: var(--sc-muted); font-weight: 600; margin-bottom: 10px; }
.scs-sri-scale { display: flex; gap: 5px; }
.scs-sri-seg {
	flex: 1; height: 34px; display: flex; align-items: center; justify-content: center;
	font-family: var(--sc-font-head); font-weight: 700; font-size: .85rem;
	border-radius: 7px; color: var(--sc-muted); background: var(--sc-card);
	border: 1px solid var(--sc-line); opacity: .55; transition: all .15s ease;
}
.scs-sri-seg:nth-child(1) { --seg: #5fd9a0; }
.scs-sri-seg:nth-child(2) { --seg: #86e0a0; }
.scs-sri-seg:nth-child(3) { --seg: #c7e06e; }
.scs-sri-seg:nth-child(4) { --seg: #f0d36e; }
.scs-sri-seg:nth-child(5) { --seg: #f0b86e; }
.scs-sri-seg:nth-child(6) { --seg: #f0a07c; }
.scs-sri-seg:nth-child(7) { --seg: #f0809a; }
.scs-sri-seg.is-active {
	opacity: 1; color: #0e1525; background: var(--seg); border-color: transparent;
	transform: scale(1.12); box-shadow: 0 6px 18px -8px var(--seg);
}
.scs-sri-legend { display: flex; justify-content: space-between; font-size: .68rem; color: var(--sc-muted); margin-top: 8px; }
.scs-sri-na { font-size: .76rem; color: var(--sc-muted); margin-top: 8px; font-style: italic; }

.scs-esg { background: var(--sc-card-2); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); padding: 16px; }
.scs-esg-title { font-size: .8rem; text-transform: uppercase; letter-spacing: .06em; color: var(--sc-muted); font-weight: 600; margin-bottom: 10px; }
.scs-esg-badge { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: 10px; margin-bottom: 8px; border: 1px solid var(--sc-line); }
.scs-esg-badge:last-child { margin-bottom: 0; }
.scs-esg-tag { font-family: var(--sc-font-head); font-weight: 700; font-size: .9rem; }
.scs-esg-desc { font-size: .76rem; color: var(--sc-ink-2); }
.scs-esg-a9  { background: rgba(95,217,160,.12); border-color: rgba(95,217,160,.3); }
.scs-esg-a9 .scs-esg-tag  { color: var(--sc-enr); }
.scs-esg-a8  { background: rgba(127,178,229,.12); border-color: rgba(127,178,229,.3); }
.scs-esg-a8 .scs-esg-tag  { color: var(--sc-immo); }
.scs-esg-a6  { background: var(--sc-card); }
.scs-esg-a6 .scs-esg-tag  { color: var(--sc-muted); }
.scs-esg-isr { background: rgba(155,140,240,.12); border-color: rgba(155,140,240,.3); }
.scs-esg-isr .scs-esg-tag { color: var(--sc-accent-2); }

/* ---------- RÉPARTITIONS (DOUGHNUTS) ---------- */
.scs-rep-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.scs-rep { background: var(--sc-card-2); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); padding: 18px; }
.scs-rep-title { font-family: var(--sc-font-head); font-weight: 600; font-size: .95rem; color: var(--sc-ink); margin-bottom: 12px; }
.scs-rep-maj { display: inline-block; font-family: var(--sc-font-body); font-weight: 600; font-size: .7rem; color: var(--sc-accent); background: var(--sc-accent-bg); padding: 2px 9px; border-radius: var(--sc-radius-pill); margin-left: 4px; }
.scs-donut { position: relative; height: 200px; margin-bottom: 12px; }
.scs-legend { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.scs-legend li { display: flex; align-items: center; gap: 8px; font-size: .82rem; }
.scs-legend-dot { width: 11px; height: 11px; border-radius: 3px; flex: none; }
.scs-legend-lbl { color: var(--sc-ink-2); flex: 1; min-width: 0; }
.scs-legend-val { font-family: var(--sc-font-head); font-weight: 600; color: var(--sc-ink); }

/* ---------- DOCUMENTS ---------- */
.scs-docs { list-style: none; margin: 0 0 14px; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; }
.scs-doc {
	display: flex; align-items: center; gap: 12px; text-decoration: none;
	background: var(--sc-card-2); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm);
	padding: 12px 14px; transition: border-color .15s ease, transform .15s ease;
}
.scs-doc:hover { border-color: var(--sc-accent); transform: translateY(-2px); }
.scs-doc-ic {
	width: 32px; height: 32px; flex: none; border-radius: 8px; display: flex; align-items: center; justify-content: center;
	background: var(--sc-accent-bg); color: var(--sc-accent); font-size: 1.1rem;
}
.scs-doc-lbl { font-size: .88rem; color: var(--sc-ink); font-weight: 500; }
.scs-doc-lbl em { font-style: normal; color: var(--sc-muted); font-size: .8rem; }
.scs-docs-link { margin: 4px 0 0; }

/* ---------- AUTRES SCPI (maillage) ---------- */
.scs-related { margin-bottom: 18px; }
.scs-related-title { margin-bottom: 6px; }
.scs-related-lead { font-size: .92rem; color: var(--sc-ink-2); margin: 0 0 16px; }
.scs-related-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.scs-rel-card {
	background: var(--sc-card); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm);
	transition: border-color .15s ease, transform .15s ease;
}
.scs-rel-card:hover { border-color: var(--sc-line-2); transform: translateY(-3px); }
.scs-rel-link { display: flex; flex-direction: column; gap: 6px; padding: 16px; text-decoration: none; height: 100%; }
.scs-rel-factor {
	align-self: flex-start; font-size: .68rem; font-weight: 700; padding: 3px 9px;
	border-radius: var(--sc-radius-pill); text-transform: uppercase; letter-spacing: .03em;
}
.scs-rel-gerant { background: var(--sc-accent-bg); color: var(--sc-accent); }
.scs-rel-secteur { background: rgba(240,184,110,.15); color: var(--scs-secteur); }
.scs-rel-geo { background: rgba(127,178,229,.15); color: var(--scs-geo); }
.scs-rel-isr { background: rgba(95,217,160,.15); color: var(--sc-enr); }
.scs-rel-rdt { background: rgba(155,140,240,.15); color: var(--sc-accent-2); }
.scs-rel-neutre { background: var(--sc-card-2); color: var(--sc-muted); }
.scs-rel-name { font-family: var(--sc-font-head); font-weight: 700; font-size: 1rem; color: #fff; }
.scs-rel-soc { color: var(--sc-muted); font-size: .78rem; }
.scs-rel-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: auto; }
.scs-rel-td { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.05rem; color: var(--sc-enr); display: inline-flex; align-items: baseline; gap: 4px; }
.scs-rel-td em { font-style: normal; font-size: .62rem; color: var(--sc-muted); font-family: var(--sc-font-body); text-transform: uppercase; letter-spacing: .04em; }
.scs-rel-chip { font-size: .72rem; color: var(--sc-ink-2); background: var(--sc-card-2); border: 1px solid var(--sc-line); padding: 2px 8px; border-radius: var(--sc-radius-pill); }

/* ---------- AVERTISSEMENT / CRÉDITS ---------- */
.scs-warning {
	display: flex; gap: 14px; align-items: flex-start; margin: 22px 0 10px;
	background: rgba(240,184,110,.07); border: 1px solid rgba(240,184,110,.22);
	border-radius: var(--sc-radius-sm); padding: 16px 18px;
}
.scs-warning-icon { font-size: 1.5rem; line-height: 1; color: #f0b86e; flex: none; }
.scs-warning-txt { font-size: .83rem; color: var(--sc-ink-2); line-height: 1.6; }
.scs-warning-txt strong { color: var(--sc-ink); }
.scs-credits { text-align: center; font-size: .74rem; color: var(--sc-muted); margin-top: 8px; }

/* ---------- PAGE PARRAINAGE ---------- */
.scs-parr-why { margin-top: 14px; }

.scs-poffres { display: flex; flex-direction: column; gap: 18px; }
.scs-poffre {
	position: relative; background: rgba(14,21,37,.5); border: 1px solid var(--sc-line);
	border-radius: var(--sc-radius); padding: 24px 22px 20px;
}
.scs-poffre-top {
	border-color: rgba(95,217,160,.42);
	background: linear-gradient(135deg, rgba(95,217,160,.08), rgba(124,141,240,.05)), rgba(14,21,37,.5);
	box-shadow: 0 14px 36px -22px rgba(95,217,160,.6);
}
.scs-poffre-rank {
	position: absolute; top: -11px; left: 22px;
	font-family: var(--sc-font-head); font-weight: 700; font-size: .72rem; letter-spacing: .03em;
	color: #0e1525; background: linear-gradient(100deg, var(--sc-accent), var(--sc-accent-2));
	padding: 4px 13px; border-radius: var(--sc-radius-pill);
}
.scs-poffre-top .scs-poffre-rank { background: linear-gradient(100deg, #5fd9a0, #7c8df0); }
.scs-poffre-head { display: flex; align-items: center; gap: 14px; margin: 4px 0 12px; }
.scs-poffre-logo {
	width: 52px; height: 52px; flex: none; border-radius: 12px; overflow: hidden;
	background: #fff; border: 1px solid var(--sc-line-2); display: flex; align-items: center; justify-content: center;
}
.scs-poffre-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.scs-poffre-logo-txt { background: var(--sc-accent-bg); color: var(--sc-accent); font-family: var(--sc-font-head); font-weight: 800; font-size: 1.2rem; }
.scs-poffre-name { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.2rem; color: #fff; }
.scs-poffre-kicker { font-size: .76rem; color: var(--sc-muted); text-transform: uppercase; letter-spacing: .04em; }
.scs-poffre-badge {
	display: inline-block; font-size: .95rem; color: var(--sc-ink);
	background: rgba(95,217,160,.13); border: 1px solid rgba(95,217,160,.32);
	border-radius: 10px; padding: 8px 14px; margin-bottom: 12px;
}
.scs-poffre-badge strong { color: var(--sc-enr); font-family: var(--sc-font-head); }
.scs-poffre-pitch { font-size: .96rem; color: var(--sc-ink-2); margin: 0 0 12px; }
.scs-poffre-detail { font-size: .9rem; color: var(--sc-ink-2); margin-bottom: 12px; }
.scs-poffre-detail ul { margin: 6px 0; padding-left: 18px; }
.scs-poffre-detail li { margin: 3px 0; }
.scs-poffre-detail a { color: var(--sc-immo); }
.scs-poffre-code { font-size: .88rem; color: var(--sc-ink-2); margin-bottom: 10px; }
.scs-poffre-code strong { font-family: var(--sc-font-head); color: var(--scs-cash); letter-spacing: .04em; }
.scs-poffre-cumul { font-size: .84rem; color: var(--sc-enr); font-weight: 600; margin-bottom: 14px; }
.scs-poffre-cumul span { margin-right: 4px; }
.scs-poffre-cta {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px;
	font-family: var(--sc-font-body); font-size: 14px; font-weight: 700;
	color: #0e1525 !important; text-decoration: none !important;
	background: linear-gradient(100deg, var(--sc-accent), var(--sc-accent-2));
	border-radius: var(--sc-radius-pill); padding: 12px 22px; transition: filter .15s ease;
}
.scs-poffre-top .scs-poffre-cta { background: linear-gradient(100deg, #5fd9a0, #7c8df0); }
.scs-poffre-cta:hover { filter: brightness(1.08); }
.scs-poffre-disc { display: block; font-size: .68rem; color: var(--sc-muted); margin-top: 6px; }

/* En savoir plus (accès fiche avis depuis le parrainage) */
.scs-morebox {
	display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap;
	margin-top: 18px; padding: 18px 20px; border-radius: var(--sc-radius-sm);
	background: var(--sc-card-2); border: 1px solid var(--sc-line); border-left: 3px solid var(--sc-accent);
}
.scs-morebox-txt { font-size: .92rem; color: var(--sc-ink-2); flex: 1 1 280px; min-width: 0; }
.scs-morebox-txt strong { color: var(--sc-ink); display: block; margin-bottom: 2px; }
.scs-morebox-cta {
	flex: none; font-family: var(--sc-font-body); font-weight: 700; font-size: 13.5px;
	color: var(--sc-accent) !important; text-decoration: none;
	border: 1px solid var(--sc-accent); border-radius: var(--sc-radius-pill); padding: 11px 18px;
	transition: background .15s ease;
}
.scs-morebox-cta:hover { background: var(--sc-accent-bg); }

/* Lien de maillage sous le bloc partenaires (avis -> parrainage) */
.scs-partners-more { margin: 14px 0 0; text-align: center; }
.scs-partners-more a { color: var(--sc-accent); font-weight: 600; font-size: .9rem; text-decoration: none; }
.scs-partners-more a:hover { text-decoration: underline; }

/* Chip cashback dans les cartes « autres offres » */
.scs-rel-cash {
	font-family: var(--sc-font-head); font-weight: 700; font-size: .9rem; color: var(--sc-enr);
	background: rgba(95,217,160,.12); border: 1px solid rgba(95,217,160,.28);
	padding: 2px 9px; border-radius: var(--sc-radius-pill); white-space: nowrap;
}

/* ---------- PAGES DE CLASSEMENT ---------- */
.scs-lhero {
	position: relative; overflow: hidden;
	background: linear-gradient(135deg, rgba(124,141,240,.10), rgba(155,140,240,.05)), var(--sc-card);
	border: 1px solid var(--sc-line-2); border-radius: var(--sc-radius);
	padding: 30px 30px; margin-bottom: 18px;
}
.scs-lhero-inner { position: relative; max-width: 70ch; }
.scs-lhero-title {
	font-family: var(--sc-font-head); font-weight: 800;
	font-size: clamp(1.6rem, 3.6vw, 2.4rem); line-height: 1.08; color: #fff; margin: 6px 0 12px;
}
.scs-lhero-lead { font-size: clamp(.96rem, 1.6vw, 1.1rem); color: var(--sc-ink-2); margin: 0; }
.scs-lhero-lead strong { color: var(--sc-ink); }
.scs-intro .scs-prose p { font-size: 1rem; }

/* Tableau classement */
.scs-cls-table { min-width: 640px; }
.scs-cls-name { color: var(--sc-ink); font-weight: 600; text-decoration: none; }
.scs-cls-name:hover { color: var(--sc-accent); }
.scs-cls-yr { display: block; font-family: var(--sc-font-body); font-size: .68rem; color: var(--sc-muted); font-weight: 500; margin-top: 1px; }
.scs-cls-top td { background: rgba(95,217,160,.05); }
.scs-cls-top .sc-rank { color: var(--sc-enr); }
.scs-cls-cash {
	display: inline-block; font-family: var(--sc-font-head); font-weight: 700; font-size: .92rem;
	color: var(--sc-enr) !important; text-decoration: none;
	background: rgba(95,217,160,.12); border: 1px solid rgba(95,217,160,.3);
	padding: 3px 10px; border-radius: var(--sc-radius-pill); white-space: nowrap; transition: filter .15s ease;
}
.scs-cls-cash:hover { filter: brightness(1.1); }
.scs-cls-cash-flat { color: var(--sc-enr); background: rgba(95,217,160,.12); border: 1px solid rgba(95,217,160,.3); }
.scs-cls-na { color: var(--sc-muted); }

/* Chapitres détaillés */
.scs-chapitres-title { margin-top: 6px; }
.scs-chap { margin-bottom: 26px; }
.scs-chap-h {
	font-family: var(--sc-font-head); font-weight: 700; font-size: clamp(1.1rem, 2.4vw, 1.4rem);
	color: #fff; text-transform: uppercase; letter-spacing: .02em; margin: 0 0 8px;
	display: flex; align-items: center; gap: 12px;
}
.scs-chap-rang {
	display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 30px;
	border-radius: 9px; font-size: .95rem; color: #0e1525;
	background: linear-gradient(100deg, var(--sc-accent), var(--sc-accent-2));
}
.scs-chap-intro { font-size: .95rem; color: var(--sc-ink-2); margin: 0 0 14px; }
.scs-chap-card { padding: 22px; }
.scs-chap-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin-bottom: 16px; }
.scs-chap-name { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.35rem; color: #fff; margin-bottom: 8px; }
.scs-chap-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.scs-chap-tags .scs-tag { background: var(--sc-card-2); border: 1px solid var(--sc-line); color: var(--sc-ink-2); }
.scs-chap-tags .scs-tag-gerant { background: var(--sc-accent-bg); color: var(--sc-accent); border-color: transparent; }
.scs-chap-tags .scs-tag-flag { background: rgba(95,217,160,.15); color: var(--sc-enr); border-color: transparent; }
.scs-chap-rdt { text-align: right; flex: none; }
.scs-chap-rdt-line { font-size: .78rem; color: var(--sc-muted); margin-bottom: 4px; }
.scs-chap-rdt-line strong { display: block; font-family: var(--sc-font-head); font-size: 1.15rem; color: var(--sc-enr); }
.scs-chap-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 10px; }
.scs-chap-grid-2 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); margin-bottom: 16px; }
.scs-mini { background: var(--sc-card-2); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm); padding: 12px 14px; }
.scs-mini-lbl { font-size: .7rem; text-transform: uppercase; letter-spacing: .05em; color: var(--sc-muted); font-weight: 600; margin-bottom: 4px; }
.scs-mini-val { font-family: var(--sc-font-head); font-weight: 600; font-size: 1.02rem; color: var(--sc-ink); }
.scs-chap-strat { margin-top: 16px; }
.scs-chap-src { font-size: .74rem; color: var(--sc-muted); text-align: right; margin-top: 14px; font-style: italic; }
.scs-chap-more { margin-top: 12px; }

.scs-bilan .scs-h3 { margin-top: 20px; }

/* ---------- HOME / HUB SCPI ---------- */
.scs-home-hero { text-align: left; }
.scs-home-cta { margin-top: 18px; }
.scs-home-h2 { margin: 6px 0 14px; }
.scs-home-sub { font-size: .92rem; color: var(--sc-ink-2); margin: -6px 0 14px; }

.scs-stats-band {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; margin-bottom: 22px;
}
.scs-stat-big {
	background: var(--sc-card); border: 1px solid var(--sc-line); border-radius: var(--sc-radius-sm);
	padding: 18px 16px; text-align: center;
}
.scs-stat-big-v { font-family: var(--sc-font-head); font-weight: 800; font-size: 1.8rem; color: #fff; line-height: 1; }
.scs-stat-big-l { font-size: .76rem; text-transform: uppercase; letter-spacing: .05em; color: var(--sc-muted); font-weight: 600; margin-top: 7px; }
.scs-stat-big-l span { display: block; text-transform: none; letter-spacing: 0; color: var(--sc-ink-2); font-weight: 500; font-size: .82rem; margin-top: 2px; }

.scs-hub { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; margin-bottom: 24px; }
.scs-hub-card {
	display: flex; flex-direction: column; gap: 6px; text-decoration: none;
	background: var(--sc-card); border: 1px solid var(--sc-line); border-radius: var(--sc-radius);
	padding: 22px; transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.scs-hub-card:hover { transform: translateY(-3px); border-color: var(--sc-accent); box-shadow: 0 16px 36px -24px rgba(124,141,240,.7); }
.scs-hub-feat {
	grid-column: span 2;
	background: linear-gradient(135deg, rgba(124,141,240,.12), rgba(155,140,240,.06)), var(--sc-card);
	border-color: var(--sc-line-2);
}
.scs-hub-ic { font-size: 1.7rem; line-height: 1; }
.scs-hub-title { font-family: var(--sc-font-head); font-weight: 700; font-size: 1.1rem; color: #fff; }
.scs-hub-desc { font-size: .88rem; color: var(--sc-ink-2); flex: 1; }
.scs-hub-cta { font-family: var(--sc-font-body); font-weight: 700; font-size: .85rem; color: var(--sc-accent); margin-top: 6px; }
.scs-hub-card:hover .scs-hub-cta { text-decoration: underline; }

.scs-alaune-grid { margin-bottom: 8px; }
.scs-alaune-card { display: flex; flex-direction: column; }
.scs-alaune-parr {
	display: block; text-align: center; font-size: .78rem; font-weight: 600; color: var(--scs-cash, #f3b6c6);
	text-decoration: none; padding: 8px 10px; border-top: 1px solid var(--sc-line);
}
.scs-alaune-parr:hover { text-decoration: underline; }
.scs-home-more { margin: 14px 0 0; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 720px) {
	.scs-hero-inner { flex-direction: column; align-items: stretch; }
	.scs-hero-rdt { width: 100%; }
	.scs-hub-feat { grid-column: span 1; }
	.scs-partners-grid,
	.scs-rep-grid,
	.scs-risk-grid { grid-template-columns: 1fr; }
	.scs-nav { position: static; }
	.scs-morebox { flex-direction: column; align-items: stretch; }
	.scs-morebox-cta { text-align: center; }
	.scs-chap-top { flex-direction: column; }
	.scs-chap-rdt { text-align: left; }
}
