
/* cOllect_Pay — expérience publique interactive V2 */
html{scroll-behavior:smooth}
body{overflow-x:hidden}

.btn-nav-verify-doc{
    border:1px solid rgba(255,255,255,.28)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    backdrop-filter:blur(12px);
}
.btn-nav-verify-doc:hover{background:rgba(255,255,255,.16)!important}

.public-services-impact{
    position:relative;
    overflow:hidden;
    padding:90px 0;
    background:
      radial-gradient(circle at 15% 30%,rgba(245,188,29,.16),transparent 28%),
      radial-gradient(circle at 85% 68%,rgba(0,183,255,.13),transparent 31%),
      linear-gradient(135deg,#04111f 0%,#071d34 52%,#0b3658 100%);
    color:white;
}
.impact-glow{position:absolute;border-radius:50%;filter:blur(12px);pointer-events:none;animation:cpFloatGlow 7s ease-in-out infinite}
.impact-glow-a{width:340px;height:340px;background:rgba(255,195,0,.09);top:-100px;left:-100px}
.impact-glow-b{width:430px;height:430px;background:rgba(0,159,229,.08);right:-130px;bottom:-170px;animation-delay:-2.5s}
@keyframes cpFloatGlow{50%{transform:translate3d(25px,20px,0) scale(1.08)}}
.impact-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:end;margin-bottom:35px}
.impact-heading h2{font-size:clamp(31px,4vw,50px);font-weight:900;letter-spacing:-1.5px;margin:10px 0 0;max-width:760px}
.impact-heading p{color:#bcd0df;line-height:1.7;margin:0;font-size:15px}
.impact-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.impact-service-card{
    position:relative;overflow:hidden;min-height:290px;padding:26px;border-radius:25px;
    border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.055);
    color:#fff;text-decoration:none;text-align:left;display:flex;flex-direction:column;
    backdrop-filter:blur(15px);box-shadow:0 22px 60px rgba(0,0,0,.18);
    transition:transform .35s ease,border-color .35s ease,background .35s ease,box-shadow .35s ease;
}
button.impact-service-card{width:100%;font:inherit;cursor:pointer}
.impact-service-card:hover{transform:translateY(-8px);border-color:rgba(255,205,49,.45);background:rgba(255,255,255,.09);box-shadow:0 30px 70px rgba(0,0,0,.27);color:#fff}
.impact-card-orbit{position:absolute;width:180px;height:180px;border-radius:50%;border:1px solid rgba(255,255,255,.08);right:-70px;top:-70px;transition:.5s}
.impact-service-card:hover .impact-card-orbit{transform:scale(1.35) rotate(30deg);border-color:rgba(255,200,30,.3)}
.impact-service-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:27px;margin-bottom:auto;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.14)}
.qr-service .impact-service-icon{color:#55d7ff}
.np-service .impact-service-icon{color:#ffd85f}
.document-service .impact-service-icon{color:#6ef1b3}
.impact-service-copy{margin-top:42px}
.impact-service-copy small{font-size:10px;font-weight:900;letter-spacing:.12em;color:#92abc0}
.impact-service-copy h3{font-weight:900;font-size:24px;margin:7px 0}
.impact-service-copy p{color:#b9cbd9;font-size:13px;line-height:1.6;margin:0}
.impact-arrow{position:absolute;right:23px;top:25px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);transition:.3s}
.impact-service-card:hover .impact-arrow{transform:rotate(45deg);background:#f8c820;color:#06172a}
.impact-revenue-ribbon{
    margin-top:20px;padding:17px 20px;border:1px solid rgba(255,255,255,.1);border-radius:18px;
    display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(1,11,22,.35);backdrop-filter:blur(14px)
}
.impact-revenue-ribbon>div:not(.ribbon-live){display:flex;flex-direction:column}
.impact-revenue-ribbon small{color:#839fb5;font-size:10px;font-weight:900;text-transform:uppercase}
.impact-revenue-ribbon strong{font-size:14px}
.ribbon-live{display:flex;gap:8px;align-items:center;color:#7de8ad;font-size:10px;font-weight:900;letter-spacing:.08em}
.ribbon-live span{width:8px;height:8px;background:#42dd8b;border-radius:50%;box-shadow:0 0 0 6px rgba(66,221,139,.1);animation:cpLive 1.6s infinite}
@keyframes cpLive{50%{box-shadow:0 0 0 11px rgba(66,221,139,0)}}
.ribbon-rate{padding-left:18px;border-left:1px solid rgba(255,255,255,.1)}

/* subtle reveal */
.cp-motion-ready .impact-service-card,.cp-motion-ready .real-revenue-cards article,.cp-motion-ready .summary-card{
    opacity:0;transform:translateY(28px)
}
.cp-motion-ready .cp-in-view{opacity:1!important;transform:none!important;transition:opacity .65s ease,transform .65s cubic-bezier(.2,.8,.2,1)}

/* public tool pages */
.public-tool-page{font-family:Inter,Arial,sans-serif;background:#f4f8fb;color:#17324a}
.public-tool-nav{position:relative!important}
.public-tool-actions{display:flex;gap:8px;align-items:center}
.public-tool-main{min-height:calc(100vh - 75px)}
.tool-hero{position:relative;overflow:hidden;padding:78px 0 65px;color:#fff;background:linear-gradient(135deg,#04111f,#082845 58%,#0c527e)}
.tool-grid-overlay{position:absolute;inset:0;opacity:.13;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,#000,transparent)}
.tool-eyebrow{display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.07);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#cbe3f5}
.tool-hero h1{font-size:clamp(38px,5vw,65px);line-height:1.03;font-weight:900;letter-spacing:-2.4px;margin:17px 0}
.tool-hero h1 span{color:#f7c51d}
.tool-hero p{max-width:700px;color:#bfd2e1;font-size:16px;line-height:1.7}
.tool-trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.tool-trust span{padding:8px 10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:10px;font-size:11px;font-weight:800;color:#d5e7f4}
.public-search-glass{padding:24px;border:1px solid rgba(255,255,255,.15);border-radius:24px;background:rgba(255,255,255,.09);backdrop-filter:blur(17px);box-shadow:0 25px 70px rgba(0,0,0,.22)}
.public-search-glass label{display:block;font-size:12px;font-weight:900;margin-bottom:9px}
.public-search-line{display:flex;align-items:center;background:#fff;border-radius:14px;padding:5px 5px 5px 15px;color:#60788c}
.public-search-line input{border:0;outline:0;flex:1;min-width:0;padding:12px 10px;font-weight:800;color:#16344d}
.public-search-line button{border:0;border-radius:11px;background:linear-gradient(135deg,#f0b80b,#ffd54a);color:#0e2a40;font-weight:900;padding:12px 15px}
.public-search-glass small{display:block;color:#a9c2d5;margin-top:10px;font-size:10.5px}
.tool-result-section{padding:45px 0 80px}
.tool-message{display:flex;gap:14px;align-items:center;padding:17px 19px;border-radius:16px;margin-bottom:20px}.tool-message.error{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}.tool-message i{font-size:25px}.tool-message strong,.tool-message span{display:block}.tool-message span{font-size:12px;margin-top:3px}
.np-status-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:22px 24px;background:#fff;border:1px solid #dfe8ef;border-radius:20px;box-shadow:0 8px 28px rgba(20,55,85,.055)}
.np-status-head small{font-size:10px;font-weight:900;color:#718395;letter-spacing:.08em}.np-status-head h2{margin:3px 0 0;font-size:24px;font-weight:900}.status-led{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;background:#f59e0b;box-shadow:0 0 0 7px rgba(245,158,11,.08)}.status-led.payee{background:#22c55e}.status-led.defaillante{background:#ef4444}
.np-number-block{text-align:right}.np-number-block strong,.np-number-block span{display:block}.np-number-block strong{font-size:17px}.np-number-block span{font-size:11px;color:#7b8d9e;margin-top:3px}
.real-revenue-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:20px}.real-revenue-cards article{background:#fff;border:1px solid #dfe8ef;border-radius:18px;padding:18px;box-shadow:0 8px 25px rgba(18,53,83,.045)}.real-revenue-cards small{display:block;color:#718397;font-size:10px;font-weight:900;text-transform:uppercase;margin:11px 0 5px}.real-revenue-cards strong{font-size:17px;color:#153f5f;overflow-wrap:anywhere}.metric-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center}.metric-icon.due{background:#eaf4ff;color:#1b69a5}.metric-icon.paid{background:#e5fbef;color:#16804b}.metric-icon.balance{background:#fff2da;color:#a96305}.metric-icon.payments{background:#f0eaff;color:#7044b1}
.np-public-detail-card,.recovery-gauge-card,.manual-qr-card,.qr-verification-result,.qr-waiting-card{height:100%;background:#fff;border:1px solid #dfe8ef;border-radius:21px;padding:22px;box-shadow:0 10px 30px rgba(18,53,83,.055)}
.detail-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.detail-card-head small{font-size:10px;font-weight:900;color:#7190a6}.detail-card-head h3{font-size:20px;font-weight:900;margin:3px 0}.secure-chip{font-size:10px;font-weight:900;background:#edf7fb;color:#17678e;padding:7px 9px;border-radius:999px}
.np-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.np-detail-grid div{background:#f8fbfd;border:1px solid #e5edf3;border-radius:13px;padding:13px}.np-detail-grid small,.np-detail-grid strong{display:block}.np-detail-grid small{font-size:10px;color:#7b8d9e;margin-bottom:5px}.np-detail-grid strong{font-size:12px;overflow-wrap:anywhere}
.recovery-gauge-card{text-align:center}.gauge-ring{--progress:0;width:175px;height:175px;border-radius:50%;margin:0 auto 17px;background:conic-gradient(#18a66d calc(var(--progress)*1%),#e5edf2 0);display:grid;place-items:center;position:relative}.gauge-ring:after{content:"";position:absolute;width:132px;height:132px;border-radius:50%;background:white}.gauge-ring div{position:relative;z-index:2}.gauge-ring strong,.gauge-ring small{display:block}.gauge-ring strong{font-size:25px;color:#153d5b}.gauge-ring small{font-size:10px;color:#7890a1}.recovery-gauge-card p{font-size:11px;color:#738698;line-height:1.55}.tool-primary-action,.tool-sold-note{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px;border-radius:12px;font-weight:900;text-decoration:none}.tool-primary-action{background:#0f4f7d;color:white}.tool-sold-note{background:#e3f8ed;color:#19734a}
.tool-empty-launch{text-align:center;background:white;border:1px solid #dfe8ef;border-radius:22px;padding:55px 20px}.empty-launch-icon{width:75px;height:75px;border-radius:23px;margin:0 auto 15px;display:grid;place-items:center;background:#edf6fb;color:#176b99;font-size:32px}.tool-empty-launch h2{font-weight:900}.tool-empty-launch p{color:#75889a;max-width:620px;margin:8px auto}

/* QR */
.qr-tool-hero{background:radial-gradient(circle at 80% 40%,rgba(0,196,255,.16),transparent 28%),linear-gradient(135deg,#031019,#06273d,#083d5c)}
.qr-beam{position:absolute;width:450px;height:1px;background:linear-gradient(90deg,transparent,#57dfff,transparent);opacity:.35;transform:rotate(-25deg);animation:beamMove 4s linear infinite}.qr-beam-one{top:25%;right:-120px}.qr-beam-two{bottom:18%;left:-100px;animation-delay:-2s}@keyframes beamMove{50%{transform:translateX(120px) rotate(-25deg);opacity:.6}}
.qr-scanner-shell{padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:25px;background:rgba(0,0,0,.2);backdrop-filter:blur(12px);box-shadow:0 30px 80px rgba(0,0,0,.25)}.scanner-status{display:flex;align-items:center;gap:8px;font-size:11px;color:#b9d4e5;margin-bottom:10px}.scanner-status span{width:8px;height:8px;border-radius:50%;background:#48e193;box-shadow:0 0 0 6px rgba(72,225,147,.08)}.camera-stage{height:310px;position:relative;overflow:hidden;border-radius:19px;background:#020b12}.camera-stage video{width:100%;height:100%;object-fit:cover;display:none}.camera-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#7592a6;text-align:center}.camera-placeholder i{font-size:40px;color:#3ba8d6;margin-bottom:8px}.camera-placeholder strong,.camera-placeholder span{display:block}.camera-placeholder span{font-size:11px;margin-top:4px}.scanner-frame{position:absolute;inset:42px 70px;pointer-events:none;z-index:4}.scanner-frame>span{position:absolute;width:35px;height:35px;border-color:#67e5ff;border-style:solid}.scanner-frame>span:nth-child(1){left:0;top:0;border-width:3px 0 0 3px}.scanner-frame>span:nth-child(2){right:0;top:0;border-width:3px 3px 0 0}.scanner-frame>span:nth-child(3){left:0;bottom:0;border-width:0 0 3px 3px}.scanner-frame>span:nth-child(4){right:0;bottom:0;border-width:0 3px 3px 0}.scanner-line{position:absolute;left:5px;right:5px;height:2px;background:#5ee6ff;box-shadow:0 0 16px #5ee6ff;animation:scanLine 2.1s ease-in-out infinite}@keyframes scanLine{0%,100%{top:7%}50%{top:90%}}.scanner-actions{display:flex;gap:8px;margin-top:12px}.scanner-main-btn,.scanner-stop-btn{border:0;border-radius:12px;padding:11px 13px;font-weight:900}.scanner-main-btn{flex:1;background:#55dfff;color:#062333}.scanner-stop-btn{background:rgba(255,255,255,.09);color:#d6e8f2}.scanner-stop-btn:disabled{opacity:.45}.scanner-compatibility{display:block;color:#7fa0b4;font-size:9.5px;margin-top:9px}
.manual-qr-card .section-kicker{color:#1777a5}.manual-qr-card h2{font-weight:900;margin:7px 0}.manual-qr-card p{font-size:12px;color:#728698;line-height:1.55}.manual-qr-card textarea{width:100%;min-height:170px;border:1px solid #d5e1e9;border-radius:14px;padding:13px;font:600 11px/1.5 ui-monospace,monospace;resize:vertical;outline:none}.manual-qr-card textarea:focus{border-color:#4ba7cf;box-shadow:0 0 0 4px rgba(75,167,207,.08)}.manual-qr-card button{width:100%;border:0;border-radius:12px;padding:12px;background:linear-gradient(135deg,#0e4a74,#1273a4);color:#fff;font-weight:900;margin-top:10px}
.qr-verification-result{display:flex;gap:22px;align-items:center}.result-visual{flex:0 0 auto}.result-ring{width:105px;height:105px;border-radius:50%;display:grid;place-items:center;font-size:40px}.valid .result-ring{background:#e1faec;color:#16814e;box-shadow:0 0 0 12px #f0fcf5}.invalid .result-ring{background:#fee7e7;color:#c52727;box-shadow:0 0 0 12px #fff3f3}.result-copy{flex:1}.result-copy>small{font-size:10px;font-weight:900;color:#7a8e9f}.result-copy h2{font-weight:900;margin:5px 0}.result-copy p{font-size:12px;color:#728697}.qr-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.qr-doc-grid div{background:#f6fafc;border-radius:11px;padding:10px}.qr-doc-grid span,.qr-doc-grid strong{display:block}.qr-doc-grid span{font-size:9px;color:#7e92a3;text-transform:uppercase;font-weight:900}.qr-doc-grid strong{font-size:11px;margin-top:4px;overflow-wrap:anywhere}.qr-waiting-card{text-align:center;display:flex;flex-direction:column;justify-content:center;min-height:330px}.qr-waiting-animation{position:relative;width:90px;height:90px;margin:0 auto 18px;border-radius:24px;background:#eaf6fb;display:grid;place-items:center;color:#11739f;font-size:39px}.qr-waiting-animation span{position:absolute;inset:-9px;border:1px solid #a9daeb;border-radius:30px;animation:waitingPulse 1.8s infinite}@keyframes waitingPulse{50%{transform:scale(1.1);opacity:.25}}.qr-waiting-card h2{font-weight:900}.qr-waiting-card p{color:#75899a;font-size:12px}
.footer-verif-button{border:0;background:none;color:inherit;padding:0;font:inherit;text-decoration:underline;cursor:pointer}

@media(max-width:992px){
  .impact-heading{grid-template-columns:1fr;gap:15px}.impact-services-grid{grid-template-columns:1fr}.impact-service-card{min-height:230px}.impact-revenue-ribbon{flex-wrap:wrap;justify-content:flex-start}.real-revenue-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.public-tool-actions .btn-nav-outline{display:none}
}
@media(max-width:600px){
  .public-services-impact{padding:62px 0}.impact-heading h2{font-size:34px}.impact-revenue-ribbon>i{display:none}.real-revenue-cards{grid-template-columns:1fr}.np-status-head{align-items:flex-start;flex-direction:column}.np-number-block{text-align:left}.np-detail-grid,.qr-doc-grid{grid-template-columns:1fr}.tool-hero{padding:55px 0 45px}.tool-hero h1{font-size:38px;letter-spacing:-1.3px}.qr-verification-result{flex-direction:column;text-align:center}.camera-stage{height:270px}.scanner-frame{inset:38px 45px}
}
