/* Vigifraude 2026 — reprise des proportions et couleurs de la matrice Pacta */
:root{--navy:#071426;--navy2:#103756;--blue:#1164a1;--bluehover:#0a4778;--ink:#1c2b3c;--muted:#526478;--paper:#fff;--alt:#f1f5f9;--line:#dbe3ec;--accent:#efad61;--radius:14px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;color:var(--ink);background:#fff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",Arial,sans-serif;line-height:1.65}
img{max-width:100%}a{color:#07508c;text-decoration-thickness:1.5px;text-underline-offset:.19em}
a:hover{color:#063657}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e5a223;outline-offset:4px}
.container{width:min(100% - 48px,1160px);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;z-index:300;top:-100px;left:12px;background:#fff;color:#071426;padding:10px 16px;border-radius:8px}
.skip-link:focus{top:12px}
/* En-tête original Pacta : deux rangées, contact, boutons */
.site-header{position:relative;z-index:50;background:#fff;box-shadow:0 3px 20px rgba(7,20,38,.08)}
.top-header{background:var(--navy);color:#fff}.top-header-inner{display:flex;align-items:center;gap:25px;min-height:91px}
.logo{display:inline-flex;flex-direction:column;align-items:flex-start;flex-shrink:0;color:#fff;text-decoration:none;line-height:1.1}
.logo:hover{color:#fff}.brand-name{letter-spacing:.045em;font-weight:850;font-size:clamp(1.4rem,2.1vw,1.85rem)}
.logo .dot{color:var(--accent)}.brand-subtitle{font-size:.74rem;letter-spacing:.07em;color:#b2c9da;margin-top:5px}
.top-header .identity{border-left:1px solid rgba(255,255,255,.25);padding-left:20px;display:flex;flex-direction:column;font-size:.81rem;line-height:1.5;color:#c6d7e9}
.top-header .identity strong{font-size:.96rem;color:#fff;letter-spacing:.025em}
.top-actions{margin-left:auto;display:flex;gap:17px;align-items:center}
.lang-switch{display:flex;gap:10px;font-size:.78rem;font-weight:700}.lang-switch a{color:#f3f6f8;text-decoration:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#0b3a62;color:white;text-decoration:none;border-radius:10px;padding:12px 18px;font-weight:750;border:1px solid #0b3a62}
.button:hover,.button:focus{color:#fff;background:#072a49}.button-sm{font-size:.87rem;padding:9px 14px}
.nav-row{background:#fff;border-bottom:1px solid #e1e8f1}.nav-inner{display:flex;align-items:center;gap:10px;min-height:58px}
.primary-nav{display:flex;align-items:center;gap:2px;flex-wrap:wrap}
.primary-nav>a,.nav-drop summary{color:#243850;font-size:.88rem;font-weight:650;text-decoration:none;padding:14px 12px;display:block;cursor:pointer;border-radius:7px;line-height:1.4}
.primary-nav>a:hover,.nav-drop summary:hover,.primary-nav>a[aria-current=page]{background:#eaf2fa;color:#073c68}
.nav-drop{position:relative}.nav-drop summary{list-style:none}.nav-drop summary::-webkit-details-marker{display:none}.nav-drop summary:after{content:' ▾';font-size:.7rem}
.drop-panel{position:absolute;top:100%;right:0;min-width:210px;padding:9px;background:#fff;box-shadow:0 15px 35px rgba(0,0,0,.17);border:1px solid #e0e9f0;border-radius:10px;z-index:80}
.drop-panel a{display:block;padding:9px 12px;color:#193a55;text-decoration:none;font-size:.85rem;border-radius:5px}
.drop-panel a:hover{background:#edf4fb}
.menu-toggle,.mobile-consultation{display:none}
.subnav{background:#0b3150;color:#f0f8ff}.subnav .container{display:flex;gap:1px;flex-wrap:wrap}
.subnav a{padding:12px 14px;color:#f1f6fc;text-decoration:none;font-weight:650;font-size:.84rem;border-bottom:3px solid transparent}
.subnav a:hover,.subnav a[aria-current=page]{background:rgba(255,255,255,.12);border-bottom-color:var(--accent)}
.contact-strip{text-align:center;background:#eaf1f7;color:#223e53;padding:8px 18px;font-size:.86rem}
.contact-strip a{color:#084d82;font-weight:650}
/* Sections : structure identique à la matrice */
.hero-section{padding:3.9rem 0 3rem;background:linear-gradient(130deg,#071426,#103756);color:#fff}
.eyebrow{color:#f8c58f;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:850;margin:0 0 15px}
.hero-section h1{width:100%;margin:.25rem 0 1.4rem;text-align:center;color:#fff;font-size:clamp(2rem,4.1vw,3.5rem);line-height:1.16;letter-spacing:-.025em}
.hero-section .lead{width:100%;max-width:none;margin:0 0 1.7rem;text-align:left;line-height:1.7;font-size:1.14rem;color:#d7e6f4}
.hero-section .eyebrow{text-align:center}
.btn.btn-primary-blue{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:.85rem 1.35rem;background:#1164a1;color:white;border:1px solid #1164a1;border-radius:10px;text-decoration:none;font-weight:750;box-shadow:0 6px 18px rgba(7,31,47,.13);transition:background-color .18s ease,transform .18s ease}
.btn.btn-primary-blue:hover,.btn.btn-primary-blue:focus-visible{background:#0a4778;color:#fff;transform:translateY(-1px)}
.btn.btn-primary-blue:visited{color:white}.hero-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.btn.btn-outline{color:#fff;border:1px solid #b5cde0;text-decoration:none;padding:.84rem 1.2rem;border-radius:10px;font-weight:730}
.btn.btn-outline:hover{background:rgba(255,255,255,.12);color:white}
.section{padding:3.45rem 0}.section--alt{background:var(--alt)}
.section h2{font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.26;color:#0a2945;margin:0 0 1.15rem}
.section h2:not(:first-child){margin-top:2.35rem}.section h3{font-size:1.12rem;line-height:1.3;margin:1.25rem 0 .55rem;color:#123e5e}
.section p{margin:.85rem 0 1rem}.section p,.section li{max-width:90ch}
.section a:not(.btn):not(.card-link){color:#07508c;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
.section a:not(.btn):not(.card-link):hover{color:#052f55}
.bloc__media img{width:100%;height:auto;border-radius:14px;box-shadow:0 16px 36px rgba(6,26,47,.10);display:block}
.breadcrumbs{margin:17px 0 0;color:#526478;font-size:.92rem}.breadcrumbs a{font-weight:650}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:27px 0 32px}
.card-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.info-card{background:white;border:1px solid var(--line);box-shadow:0 8px 25px rgba(17,55,80,.055);border-radius:var(--radius);padding:23px 24px;display:flex;flex-direction:column;min-width:0}
.section--alt .info-card{background:#fff}.card-kicker{font-weight:800;color:#0e639d;letter-spacing:.075em;text-transform:uppercase;font-size:.75rem}
.info-card h3,.section .info-card h3{margin:12px 0 7px;color:#123856;font-size:1.2rem}.info-card p{font-size:.96rem;line-height:1.6;flex-grow:1;margin:.2rem 0 12px}
.info-card .card-link{font-weight:760;color:#07508c;text-decoration:none;align-self:flex-start}.card-link:hover{text-decoration:underline}
.link-tiles{display:flex;gap:10px 12px;flex-wrap:wrap;margin:20px 0 34px}.section .link-tiles a{display:inline-block;padding:10px 15px;border-radius:9px;border:1px solid #c6d7e4;background:#edf5fa;text-decoration:none;font-weight:700}
.section .link-tiles a:hover{background:#dcecf7}
.numbered-steps{counter-reset:step;list-style:none;margin:25px 0 30px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.numbered-steps li{counter-increment:step;position:relative;list-style:none;border:1px solid #dce5ed;border-radius:13px;background:#fff;padding:22px 20px 19px 74px;min-height:130px}
.numbered-steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:20px;top:18px;border-radius:10px;background:#e7f3fc;color:#0b4a6f;font-weight:850;padding:6px 8px}
.numbered-steps p{margin:.5rem 0 0;line-height:1.55}.numbered-steps strong{color:#113a58}
.check-list{padding-left:25px}.check-list li{margin:10px 0;padding-left:4px}.check-list li::marker{color:#1164a1}
.notice{background:#eaf4fc;border-left:4px solid #1164a1;border-radius:0 12px 12px 0;padding:19px 23px;margin:27px 0;color:#18394f}
.notice.important{background:#fff7ed;border-left-color:#bf681a;color:#4c321d}.notice p{margin:7px 0 0}
.cta-inline{margin:25px 0 7px;background:linear-gradient(115deg,#071426,#103756);color:white;border-radius:15px;padding:27px 31px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.cta-inline .eyebrow{margin-bottom:7px}.section .cta-inline h2{color:white;margin:0;font-size:1.65rem}.cta-inline p{color:#dceaf3;max-width:620px;margin:10px 0 0}.cta-inline .btn{flex-shrink:0}
.faq-list{display:grid;gap:12px;margin:20px 0 35px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.faq-list summary{cursor:pointer;display:list-item;list-style-position:inside;font-weight:750;color:#143958;padding:18px 20px}.faq-list details[open] summary{background:#e8f2f9}
.faq-answer{padding:4px 22px 18px}.faq-answer p{margin:10px 0}
.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}
.contact-panel>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}
.sitemap-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px}.sitemap-columns li{margin:7px 0}
/* Pied de page Pacta, présenté sous la marque Vigifraude */
.site-footer{background:#071426;color:#cbd9e8;margin-top:0}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:32px;padding-top:52px;padding-bottom:44px}
.footer-top h2{font-size:1rem;color:#fff;margin:4px 0 18px}.footer-intro{margin:20px 0;color:#c8d7e6;font-size:.9rem}
.footer-top p{font-size:.86rem;line-height:1.75}.footer-top a:not(.button):not(.logo){color:#e2ecf8}.footer-top a:hover{text-decoration:underline}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:.85rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding:18px 0 23px;background:#06101f}
.footer-bottom .container{display:flex;flex-direction:column;gap:9px}.footer-bottom span{font-size:.76rem;line-height:1.55;color:#b2c7d8}
.footer-bottom a{color:#d6e8f6}
@media (max-width:1040px){.top-header-inner{gap:16px}.top-header .identity{display:none}.primary-nav>a,.nav-drop summary{padding:12px 9px}.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:850px){.top-header-inner{min-height:76px}.brand-name{font-size:1.52rem}.nav-inner{min-height:56px;display:flex;justify-content:space-between;position:relative}.menu-toggle{display:flex;gap:8px;align-items:center;background:#0b3a62;color:#fff;border:none;border-radius:8px;padding:9px 14px;font-size:.92rem;cursor:pointer}.mobile-consultation{display:inline-flex}.primary-nav{display:none;position:absolute;z-index:100;top:calc(100% + 1px);left:0;right:0;padding:12px 18px 18px;background:white;box-shadow:0 14px 20px rgba(0,0,0,.16);flex-direction:column;align-items:stretch;max-height:75vh;overflow-y:auto}.primary-nav.is-open{display:flex}.primary-nav>a,.nav-drop summary{padding:11px 12px}.nav-drop .drop-panel{position:static;box-shadow:none;border:0;background:#f4f8fc}.subnav .container{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.subnav a{white-space:nowrap}.hero-section{padding:2.8rem 0 2.3rem}.section{padding:2.75rem 0}}
@media (max-width:700px){.container{width:min(100% - 32px,1160px)}.top-actions .lang-switch{display:none}.top-actions .button{font-size:.78rem;padding:8px 10px}.brand-name{font-size:1.35rem}.brand-subtitle{font-size:.64rem}.contact-strip{font-size:.76rem}.hero-section h1{font-size:clamp(1.9rem,8vw,2.6rem)}.hero-section .lead{font-size:1.04rem}.card-grid,.card-grid.cols-2,.numbered-steps,.contact-panel,.sitemap-columns{grid-template-columns:1fr}.cta-inline{flex-direction:column;align-items:flex-start}.cta-inline .btn{flex-shrink:1}.footer-top{gap:25px;grid-template-columns:1fr}.section{padding:2.4rem 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn.btn-primary-blue{transition:none}}/* Footer : liens sans soulignement */

.site-footer .footer-top a,
.site-footer .footer-links a,
.site-footer .footer-bottom a {
    text-decoration: none;
}

.site-footer .footer-top a:hover,
.site-footer .footer-links a:hover,
.site-footer .footer-bottom a:hover {
    text-decoration: none;
}

.site-footer a:focus-visible {
    outline: 2px solid #f7c948;
    outline-offset: 3px;
}
/* Supprimer les soulignements dans les blocs de liens */
.section .link-tiles a:not(.btn):not(.card-link) {
    text-decoration: none;
}
