/* La Maison des Assurés — premium editorial layer */
:root{color-scheme:light;--lma-navy:#102a4c;--lma-red:#c92f3b;--lma-ink:#17263a;--lma-muted:#64748b;--lma-line:#e6ebf1;--lma-paper:#f7f9fc;--lma-shadow:0 18px 50px rgba(16,42,76,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--lma-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-underline-offset:3px}img{max-width:100%}.container-custom{width:min(100% - 40px,1240px);margin-inline:auto}.font-display,h1,h2,h3,h4{font-family:Outfit,Inter,system-ui,sans-serif;letter-spacing:-.025em}.text-navy{color:var(--lma-navy)}.bg-navy{background-color:var(--lma-navy)}.text-red{color:var(--lma-red)}.bg-red{background-color:var(--lma-red)}.modern-shadow{box-shadow:0 8px 28px rgba(16,42,76,.07)}.modern-shadow-lg{box-shadow:var(--lma-shadow)}.skip-link{position:absolute;left:12px;top:-80px;z-index:1000;padding:12px 16px;background:var(--lma-navy);color:#fff;border-radius:10px}.skip-link:focus{top:12px}#navbar{background:rgba(255,255,255,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,42,76,.08);box-shadow:0 4px 24px rgba(16,42,76,.04)}#navbar a{text-decoration:none}main{min-height:60vh}article header h1{letter-spacing:-.045em;text-wrap:balance}article header>p{ text-wrap:pretty}article .prose{font-size:1.075rem;line-height:1.85;color:#46566b}article .prose h2{margin-top:2.8em;margin-bottom:.8em;font-size:clamp(1.6rem,3vw,2.15rem);line-height:1.18;color:var(--lma-navy);letter-spacing:-.035em}article .prose h3{margin-top:2em;font-size:1.35rem;line-height:1.3;color:var(--lma-navy)}article .prose p{margin-block:1.25em}article .prose strong{color:#20334c}article .prose a{color:#a51f30;text-decoration-thickness:1px;text-underline-offset:3px}article .prose blockquote{border-left:4px solid var(--lma-red);background:#f7f9fc;border-radius:0 16px 16px 0;padding:1.2rem 1.4rem;color:#42536a}article .prose img{border-radius:20px}article .prose table{width:100%;border-collapse:collapse;font-size:.95rem;display:block;overflow-x:auto}article .prose th{background:var(--lma-navy);color:#fff;text-align:left}article .prose th,article .prose td{padding:12px 14px;border:1px solid var(--lma-line)}article .prose li{padding-left:.2rem;margin:.35rem 0}article aside[aria-label="Informations sur l'auteur"]{border-color:var(--lma-line);background:linear-gradient(135deg,#f8fafc,#fff)}article aside a{font-weight:700;color:var(--lma-navy)}article details{box-shadow:0 8px 28px rgba(16,42,76,.04)}article summary{list-style:none}article summary::-webkit-details-marker{display:none}article summary:after{content:'+';float:right;font-size:1.3rem;color:var(--lma-red)}article details[open] summary:after{content:'−'}footer a:hover{color:var(--lma-red)}:focus-visible{outline:3px solid #e1a3aa;outline-offset:3px}::selection{background:#dce7f4;color:var(--lma-navy)}@media(min-width:1024px){article .prose{font-size:1.1rem}article .prose h2{scroll-margin-top:100px}}@media(max-width:640px){.container-custom{width:min(100% - 28px,1240px)}article header h1{font-size:clamp(2rem,9vw,3.2rem);line-height:1.08}article .prose{font-size:1rem;line-height:1.8}article .prose h2{margin-top:2.2em}article .rounded-\[3rem\]{border-radius:1.25rem}#navbar{padding-top:.6rem;padding-bottom:.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* Premium article CTA: prevent narrow copy columns and enforce accessible contrast. */
.lma-premium-cta{isolation:isolate;position:relative;overflow:hidden;background:linear-gradient(125deg,#102a4c 0%,#173b67 100%);border:1px solid rgba(255,255,255,.10);box-shadow:0 24px 60px rgba(16,42,76,.16)}
.lma-premium-cta:before{content:"";position:absolute;inset:auto -8% -55% 42%;height:95%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.09),transparent 68%);pointer-events:none}
.lma-premium-cta>.relative{position:relative;z-index:1;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:1.5rem!important;text-align:left!important}
.lma-premium-cta .flex-grow{width:100%;min-width:0;flex:0 1 auto}
.lma-premium-cta h3{max-width:820px;color:#fff!important;font-size:clamp(1.55rem,2.6vw,2.25rem)!important;line-height:1.16!important;letter-spacing:-.035em!important;text-wrap:balance;margin-bottom:.8rem!important}
.lma-premium-cta p{max-width:650px;color:#d6e1ef!important;font-size:1.025rem!important;line-height:1.65!important}
.lma-premium-cta .flex-shrink-0{display:flex!important;flex-wrap:wrap;gap:.85rem!important;align-self:flex-start;max-width:100%}
.lma-premium-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:.95rem 1.4rem!important;border-radius:14px!important;font-size:.98rem!important;font-weight:750!important;line-height:1.25!important;text-decoration:none!important;white-space:normal!important;text-align:center;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease;color:#fff!important}
.lma-premium-cta a.bg-red{background:linear-gradient(135deg,#d83443 0%,#bd2434 100%)!important;border:1px solid #f16a75!important;box-shadow:0 10px 24px rgba(197,39,55,.27)!important}
.lma-premium-cta a.bg-red:hover{background:linear-gradient(135deg,#e74755 0%,#cc2c3c 100%)!important;box-shadow:0 14px 30px rgba(197,39,55,.34)!important;transform:translateY(-2px)}
.lma-premium-cta a:not(.bg-red){background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.42)!important;color:#fff!important}
.lma-premium-cta a:not(.bg-red):hover{background:rgba(255,255,255,.16)!important;border-color:#fff!important;transform:translateY(-2px)}
.lma-premium-cta a:focus-visible{outline:3px solid #fff!important;outline-offset:4px}
@media(max-width:640px){.lma-premium-cta{padding:1.5rem!important;border-radius:1.5rem!important}.lma-premium-cta .flex-shrink-0{width:100%;display:grid!important;grid-template-columns:1fr}.lma-premium-cta a{width:100%;min-height:52px}.lma-premium-cta h3{font-size:1.65rem!important}}
@media(prefers-reduced-motion:reduce){.lma-premium-cta a{transition:none!important}}

/* === Contrast fixes: CTA "Obtenir un devis" + blog card category badges === */
a.btn-primary,a.btn-primary:visited{color:#fff!important;background-color:#102a4c;text-decoration:none}
a.btn-primary:hover,a.btn-primary:focus-visible{color:#fff!important;background-color:#c92f3b}
a.btn-secondary,a.btn-secondary:visited,a.btn-secondary:hover{color:#102a4c!important;text-decoration:none}
a.btn-outline{text-decoration:none}
.glass.text-white{background:rgba(16,42,76,.88)!important;color:#fff!important;border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 14px rgba(16,42,76,.25);text-shadow:none}
.glass.text-white.subheading-caps{color:#fff!important;margin-bottom:0;display:inline-block}
h3.text-navy,article h3.text-navy{color:#102a4c}

/* === Global text contrast upgrade (WCAG AA on white/light backgrounds) === */
.text-gray-400:not([class*="hover:"]):not(.text-white){color:#5b6b80}
.text-gray-500{color:#46566b}
.text-gray-500.opacity-80,.opacity-80.text-gray-500{opacity:1}
/* Devis CTA variants */
a.bg-red.text-white,a.bg-navy.text-white{color:#fff!important;text-decoration:none}
a.btn-primary{text-shadow:none}
