/* Guide Comparateur-Traiteur — compléments au thème css-2/styles.css */
:root{--ct-orange:#DA5023;--ct-orange-dark:#b8401a;--ct-bleu:#294C5F;--ct-bleu-2:#3d6a82;--ct-creme:#FBF7EE;--ct-vert:#1f8a5b;--ct-gris:#5b6770;--ct-ligne:#e7dfcf;--ct-radius:20px}
.ct-guide .edito{gap:18px}
.ct-guide .edito>h2{margin-top:26px;scroll-margin-top:110px}
.ct-guide .edito>h3{margin-top:8px}
.ct-guide .edito p,.ct-guide .edito li{line-height:1.65}
.ct-guide .edito ul,.ct-guide .edito ol{padding-left:22px}
.ct-guide .edito li{margin:4px 0}
.ct-guide .edito a{color:var(--ct-orange);text-decoration:underline;text-underline-offset:2px}
.ct-guide .edito a.bouton,.ct-guide .edito a.ct-btn{text-decoration:none}
.ct-guide .contour-tableau{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ct-guide .contour-tableau table{width:100%;border-collapse:collapse;min-width:520px}
.ct-guide .contour-tableau th,.ct-guide .contour-tableau td{padding:12px 8px;text-align:left;vertical-align:top;border-bottom:1px solid var(--ct-ligne)}
.ct-guide .contour-tableau thead th,.ct-guide .contour-tableau thead td{color:var(--ct-orange);font-weight:700;border-bottom:2px solid var(--ct-orange)}
.ct-guide .contour-tableau caption{caption-side:top;text-align:left;font-weight:700;color:var(--ct-bleu);padding:4px 4px 10px}
.ct-guide .contour-tableau td strong{color:var(--ct-bleu)}

/* Fil d'Ariane + méta */
.ct-breadcrumb{font-size:14px;margin:0 0 14px;color:var(--ct-gris)}
.ct-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}
.ct-breadcrumb li:not(:last-child)::after{content:"›";margin-left:6px;color:var(--ct-orange)}
.ct-breadcrumb a{color:var(--ct-bleu);text-decoration:none}
.ct-meta{font-size:14px;color:var(--ct-gris);margin-top:14px}
.ct-meta strong{color:var(--ct-bleu)}

/* Encadrés */
.ct-tip,.ct-warn,.ct-key{border-radius:16px;padding:18px 20px;line-height:1.6}
.ct-tip{background:#eef5f8;border-left:5px solid var(--ct-bleu)}
.ct-warn{background:#fff1ec;border-left:5px solid var(--ct-orange)}
.ct-key{background:var(--ct-bleu);color:#fff}
.ct-key strong{color:#ffd9c9}
.ct-key a{color:#fff!important}

/* CTA */
.ct-cta{background:linear-gradient(135deg,var(--ct-orange) 0%,#e8703f 100%);color:#fff;border-radius:var(--ct-radius);padding:28px 28px 24px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;box-shadow:0 10px 30px rgba(218,80,35,.22)}
.ct-cta .ct-cta-titre{font-size:24px;font-weight:700;line-height:1.25;margin:0 0 8px}
.ct-cta p{margin:0 0 10px;color:#fff}
.ct-cta ul{list-style:none;padding:0!important;margin:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:15px}
.ct-cta li::before{content:"✓ ";font-weight:700}
.ct-btn{display:inline-block;background:#fff;color:var(--ct-orange)!important;font-weight:800;font-size:18px;padding:15px 26px;border-radius:100px;text-decoration:none!important;white-space:nowrap;transition:transform .15s,background .15s}
.ct-btn:hover{transform:translateY(-2px);background:var(--ct-bleu);color:#fff!important}
.ct-btn.ct-btn-orange{background:var(--ct-orange);color:#fff!important}
.ct-btn.ct-btn-orange:hover{background:var(--ct-bleu)}
.ct-cta-pro{background:linear-gradient(135deg,var(--ct-bleu) 0%,var(--ct-bleu-2) 100%);box-shadow:0 10px 30px rgba(41,76,95,.25)}
.ct-cta-pro .ct-btn{color:var(--ct-bleu)!important}
.ct-cta-pro .ct-tel{font-weight:800;color:#fff;font-size:18px}
@media(max-width:767px){.ct-cta{grid-template-columns:1fr;padding:22px}.ct-btn{white-space:normal;text-align:center;width:100%}}

/* Avis */
.ct-avis{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--ct-ligne);border-radius:var(--ct-radius);padding:16px 20px;flex-wrap:wrap}
.ct-avis .ct-note{font-size:34px;font-weight:800;color:var(--ct-bleu);line-height:1}
.ct-avis .ct-note small{font-size:16px;color:var(--ct-gris)}
.ct-stars{color:#f5a623;font-size:22px;letter-spacing:2px}
.ct-avis p{margin:0;font-size:15px}
.ct-avis a{font-weight:700}

/* Figures */
.ct-figure{margin:0}
.ct-figure img{width:100%;height:auto;border-radius:var(--ct-radius);display:block;background:var(--ct-creme)}
.ct-figure figcaption{font-size:14px;color:var(--ct-gris);margin-top:8px;text-align:center}

/* Graphique barres */
.ct-chart{margin:0;background:#fff;border:1px solid var(--ct-ligne);border-radius:var(--ct-radius);padding:18px}
.ct-chart h3,.ct-chart .ct-chart-titre{font-size:18px;margin:0 0 12px;color:var(--ct-bleu);font-weight:700}
.ct-chart svg{width:100%;height:auto;display:block}
.ct-chart .ct-chart-note{font-size:13px;color:var(--ct-gris);margin:8px 0 0}

/* Chiffres clés */
.ct-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.ct-stat{background:var(--ct-creme);border-radius:16px;padding:16px;text-align:center}
.ct-stat b{display:block;font-size:26px;color:var(--ct-orange);line-height:1.1}
.ct-stat span{font-size:14px;color:var(--ct-bleu)}

/* Cartes liens */
.ct-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;list-style:none;padding:0!important}
.ct-cards li{margin:0!important}
.ct-cards a{display:block;height:100%;background:#fff;border:1px solid var(--ct-ligne);border-radius:16px;padding:14px 16px;text-decoration:none!important;color:var(--ct-bleu)!important;font-weight:600;transition:border-color .15s,transform .15s}
.ct-cards a:hover{border-color:var(--ct-orange);transform:translateY(-2px)}
.ct-cards a small{display:block;font-weight:400;color:var(--ct-gris);margin-top:4px;font-size:13px}
.ct-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0!important}
.ct-tags li{margin:0!important}
.ct-tags a{display:inline-block;background:var(--ct-creme);border-radius:100px;padding:7px 14px;font-size:14px;text-decoration:none!important;color:var(--ct-bleu)!important}
.ct-tags a:hover{background:var(--ct-orange);color:#fff!important}

/* FAQ */
.ct-faq details{background:#fff;border:1px solid var(--ct-ligne);border-radius:14px;padding:14px 18px;margin-bottom:10px}
.ct-faq summary{cursor:pointer;font-weight:700;color:var(--ct-bleu);list-style:none;position:relative;padding-right:28px}
.ct-faq summary::-webkit-details-marker{display:none}
.ct-faq summary::after{content:"+";position:absolute;right:0;top:-2px;font-size:22px;color:var(--ct-orange)}
.ct-faq details[open] summary::after{content:"–"}
.ct-faq details p{margin:10px 0 0}

/* Étapes */
.ct-steps{counter-reset:s;list-style:none;padding:0!important;display:grid;gap:12px}
.ct-steps li{counter-increment:s;background:#fff;border:1px solid var(--ct-ligne);border-radius:16px;padding:14px 16px 14px 62px;position:relative;margin:0!important}
.ct-steps li::before{content:counter(s);position:absolute;left:16px;top:12px;width:32px;height:32px;border-radius:50%;background:var(--ct-orange);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}

/* Sidebar */
.ct-side-box{background:#fff;border-radius:var(--ct-radius);padding:20px;margin-top:16px}
.ct-side-box h3{font-size:18px;margin:0 0 10px;color:var(--ct-bleu)}
.ct-side-box ul{list-style:none;padding:0;margin:0}
.ct-side-box li{margin:6px 0}
.ct-side-box a{color:var(--ct-bleu);font-size:15px}
.ct-guide .sommaire ul li a{font-size:17px;line-height:1.35}
.ct-guide .sommaire ul li{margin-bottom:8px}

/* Outils */
.ct-tool{background:#fff;border:2px solid var(--ct-bleu);border-radius:var(--ct-radius);padding:22px;box-shadow:0 8px 24px rgba(41,76,95,.08)}
.ct-tool .ct-tool-titre{font-size:22px;font-weight:700;color:var(--ct-bleu);margin:0 0 4px}
.ct-tool .ct-tool-sous{color:var(--ct-gris);font-size:15px;margin:0 0 16px}
.ct-tool .ct-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.ct-tool label{display:block;font-weight:600;font-size:15px;margin-bottom:6px;color:var(--ct-bleu)}
.ct-tool input[type=number],.ct-tool input[type=text],.ct-tool input[type=date],.ct-tool select,.ct-tool textarea{width:100%;padding:11px 12px;border:1px solid #cfd8dc;border-radius:12px;font:inherit;font-size:16px;background:#fff;box-sizing:border-box}
.ct-tool textarea{min-height:90px}
.ct-tool .ct-check{display:flex;align-items:flex-start;gap:8px;font-weight:400;color:#222;margin:6px 0}
.ct-tool .ct-check input{margin-top:4px;width:18px;height:18px;accent-color:var(--ct-orange)}
.ct-tool button{background:var(--ct-orange);color:#fff;border:0;border-radius:100px;padding:13px 22px;font:inherit;font-weight:700;font-size:16px;cursor:pointer}
.ct-tool button.ct-sec{background:var(--ct-creme);color:var(--ct-bleu)}
.ct-tool button:hover{background:var(--ct-bleu);color:#fff}
.ct-tool .ct-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.ct-res{margin-top:18px;background:var(--ct-creme);border-radius:16px;padding:18px}
.ct-res[hidden]{display:none}
.ct-res .ct-big{font-size:30px;font-weight:800;color:var(--ct-orange);line-height:1.1}
.ct-res table{width:100%;border-collapse:collapse;margin-top:8px}
.ct-res td,.ct-res th{padding:8px 6px;border-bottom:1px solid var(--ct-ligne);text-align:left}
.ct-res .ct-cta-mini{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ct-res .ct-cta-mini span{font-size:14px;color:var(--ct-gris)}
.ct-bar{height:12px;background:#e9e1d0;border-radius:10px;overflow:hidden;margin-top:6px}
.ct-bar i{display:block;height:100%;background:var(--ct-orange);border-radius:10px;transition:width .3s}
.ct-progress-txt{font-weight:700;color:var(--ct-bleu)}
.ct-phase{margin-top:16px}
.ct-phase h4{margin:0 0 6px;color:var(--ct-orange);font-size:17px}
.ct-quiz-q{font-weight:700;color:var(--ct-bleu);margin:14px 0 8px}
.ct-quiz-opts{display:grid;gap:8px}
.ct-quiz-opts label{display:flex;gap:10px;align-items:center;background:var(--ct-creme);border-radius:12px;padding:10px 12px;font-weight:500;color:#222;cursor:pointer}
.ct-quiz-opts input{accent-color:var(--ct-orange)}
.ct-devis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.ct-devis-col{background:var(--ct-creme);border-radius:16px;padding:14px}
.ct-devis-col h4{margin:0 0 8px;color:var(--ct-bleu)}
.ct-best{outline:3px solid var(--ct-vert)}
.ct-pill{display:inline-block;background:var(--ct-vert);color:#fff;border-radius:100px;padding:3px 10px;font-size:13px;font-weight:700}
.ct-tool pre{white-space:pre-wrap;background:#fff;border:1px dashed #cbd5e1;border-radius:12px;padding:14px;font-size:14px;max-height:420px;overflow:auto}
.ct-noscript{font-size:14px;color:var(--ct-gris)}

/* Hubs */
.ct-hub-intro{font-size:18px}
.ct-section-titre{display:flex;align-items:center;gap:10px}
.ct-sommaire-mobile{display:none}
@media(max-width:991px){.ct-guide .sommaire{position:static}.ct-side-box{display:none}}
@media print{.bloc-nav,header .logo-nav,.sommaire,.ct-cta,.ct-cta-pro,footer,.ct-actions{display:none!important}.ct-tool{border:0;box-shadow:none}}
