:root{--color-brand:#6d28d9;--color-cta:#22c55e;--text-muted:#666;--border:#ddd}
html,body{overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
img,video,iframe,svg,canvas{max-width:100%;height:auto}
body{font-size:16px;line-height:1.6;color:#222;margin:0}
.hero{background-image:url('/images/hero-affaires-services.jpg');background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#2a1452;position:relative;padding:88px 24px 76px;text-align:center;color:#fff}
.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.55)}
.hero-content{position:relative;z-index:2;max-width:860px;margin:0 auto}
.hero h1{color:#fff;font-size:42px;font-weight:700;line-height:1.6;margin:0 0 18px}
.hero-subtitle{color:#fff;font-size:18px;line-height:1.6;margin:0 auto 28px;max-width:720px}
.btn-hero{display:inline-block;background-color:var(--color-cta);color:#111;font-weight:700;line-height:1.6;padding:13px 30px;border-radius:6px;text-decoration:none;transition:background-color 0.2s}
.btn-hero:hover{background-color:#1da851;color:#111}
.btn-hero:focus{outline:3px solid #fff;outline-offset:3px}
.wrap{width:90%;max-width:1200px;margin:0 auto}
.articles-section{background-color:#fff;color:#222;padding:56px 0 48px}
.articles-section h2{color:var(--color-brand);font-size:32px;font-weight:700;line-height:1.6;margin:0 0 12px}
.section-intro{font-size:17px;line-height:1.6;color:#333;margin:0 0 10px;max-width:820px}
.count-line{font-size:15px;line-height:1.6;color:var(--text-muted);margin:0 0 26px}
.articles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.article-card{background-color:#fff;border:1px solid var(--border);border-radius:8px;overflow:hidden;min-width:0;transition:box-shadow 0.2s}
.article-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12)}
.article-card img{display:block;width:100%;height:auto}
.article-card-body{padding:20px}
.article-date{font-size:13px;line-height:1.6;color:#777;margin:0 0 8px}
.article-card h3{font-size:20px;font-weight:700;line-height:1.6;margin:0 0 10px}
.article-card h3 a{color:var(--color-brand);text-decoration:none}
.article-card h3 a:hover{text-decoration:underline}
.article-card h3 a:focus{outline:3px solid var(--color-brand);outline-offset:2px}
.article-card p{font-size:16px;line-height:1.6;color:#444;margin:0}
.empty-state{border:1px solid var(--border);border-radius:8px;padding:28px;background-color:#f8f8f8}
.empty-state p{line-height:1.6;margin:0;color:#333}
.editorial-section{background-color:var(--color-brand);color:#fff;padding:56px 0}
.editorial-section h2,.editorial-section p,.editorial-section span{color:#fff}
.editorial-section h2{font-size:30px;font-weight:700;line-height:1.6;margin:0 0 16px}
.editorial-section p{font-size:16px;line-height:1.6;margin:0 0 16px}
.editorial-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.editorial-main{min-width:0;overflow:hidden}
.editorial-side{min-width:0;overflow:hidden}
.editorial-side img{display:block;width:100%;border-radius:12px}
.image-caption{font-size:14px;line-height:1.6;color:#fff;margin:12px 0 0}
.calc-section{background-color:#fff;color:#222;padding:56px 0}
.calc-section h2{color:var(--color-brand);font-size:30px;font-weight:700;line-height:1.6;margin:0 0 14px}
.calc-section p{font-size:16px;line-height:1.6;color:#333;margin:0 0 16px;max-width:900px}
.second-title{margin-top:44px}
.data-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;margin:8px 0 12px}
.data-table th{background-color:var(--color-brand);color:#fff;font-weight:700;text-align:left;padding:12px 14px;line-height:1.6}
.data-table td{padding:11px 14px;border-bottom:1px solid var(--border);color:#333;line-height:1.6;vertical-align:top}
.data-table tr:nth-child(even) td{background-color:#f4f0fa}
.table-note{font-size:14px;line-height:1.6;color:#777}
.compare-section{background-color:#f4f0fa;color:#222;padding:56px 0 60px}
.compare-section h2{color:var(--color-brand);font-size:30px;font-weight:700;line-height:1.6;margin:0 0 14px}
.compare-section p{font-size:16px;line-height:1.6;color:#333;margin:0 0 16px;max-width:900px}
.faq-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:8px}
.faq-item{background-color:#fff;border:1px solid var(--border);border-radius:6px;padding:22px;min-width:0}
.faq-item h3{color:var(--color-brand);font-size:19px;font-weight:700;line-height:1.6;margin:0 0 10px}
.faq-item p{font-size:16px;line-height:1.6;color:#444;margin:0}
.disclaimer-line{font-size:13px;line-height:1.6;color:#777;margin-top:28px}
a:focus{outline:3px solid var(--color-brand);outline-offset:2px}
@media (max-width:768px){
.hero{padding:56px 16px 48px}
.hero h1{font-size:27px}
.hero-subtitle{font-size:16px}
.articles-section,.editorial-section,.calc-section,.compare-section{padding:38px 0}
.articles-section h2,.editorial-section h2,.calc-section h2,.compare-section h2{font-size:25px}
.articles-grid{grid-template-columns:1fr}
.editorial-layout{grid-template-columns:1fr;gap:20px}
.faq-list{grid-template-columns:1fr}
.btn-hero{width:100%;text-align:center}
.data-table{font-size:14px}
.wrap{width:92%}
}
@media (max-width:480px){
.hero h1{font-size:24px}
.article-card-body{padding:16px}
.faq-item{padding:18px}
.data-table th,.data-table td{padding:9px 10px}
}