/* Product overview cards and comparison table (1.25.0). Photos are shown as supplied: never wider than their natural size,
   never cropped. On wide screens the block is wider than the text column (up to 1000 px) and the cards sit in two columns. */

/* Pages with cards (1.30.0): the white article box is 1000 px wide, the text keeps its 730 px column in the middle, and the
   wide blocks (cards, comparison table) are 32 px narrower than the box on each side: nothing touches or crosses its edge. */
.sc-has-cards:not(.home) .content-bg.entry.single-entry { overflow: visible; }
.sc-cards,
.sc-compare { margin: 36px 0; max-width: 100%; }
@media (min-width: 1033px) {
	.sc-has-cards:not(.home) .content-bg.entry.single-entry { --sc-box: min(1000px, calc(100vw - 32px)); --sc-wide: calc(var(--sc-box) - 64px); width: var(--sc-box); max-width: none; margin-left: calc((100% - var(--sc-box)) / 2); }
	.sc-has-cards:not(.home) .content-bg.entry.single-entry > .entry-content-wrap { padding-left: calc((var(--sc-box) - 730px) / 2); padding-right: calc((var(--sc-box) - 730px) / 2); }
	.sc-has-cards:not(.home) .sc-cards,
	.sc-has-cards:not(.home) .sc-compare { width: var(--sc-wide); max-width: none; margin-left: calc((100% - var(--sc-wide)) / 2); margin-right: 0; }
}
.sc-cards__note { font-size: 0.8125rem; letter-spacing: 0.02em; color: var(--muted, #6b585e); margin: 0 0 12px; font-style: italic; }
.sc-cards__kicker { font-weight: 700; font-size: 1.0625rem; margin: 22px 0 12px; }
.sc-cards__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 0 0 18px; }

/* Card: small photo and name side by side, then the facts, then the buttons. */
.sc-card { display: flex; flex-direction: column; background: var(--surface, #fff); border: 1px solid var(--line, #ebd7d2); border-radius: 16px; padding: 18px; font-size: 0.9375rem; line-height: 1.5; }
.sc-card__head { display: flex; gap: 14px; align-items: center; margin: 0 0 10px; }
.sc-card__img { flex: 0 0 auto; width: 130px; height: 130px; display: flex; align-items: center; justify-content: center; }
.sc-card__img img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; }
.sc-card h3 { margin: 0 0 2px; font-size: 1.25rem; line-height: 1.25; }
.sc-card__who { margin: 0; color: var(--muted, #6b585e); font-size: 0.875rem; }
.sc-card__ctl { margin: 0 0 8px; }
.sc-card__pc { list-style: none; margin: 0 0 10px; padding: 0; }
.sc-card__pc li { position: relative; margin: 0 0 3px; padding-left: 1.2em; }
.sc-card__pc li::before { position: absolute; left: 0; top: 0; font-weight: 700; }
.sc-card__pc .is-pro::before { content: "+"; color: #3f7d4e; }
.sc-card__pc .is-con::before { content: "−"; color: var(--sc-accent, #a0523d); }
.sc-vh { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sc-card__price { font-size: 0.8125rem; color: var(--muted, #6b585e); margin: 0 0 12px; }
.sc-card__actions { margin-top: auto; display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; }
.sc-sharegf .entry-content .sc-card__actions a.wp-block-button__link { padding: 0.55em 1.3em; font-size: 0.9375rem; }
.sc-card__vbtn { min-height: 44px; border: 1px solid var(--sc-accent, #a0523d); background: transparent; color: var(--sc-accent, #a0523d); border-radius: 999px; padding: 0.5em 1.1em; font: inherit; font-size: 0.875rem; font-weight: 600; cursor: pointer; line-height: 1.2; }
.sc-sharegf .sc-card__vbtn:hover, .sc-sharegf .sc-card__vbtn:focus-visible { background: var(--sc-accent, #a0523d); color: #fff; }
.sc-cards > .wp-block-buttons { margin: 6px 0 0; }

/* Comparison table (1.30.0): soft container with a thin brand border, light header, the model column takes the free room,
   the other columns fit their content, the button sits in the same row. On phones each row becomes a small card. */
.sc-compare__box { border: 1px solid var(--sc-line, #e4d3cc); border-radius: 16px; overflow: hidden; background: var(--sc-surface, #fff); }
.sc-sharegf .entry-content .sc-compare table { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: 0.9375rem; background: var(--sc-surface, #fff); }
.sc-sharegf .entry-content .sc-compare :is(th, td) { padding: 10px 16px; text-align: left; vertical-align: middle; border: 0; white-space: nowrap; }
.sc-sharegf .entry-content .sc-compare thead th { background: var(--sc-bg, #f6efe9); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--sc-muted, #5c4a50); }
.sc-sharegf .entry-content .sc-compare tbody td { border-top: 1px solid var(--sc-line, #e4d3cc); }
.sc-sharegf .entry-content .sc-compare td.sc-compare__model { width: 100%; white-space: normal; }
.sc-compare__thumb { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-right: 12px; vertical-align: middle; }
.sc-compare__thumb img { display: block; max-width: 44px; max-height: 44px; width: auto; height: auto; }
.sc-compare__model strong { vertical-align: middle; }
.sc-compare td.sc-compare__go { text-align: right; }
.sc-sharegf .entry-content .sc-compare a.sc-compare__btn { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.1em; border: 1px solid var(--sc-accent, #a0523d); border-radius: 999px; color: var(--sc-accent, #a0523d); font-weight: 600; font-size: 0.8125rem; line-height: 1.4; text-decoration: none; }
.sc-sharegf .entry-content .sc-compare a.sc-compare__btn:hover { background: var(--sc-accent, #a0523d); color: #fff; }
@media (max-width: 600px) {
	.sc-sharegf .entry-content .sc-compare thead { display: none; }
	.sc-sharegf .entry-content .sc-compare :is(table, tbody, tr, td) { display: block; }
	.sc-sharegf .entry-content .sc-compare tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 2px; padding: 12px 14px; border-top: 1px solid var(--sc-line, #e4d3cc); }
	.sc-sharegf .entry-content .sc-compare tbody tr:first-child { border-top: 0; }
	.sc-sharegf .entry-content .sc-compare tbody td { border: 0; padding: 0; white-space: normal; font-size: 0.875rem; }
	.sc-sharegf .entry-content .sc-compare td.sc-compare__model { grid-column: 1 / -1; margin-bottom: 4px; font-size: 0.9375rem; }
	.sc-sharegf .entry-content .sc-compare td[data-label]:not(.sc-compare__model)::before { content: attr(data-label); margin-right: 0.45em; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-muted, #5c4a50); }
	.sc-sharegf .entry-content .sc-compare td.sc-compare__go { grid-column: 2; grid-row: 2 / span 2; align-self: center; }
}

/* "Which one fits you": situation cards, two columns (one on phones). */
.sc-fit { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 16px 0 32px; }
.sc-fit__card { background: var(--sc-surface, #fff); border: 1px solid var(--sc-line, #e4d3cc); border-radius: 16px; padding: 18px 20px; }
.sc-sharegf .entry-content .sc-fit__title { font-size: 1.125rem; line-height: 1.3; margin: 0 0 8px; }
.sc-fit__look { font-size: 0.9375rem; line-height: 1.55; margin: 0 0 10px; }
.sc-fit__label { font-weight: 700; }
.sc-fit__models { margin: 0; font-size: 0.9375rem; font-weight: 600; line-height: 1.6; }
@media (max-width: 600px) { .sc-fit { grid-template-columns: minmax(0, 1fr); } }

/* Video window: opened by the "▶ Video" button, nothing is loaded before. */
.sc-vmodal { width: min(860px, calc(100vw - 24px)); max-width: none; padding: 0; border: 0; border-radius: 14px; background: #111; color: #fff; }
.sc-vmodal::backdrop { background: rgba(20, 12, 15, 0.78); }
.sc-vmodal video { display: block; width: 100%; height: auto; max-height: calc(100vh - 120px); background: #fff; }
.sc-vmodal__bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 14px; font-size: 0.9375rem; }
.sc-vmodal__close { border: 1px solid rgba(255, 255, 255, 0.5); background: transparent; color: #fff; border-radius: 999px; padding: 0.35em 1em; font: inherit; cursor: pointer; }

@media (max-width: 760px) {
	.sc-cards__grid { grid-template-columns: minmax(0, 1fr); }
	.sc-card__img { width: 80px; height: 80px; }
}
/* Kiiroo cards (1.31.0): small "Pre-order" badge after the name; "(site en anglais)" under the compact table button. */
.sc-card__badge { display: inline-block; vertical-align: 0.15em; margin-left: 4px; padding: 2px 8px; border-radius: 999px; background: var(--sc-soft, #EBD7D2); color: var(--sc-text, #2A1E22); font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; }
.sc-compare td.sc-compare__go .sgf-lang-note { display: block; margin-top: 4px; font-size: 0.75rem; }
/* YouTube (1.35.0): the video window over the page and the light inline block ([sc_video]); 16:9, player loaded on click. */
.sc-vmodal__yt { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #000; }
.sc-vmodal__yt iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sc-yt { margin: 28px 0; }
.sc-yt__play { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; border: 0; border-radius: 10px; overflow: hidden; background: #111; cursor: pointer; }
.sc-yt__play img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: 0.88; border-radius: 0; }
.sc-yt__icon { position: absolute; left: 50%; top: 50%; width: 72px; height: 72px; margin: -36px 0 0 -36px; border-radius: 50%; background: var(--sc-accent, #7A1F33); color: #fff; font-size: 28px; line-height: 72px; text-align: center; }
.sc-yt__play:hover .sc-yt__icon, .sc-yt__play:focus-visible .sc-yt__icon { background: var(--sc-accent-hover, #5A1322); }
.sc-yt.is-on iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 10px; }
.sc-yt figcaption { margin-top: 8px; font-size: 0.8125rem; color: var(--sc-muted, #7A5E60); }
