/* Page Trust Co. Anti-virus */
.avp-grille{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.avp-texte .badge-etat{margin-bottom:12px}
.avp-date{display:inline-flex;align-items:center;gap:14px;margin:18px 0 6px;padding:14px 20px;border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--ombre)}
.avp-date-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#144b86;color:#fff}
.avp-date small{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.avp-date strong{display:block;font-size:1.5rem;line-height:1.2;color:var(--navy)}
.avp-date em{display:block;font-style:normal;font-size:.82rem;color:#144b86;font-weight:600}
.avp-note{margin:0 0 22px;font-size:.82rem;color:var(--text-muted)}
.avp-visuel{display:grid;place-items:center}
.avp-socle{width:min(280px,70%);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,var(--surface) 55%,rgba(20,75,134,.1));box-shadow:0 0 0 10px rgba(20,75,134,.06),0 24px 60px rgba(20,75,134,.18)}
.avp-socle img{width:56%;height:auto}
.avp-atouts{margin-top:8px}
.avp-lien{margin-top:22px;text-align:center}
.avp-form-zone{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}
.avp-points{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px}
.avp-points li{padding-left:26px;position:relative}
.avp-points li::before{content:"";position:absolute;left:0;top:.35em;width:14px;height:14px;border-radius:50%;background:#144b86}
.avp-form{padding:26px;border-radius:20px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--ombre);display:grid;gap:16px}
.avp-champ label{display:block;margin-bottom:6px;font-size:.86rem;font-weight:600;color:var(--text)}
.avp-opt{font-weight:400;color:var(--text-muted)}
.avp-form input[type=text],.avp-form input[type=email],.avp-form input[type=tel],.avp-form input[type=number],.avp-form select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-tendre);color:var(--text);font:inherit}
.avp-form input:focus,.avp-form select:focus{outline:2px solid var(--navy);outline-offset:1px;background:var(--surface)}
.avp-consent{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;color:var(--text-muted)}
.avp-consent input{margin-top:3px;flex:none;width:18px;height:18px;accent-color:var(--navy)}
.avp-envoi{width:100%;justify-content:center}
.avp-ok{text-align:center;padding:18px 6px;color:var(--navy)}
.avp-ok h3{margin:10px 0 6px}.avp-ok p{color:var(--text-muted);margin:0}
:root[data-theme="dark"] .avp-date strong,:root[data-theme="dark"] .avp-ok{color:#8fc4f2}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .avp-date strong,:root:not([data-theme="light"]) .avp-ok{color:#8fc4f2}}
@media (max-width:900px){.avp-grille,.avp-form-zone{grid-template-columns:1fr}.avp-visuel{order:-1}.avp-socle{width:170px}}
@media (max-width:520px){.avp-atouts{grid-template-columns:1fr!important}.avp-form{padding:18px}.avp-date{width:100%}}
.avp-texte .badge-etat{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#144b86}
.avp-texte .badge-etat::before{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.avp-hero .btn--primaire{background:var(--navy);color:#fff;border:0;padding:13px 26px}
.avp-hero .btn--primaire:hover{background:var(--navy-dark);color:#fff}
.avp-hero h1{margin-top:10px}

/* ===== Page dynamique : radar, faisceau de scan, icônes flottantes ===== */
.avp-visuel{position:relative;min-height:340px}
.avp-socle{position:relative;z-index:2;overflow:hidden;width:min(300px,72%)}
.avp-scan{position:absolute;left:0;right:0;top:0;height:46%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(41,163,209,.0) 40%,rgba(41,163,209,.38) 92%,rgba(120,220,255,.9) 100%);border-bottom:2px solid rgba(120,220,255,.95);box-shadow:0 6px 18px rgba(41,163,209,.45);animation:avp-balaye 3.2s ease-in-out infinite}
@keyframes avp-balaye{0%{transform:translateY(-100%);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translateY(218%);opacity:0}}
.avp-radar{position:absolute;left:50%;top:50%;width:min(390px,92%);aspect-ratio:1;margin:calc(min(390px,92%)/-2) 0 0 calc(min(390px,92%)/-2);border-radius:50%;border:1.5px dashed rgba(20,75,134,.28);animation:avp-tour 26s linear infinite}
.avp-r2{width:min(470px,110%);margin:calc(min(470px,110%)/-2) 0 0 calc(min(470px,110%)/-2);border-style:solid;border-color:rgba(41,163,209,.16);animation:avp-onde 4.5s ease-out infinite}
@keyframes avp-tour{to{transform:rotate(360deg)}}
@keyframes avp-onde{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.08);opacity:0}}
.avp-p{position:absolute;z-index:3;display:block;width:34px;height:34px;color:#2a6bb0;opacity:.85;animation:avp-vol 5.5s ease-in-out infinite}
.avp-p svg{display:block;width:100%;height:100%}
.avp-p1{left:10%;top:14%}.avp-p2{right:8%;top:24%;animation-delay:-1.4s}.avp-p3{left:14%;bottom:12%;animation-delay:-2.8s}.avp-p4{right:14%;bottom:8%;animation-delay:-4.1s}
@keyframes avp-vol{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-12px) rotate(5deg)}}
.avp-essai{background:linear-gradient(180deg,var(--bg-alt,#f4f8fc),transparent)}
.avp-essai .avs{margin-top:0}
.avx-sur{display:inline-block;margin-bottom:8px;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#144b86}
.avp-texte>*{animation:avp-entre .7s cubic-bezier(.2,.8,.2,1) both}
.avp-texte>*:nth-child(2){animation-delay:.06s}.avp-texte>*:nth-child(3){animation-delay:.12s}.avp-texte>*:nth-child(4){animation-delay:.18s}.avp-texte>*:nth-child(5){animation-delay:.24s}.avp-texte>*:nth-child(6){animation-delay:.3s}
@keyframes avp-entre{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.avp-atouts>*{transition:transform .25s,box-shadow .25s}.avp-atouts>*:hover{transform:translateY(-4px)}
:root[data-theme="dark"] .avx-sur{color:#8fc4f2}:root[data-theme="dark"] .avp-p{color:#8fc4f2}
@media (max-width:900px){.avp-visuel{min-height:230px}.avp-socle{width:170px}.avp-radar{display:none}}
@media (prefers-reduced-motion:reduce){.avp-scan,.avp-radar,.avp-p,.avp-texte>*{animation:none}}
