/* CMS 43 only: editorial guide using the Europ-Camera theme. */
#cms #ec27-guide43 { --guide-red:#f80823; --guide-ink:#24282d; --guide-line:#dce0e5; max-width:1240px; margin:0 auto 28px; color:var(--guide-ink); font-family:inherit; font-size:15px; line-height:1.65; }
#ec27-guide43 *, #ec27-guide43 *::before, #ec27-guide43 *::after { box-sizing:border-box; }
#cms #ec27-guide43 h1, #cms #ec27-guide43 h2 { padding:0; border:0; text-transform:none; background:none; color:inherit; }
#ec27-guide43 .ec27-guide-hero { display:grid; grid-template-columns:1.3fr 1fr; gap:36px; padding:34px; border:1px solid var(--guide-line); border-radius:12px; background:#fff; }
#ec27-guide43 .ec27-guide-intro { align-self:center; min-width:0; }
#ec27-guide43 .ec27-guide-eyebrow { display:block; margin-bottom:12px; color:var(--guide-red); font-size:11px; font-weight:800; letter-spacing:.09em; }
#cms #ec27-guide43 h1 { margin:0 0 18px; font-size:clamp(30px,3vw,44px); font-weight:800; line-height:1.15; letter-spacing:-.025em; }
#ec27-guide43 h1 span { display:block; color:var(--guide-red); }
#ec27-guide43 .ec27-guide-intro p { max-width:570px; margin:0; color:#646d77; font-size:16px; line-height:1.7; }
#ec27-guide43 .ec27-guide-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-top:24px; }
#ec27-guide43 .ec27-guide-button { display:inline-flex; justify-content:center; align-items:center; gap:12px; min-height:44px; padding:11px 18px; border:1px solid var(--guide-red); border-radius:7px; background:var(--guide-red); color:#fff; font-size:14px; font-weight:700; line-height:1.5; text-decoration:none; }
#ec27-guide43 .ec27-guide-button:hover { background:#d90019; border-color:#d90019; color:#fff; }
#ec27-guide43 .ec27-guide-text-link { color:var(--guide-ink); font-size:13px; font-weight:700; text-decoration:none; }
#ec27-guide43 .ec27-guide-text-link i { margin-left:6px; color:var(--guide-red); }
#ec27-guide43 .ec27-guide-hero-card { display:flex; flex-direction:column; justify-content:center; align-items:center; min-width:0; padding:20px; border-radius:9px; background:#111416; color:#fff; text-align:center; }
#ec27-guide43 .ec27-guide-hero-card > svg { display:block; width:220px; max-width:100%; height:132px; margin-bottom:10px; }
#ec27-guide43 .ec27-guide-hero-card > strong { font-size:19px; line-height:1.4; }
#ec27-guide43 .ec27-guide-hero-card > span { margin-top:5px; color:#c5cbd2; font-size:12px; }
#ec27-guide43 .ec27-guide-tags { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin-top:17px; }
#ec27-guide43 .ec27-guide-tags span { padding:4px 9px; border:1px solid #3a3e43; border-radius:5px; font-size:10px; color:#f0f2f5; }
#ec27-guide43 .ec27-guide-shortcuts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:18px 0 30px; }
#ec27-guide43 .ec27-guide-shortcuts > a { display:flex; align-items:center; gap:11px; min-width:0; padding:16px 12px; border:1px solid var(--guide-line); border-radius:8px; background:#fff; color:var(--guide-ink); text-decoration:none; }
#ec27-guide43 .ec27-guide-shortcuts > a:hover { background:#fff1f3; border-color:#f7bdc6; }
#ec27-guide43 .ec27-guide-shortcut-icon { display:flex; align-items:center; justify-content:center; flex:0 0 38px; width:38px; height:38px; border-radius:50%; background:#fff0f2; color:var(--guide-red); }
#ec27-guide43 .ec27-guide-shortcut-icon svg { width:23px; height:23px; }
#ec27-guide43 .ec27-guide-shortcuts strong { display:block; font-size:13px; line-height:1.4; }
#ec27-guide43 .ec27-guide-shortcuts small { display:block; margin-top:4px; font-size:10px; line-height:1.4; color:#727b85; }
#ec27-guide43 .ec27-guide-shortcuts i { margin-left:auto; color:var(--guide-red); font-size:10px; }
#ec27-guide43 .ec27-guide-layout { display:grid; grid-template-columns:275px minmax(0,1fr); align-items:start; gap:26px; }
#ec27-guide43 .ec27-guide-toc { position:sticky; top:calc(var(--ec27-sticky-header-height,118px) + 16px); padding:18px 10px 12px; border:1px solid var(--guide-line); border-radius:8px; background:#fff; }
#ec27-guide43 .ec27-guide-toc-title { display:block; padding:0 10px 14px; font-size:15px; }
#ec27-guide43 .ec27-guide-toc .lien_faq { max-height:65vh; margin:0; padding:0; border:0; background:transparent; overflow-y:auto; scrollbar-width:thin; }
#ec27-guide43 .ec27-guide-toc p { margin:0; padding:0; }
#ec27-guide43 .ec27-guide-toc a { display:block; padding:9px 10px; border-radius:5px; color:#565f68; font-size:12px; line-height:1.5; text-decoration:none; }
#ec27-guide43 .ec27-guide-toc a:hover, #ec27-guide43 .ec27-guide-toc a:focus-visible { background:#fff0f2; color:#df0021; }
#ec27-guide43 .ec27-guide-toc [style] { font-size:inherit !important; }
#ec27-guide43 .ec27-guide-answers { min-width:0; }
#cms #ec27-guide43 .ec27-guide-faq-title { margin:0 0 16px; font-size:24px; font-weight:800; line-height:1.3; }
#ec27-guide43 .ec27-guide-tools { display:flex; align-items:center; gap:12px; margin-bottom:8px; }
#ec27-guide43 .ec27-guide-search { display:block; flex:1; min-width:0; margin:0; }
#ec27-guide43 .ec27-guide-search input { width:100%; min-width:0; height:44px; padding:10px 13px; border:1px solid var(--guide-line); border-radius:7px; background:#fff; font-family:inherit; font-size:14px; color:var(--guide-ink); }
#ec27-guide43 .ec27-guide-expand { flex-shrink:0; min-height:44px; padding:8px 13px; border:1px solid #f5c9d1; border-radius:7px; background:#fff0f2; color:#df0021; font-family:inherit; font-size:12px; font-weight:700; }
#ec27-guide43 .ec27-guide-count { margin:0 0 14px; color:#737c86; font-size:12px; }
#ec27-guide43 .ec27-guide-question { margin:0 0 10px; border:1px solid var(--guide-line); border-radius:8px; background:#fff; overflow:hidden; }
#ec27-guide43 .ec27-guide-question > summary { display:flex; align-items:center; gap:12px; padding:17px 18px; cursor:pointer; list-style:none; }
#ec27-guide43 .ec27-guide-question > summary::-webkit-details-marker { display:none; }
#ec27-guide43 .ec27-guide-question > summary::after { content:'+'; flex:0 0 20px; margin-left:auto; font-size:24px; line-height:1; color:var(--guide-red); text-align:center; }
#ec27-guide43 .ec27-guide-question[open] > summary { border-bottom:1px solid #eceef1; background:#fff8f9; }
#ec27-guide43 .ec27-guide-question[open] > summary::after { content:'−'; }
#cms #ec27-guide43 .ec27-guide-question h2 { min-width:0; margin:0; font-size:16px; font-weight:700; line-height:1.5; scroll-margin-top:calc(var(--ec27-sticky-header-height,118px) + 24px); }
#ec27-guide43 .ec27-guide-number { flex:0 0 30px; width:30px; height:30px; border-radius:6px; background:#fff0f2; color:var(--guide-red); font-size:11px; font-weight:800; line-height:30px; text-align:center; }
#ec27-guide43 .ec27-guide-answer { padding:20px 22px; color:#535c66; font-size:14px; line-height:1.85; overflow-wrap:anywhere; }
#ec27-guide43 .ec27-guide-answer p { margin:0 0 15px; }
#ec27-guide43 .ec27-guide-answer > :last-child { margin-bottom:0; }
#ec27-guide43 .ec27-guide-answer p:empty { display:none; }
#ec27-guide43 .ec27-guide-answer [style] { font-size:inherit !important; font-family:inherit !important; }
#ec27-guide43 .ec27-guide-answer ul { margin:0 0 16px; padding-left:22px; list-style:disc; }
#ec27-guide43 .ec27-guide-answer li { margin-bottom:7px; }
#ec27-guide43 .ec27-guide-answer li::marker { color:var(--guide-red); }
#ec27-guide43 .ec27-guide-answer a { color:#df0021; text-decoration:underline; text-underline-offset:3px; }
#ec27-guide43 .ec27-guide-answer a[href*="cnil.fr"], #ec27-guide43 .ec27-guide-answer a[href*="service-public.fr"] { display:inline-block; padding:7px 10px; margin:4px 0; border:1px solid #f5d0d7; border-radius:5px; background:#fff2f4; font-size:12px; text-decoration:none; }
#ec27-guide43 .ec27-guide-empty { padding:20px; border:1px solid var(--guide-line); border-radius:8px; background:#fff; color:#646d77; }
#ec27-guide43 [hidden] { display:none !important; }
#ec27-guide43 .ec27-guide-assistance { display:flex; align-items:center; gap:24px; margin-top:30px; padding:28px; border-radius:10px; background:#111416; color:#fff; }
#ec27-guide43 .ec27-guide-assistance-icon { display:flex; align-items:center; justify-content:center; flex:0 0 64px; width:64px; height:64px; border-radius:50%; background:#292326; color:#ff334d; }
#ec27-guide43 .ec27-guide-assistance-icon svg { width:36px; height:36px; }
#ec27-guide43 .ec27-guide-assistance > div { flex:1; min-width:0; }
#cms #ec27-guide43 .ec27-guide-assistance h2 { margin:0 0 8px; font-size:24px; font-weight:700; line-height:1.3; }
#ec27-guide43 .ec27-guide-assistance .ec27-guide-eyebrow { margin-bottom:8px; color:#ff5368; }
#ec27-guide43 .ec27-guide-assistance p { margin:0; color:#c5cbd2; font-size:13px; }
#ec27-guide43 .ec27-guide-assistance .ec27-guide-button { flex-shrink:0; white-space:nowrap; }
#ec27-guide43 :is(a,button,input,summary):focus-visible { outline:2px solid #f80823; outline-offset:3px; }
/* The BO-managed article remains readable when JavaScript is unavailable. */
#ec27-guide43 .ec27-guide-source .lien_faq { padding:20px; border:1px solid var(--guide-line); border-radius:8px; background:#fff; }
#ec27-guide43 .ec27-guide-source .box_cms { margin:24px 0 12px; padding:16px; border:1px solid var(--guide-line); border-left:3px solid var(--guide-red); border-radius:7px; background:#fff; }
#cms #ec27-guide43 .ec27-guide-source h2 { margin:0; font-size:20px; line-height:1.5; }
@media(max-width:1100px) {
 #ec27-guide43 .ec27-guide-hero { gap:24px; padding:24px; }
 #ec27-guide43 .ec27-guide-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #ec27-guide43 .ec27-guide-layout { grid-template-columns:240px minmax(0,1fr); gap:18px; }
 #ec27-guide43 .ec27-guide-assistance { flex-wrap:wrap; }
}
@media(max-width:767px) {
 #cms #ec27-guide43 { margin-top:0; }
 #ec27-guide43 .ec27-guide-hero { grid-template-columns:minmax(0,1fr); gap:22px; padding:22px 18px; }
 #cms #ec27-guide43 h1 { font-size:clamp(24px,7.2vw,32px); overflow-wrap:anywhere; }
 #ec27-guide43 .ec27-guide-intro p { font-size:14px; }
 #ec27-guide43 .ec27-guide-actions { gap:14px; margin-top:20px; }
 #ec27-guide43 .ec27-guide-hero-card { padding:20px 15px; }
 #ec27-guide43 .ec27-guide-hero-card > svg { width:170px; height:105px; }
 #ec27-guide43 .ec27-guide-shortcuts { gap:8px; margin:14px 0 24px; }
 #ec27-guide43 .ec27-guide-shortcuts > a { gap:8px; padding:12px 9px; }
 #ec27-guide43 .ec27-guide-shortcut-icon { flex-basis:30px; width:30px; height:30px; }
 #ec27-guide43 .ec27-guide-shortcuts strong { font-size:12px; }
 #ec27-guide43 .ec27-guide-shortcuts small { font-size:10px; }
 #ec27-guide43 .ec27-guide-shortcuts i { display:none; }
 #ec27-guide43 .ec27-guide-layout { display:block; }
 #ec27-guide43 .ec27-guide-toc { display:none; }
 #cms #ec27-guide43 .ec27-guide-faq-title { font-size:22px; }
 #ec27-guide43 .ec27-guide-tools { gap:8px; }
 #ec27-guide43 .ec27-guide-search input { font-size:16px; padding:10px; }
 #ec27-guide43 .ec27-guide-expand { padding:8px; font-size:11px; }
 #ec27-guide43 .ec27-guide-question > summary { padding:14px 12px; gap:9px; }
 #cms #ec27-guide43 .ec27-guide-question h2 { font-size:14px; line-height:1.6; }
 #ec27-guide43 .ec27-guide-number { flex-basis:26px; width:26px; height:26px; line-height:26px; }
 #ec27-guide43 .ec27-guide-answer { padding:16px; font-size:14px; }
 #ec27-guide43 .ec27-guide-assistance { padding:22px 18px; gap:16px; margin-top:22px; }
 #ec27-guide43 .ec27-guide-assistance-icon { flex-basis:48px; width:48px; height:48px; }
 #ec27-guide43 .ec27-guide-assistance > div { flex:1 1 calc(100% - 70px); }
 #cms #ec27-guide43 .ec27-guide-assistance h2 { font-size:20px; }
 #ec27-guide43 .ec27-guide-assistance .ec27-guide-button { width:100%; }
}

@media(max-width:767px) {
 #ec27-guide43 .ec27-guide-shortcuts > a > span:not(.ec27-guide-shortcut-icon) { min-width:0; overflow-wrap:anywhere; }
}

@media(max-width:420px) {
 #ec27-guide43 .ec27-guide-shortcuts { grid-template-columns:minmax(0,1fr); }
 #ec27-guide43 .ec27-guide-shortcuts > a { padding:12px; }
 #ec27-guide43 .ec27-guide-shortcuts strong { font-size:13px; }
 #ec27-guide43 .ec27-guide-shortcuts small { font-size:11px; }
 #ec27-guide43 .ec27-guide-shortcuts i { display:block; }
}
