
:root{--bg:#eef2f5;--bg2:#f5f7f9;--panel:#f2f5f7;--panel-strong:#f8fafb;--ink:#172321;--muted:#66726f;--faint:#91a09c;--line:rgba(36,67,62,.10);--accent:#2f756b;--accent-dark:#1f5c54;--accent-soft:#dceee9;--mint:#8bc8b9;--danger:#b75c57;--warn:#b4854d;--shadow:18px 18px 42px rgba(158,170,178,.28),-18px -18px 42px rgba(255,255,255,.86);--shadow-sm:9px 9px 24px rgba(158,170,178,.22),-9px -9px 24px rgba(255,255,255,.86);--inset:inset 6px 6px 16px rgba(160,172,180,.18),inset -6px -6px 16px rgba(255,255,255,.84);--radius:30px;--radius-sm:20px;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(145deg,#eef2f5 0%,#f7f8f9 52%,#edf2f4 100%);color:var(--ink);font-family:Inter,Avenir Next,Avenir,Segoe UI,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-3;background-image:radial-gradient(rgba(45,92,84,.045) .7px,transparent .7px);background-size:20px 20px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 70%)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}.container{width:min(1180px,calc(100% - 44px));margin:auto}.section-space{padding:118px 0}.soft-section{position:relative;background:rgba(247,249,250,.48);border-top:1px solid rgba(255,255,255,.62);border-bottom:1px solid var(--line)}.ambient{position:fixed;width:470px;height:470px;border-radius:50%;filter:blur(90px);opacity:.16;z-index:-4;pointer-events:none}.ambient-a{background:#b8e4da;top:-200px;right:-130px}.ambient-b{background:#d4e1ef;left:-240px;top:47vh}.site-header{position:fixed;top:18px;left:0;right:0;z-index:100;padding:0 18px;transition:.35s var(--ease)}.nav-shell{width:min(1110px,100%);height:70px;margin:auto;padding:8px 10px 8px 18px;display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.62);background:rgba(243,246,248,.72);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border-radius:999px;box-shadow:12px 12px 35px rgba(136,151,160,.20),-10px -10px 32px rgba(255,255,255,.82);transition:.35s var(--ease)}.site-header.scrolled{top:10px}.site-header.scrolled .nav-shell{height:62px;box-shadow:9px 9px 28px rgba(136,151,160,.20),-8px -8px 28px rgba(255,255,255,.78)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.035em}.brand-mark{width:35px;height:35px;border-radius:12px;display:grid;place-items:center;background:var(--panel);box-shadow:var(--shadow-sm);position:relative}.brand-mark:before,.brand-mark:after,.brand-mark span{content:"";position:absolute;border:1.8px solid var(--accent);border-radius:9px}.brand-mark:before{inset:7px 10px 8px}.brand-mark:after{inset:10px 7px 7px}.brand-mark span{width:7px;height:7px;border:0;background:var(--accent);border-radius:50%}.brand-word{font-size:18px}.brand-word span{color:var(--accent)}.nav-links{display:flex;align-items:center;gap:4px}.nav-links>a:not(.nav-cta){padding:13px 14px;color:#4d5f5b;font-size:14px;font-weight:650;border-radius:999px;transition:.25s}.nav-links>a:not(.nav-cta):hover,.nav-links>a:not(.nav-cta).active{background:rgba(255,255,255,.56);color:var(--ink);box-shadow:inset 2px 2px 6px rgba(150,160,166,.12),inset -2px -2px 6px white}.nav-cta,.btn-primary{background:linear-gradient(145deg,#347f74,#28685f);color:white!important;box-shadow:8px 8px 20px rgba(31,92,84,.23),-5px -5px 16px rgba(255,255,255,.58),inset 1px 1px 0 rgba(255,255,255,.2);border:1px solid rgba(31,92,84,.32)}.nav-cta{padding:13px 18px;border-radius:999px;font-size:14px;font-weight:750}.nav-cta span,.btn span,.text-link span{display:inline-block;transition:transform .25s}.nav-cta:hover span,.btn:hover span,.text-link:hover span{transform:translateX(4px)}.nav-toggle{display:none;border:0;background:transparent;width:44px;height:44px;border-radius:50%;box-shadow:var(--shadow-sm)}.nav-toggle span{display:block;width:18px;height:1.5px;background:var(--ink);margin:5px auto;transition:.25s}.hero{padding-top:165px;min-height:900px;display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:70px;align-items:center}.eyebrow,.overline{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--accent);display:inline-flex;align-items:center;gap:8px}.eyebrow{padding:8px 12px;border-radius:999px;background:rgba(248,250,251,.6);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.72)}.eyebrow-dot,.status-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(47,117,107,.1)}h1,h2,h3,p{margin-top:0}.hero h1,.page-hero h1,.contact-hero h1{font-size:clamp(53px,6vw,83px);line-height:.98;letter-spacing:-.065em;margin:27px 0 24px;max-width:850px}.page-hero h1,.contact-hero h1{font-size:clamp(48px,5.7vw,76px)}h1 em{font-style:normal;color:var(--accent);font-weight:600}.soft-underline{position:relative;display:inline-block}.soft-underline:after{content:"";height:10px;position:absolute;left:2px;right:0;bottom:3px;background:var(--accent-soft);border-radius:999px;z-index:-1;transform:rotate(-1.5deg)}.hero-lead{font-size:19px;line-height:1.7;color:var(--muted);max-width:700px}.hero-actions{display:flex;gap:13px;align-items:center;margin-top:34px;flex-wrap:wrap}.btn{min-height:54px;padding:0 22px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:760;font-size:15px;border:1px solid rgba(255,255,255,.7);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s}.btn:hover{transform:translateY(-2px)}.btn-primary:hover{box-shadow:12px 12px 28px rgba(31,92,84,.29),-8px -8px 20px rgba(255,255,255,.66)}.btn-soft{background:var(--panel);color:#465753;box-shadow:var(--shadow-sm)}.btn-soft:hover{box-shadow:13px 13px 28px rgba(158,170,178,.25),-12px -12px 28px white}.btn-full{width:100%}.trust-row{display:flex;gap:19px;flex-wrap:wrap;margin-top:32px;color:#697874;font-size:12.5px;font-weight:650}.trust-row span,.contact-promises span{display:flex;align-items:center;gap:7px}.check{width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;background:var(--accent-soft);box-shadow:inset 1px 1px 2px rgba(31,92,84,.08)}.check:after{content:"✓";font-style:normal;font-size:11px;font-weight:900;color:var(--accent-dark)}.lens-stage{position:relative;height:560px;border-radius:50px;background:linear-gradient(145deg,rgba(249,250,251,.92),rgba(231,237,240,.86));box-shadow:25px 25px 65px rgba(144,158,167,.30),-24px -24px 65px rgba(255,255,255,.95),inset 1px 1px 0 rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.8);overflow:hidden;transform-style:preserve-3d}.lens-stage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 53% 47%,rgba(147,210,194,.22),transparent 34%),linear-gradient(115deg,transparent 47%,rgba(255,255,255,.64) 50%,transparent 53%);background-size:auto,250% 100%;animation:sheen 8s linear infinite}.risk-lens{position:absolute;width:250px;height:250px;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:20px 20px 44px rgba(148,161,170,.31),-20px -20px 44px white,inset 7px 7px 16px rgba(156,169,177,.15),inset -7px -7px 16px rgba(255,255,255,.75);display:grid;place-items:center;background:rgba(240,244,246,.64);overflow:hidden}.risk-lens:before{content:"";position:absolute;inset:22px;border-radius:50%;border:1px dashed rgba(47,117,107,.24)}.lens-sweep{position:absolute;width:48%;height:48%;left:50%;top:2%;transform-origin:0 100%;background:linear-gradient(135deg,rgba(47,117,107,.0),rgba(47,117,107,.16));clip-path:polygon(0 100%,100% 0,100% 100%);animation:scan 6s linear infinite}.lens-core{position:relative;text-align:center;width:130px;height:130px;border-radius:50%;display:grid;place-content:center;background:var(--panel-strong);box-shadow:var(--shadow-sm);z-index:2}.lens-score{font-size:44px;font-weight:760;letter-spacing:-.06em;color:var(--accent-dark);line-height:1}.lens-core small{font-size:10px;color:var(--faint);margin-top:6px}.lens-orbit{position:absolute;border-radius:50%;border:1px solid rgba(47,117,107,.10);left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{width:350px;height:350px}.orbit-two{width:440px;height:440px;border-style:dashed;animation:rotate 35s linear infinite}.float-pill{position:absolute;display:flex;align-items:center;gap:11px;padding:11px 15px;border-radius:18px;background:rgba(246,248,249,.85);backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.78);animation:float 5s ease-in-out infinite}.float-pill strong{display:block;font-size:12px}.float-pill small{display:block;color:var(--faint);font-size:10px;margin-top:3px}.mini-icon{width:30px;height:30px;border-radius:11px;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent-dark);font-weight:850;box-shadow:var(--inset)}.pill-mail{top:75px;left:35px}.pill-remote{top:88px;right:28px;animation-delay:-1.7s}.pill-data{bottom:86px;left:30px;animation-delay:-2.8s}.pill-backup{bottom:70px;right:32px;animation-delay:-.8s}.lens-caption{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font-size:10px;white-space:nowrap;color:var(--faint);display:flex;gap:8px;align-items:center}.signal-strip{padding:36px 0 72px}.signal-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1.1fr;gap:18px;align-items:stretch}.signal-intro{padding:22px 25px}.signal-intro h2{font-size:30px;line-height:1.1;letter-spacing:-.045em;margin:13px 0 0}.metric-card{padding:24px;border-radius:24px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.72)}.metric-card strong{font-size:44px;letter-spacing:-.05em;color:var(--accent-dark)}.metric-card p{font-size:12px;line-height:1.55;color:var(--muted);margin:8px 0 18px}.metric-card a,.service-card a,.story-card a,.guide-card a{font-size:11px;font-weight:780;color:var(--accent)}.metric-news strong{font-size:inherit}.metric-date{font-size:10px;color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.metric-news p{font-size:13px;margin-top:13px}.section-heading{max-width:690px}.section-heading.centered{text-align:center;margin:0 auto 62px}.section-heading h2{font-size:clamp(40px,4.6vw,61px);line-height:1.02;letter-spacing:-.055em;margin:15px 0 21px}.section-heading p{font-size:17px;line-height:1.7;color:var(--muted)}.attack-map{position:relative;height:720px;margin-top:55px;border-radius:46px;background:linear-gradient(145deg,#f7f9fa,#e9eef0);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.76);overflow:hidden}.attack-map:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(91,157,143,.11),transparent 35%)}.attack-center{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%)}.company-orb{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:22px;font-weight:760;letter-spacing:-.04em;background:var(--panel);box-shadow:var(--shadow);position:relative;z-index:2}.pulse-ring{position:absolute;inset:-42px;border:1px solid rgba(47,117,107,.11);border-radius:50%;animation:pulse 4s ease-out infinite}.ring-2{inset:-92px;animation-delay:-2s}.attack-node{position:absolute;width:205px;text-align:left;border:0;padding:18px 20px;border-radius:22px;background:var(--panel);box-shadow:var(--shadow-sm);cursor:pointer;transition:.3s var(--ease)}.attack-node:hover,.attack-node.is-active{transform:translateY(-4px);box-shadow:15px 15px 34px rgba(158,170,178,.26),-14px -14px 34px white}.attack-node.is-active{outline:1px solid rgba(47,117,107,.2)}.attack-node span{font-size:10px;color:var(--accent);font-weight:850;letter-spacing:.08em}.attack-node strong{display:block;margin:8px 0 4px;font-size:15px}.attack-node small{color:var(--faint)}.node-1{left:7%;top:14%}.node-2{right:7%;top:12%}.node-3{left:9%;bottom:18%}.node-4{right:8%;bottom:19%}.node-5{left:50%;top:7%;transform:translateX(-50%)}.node-5:hover,.node-5.is-active{transform:translateX(-50%) translateY(-4px)}.attack-detail{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);width:min(600px,calc(100% - 40px));padding:22px 26px;border-radius:23px;background:rgba(247,249,250,.82);backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.76);text-align:center}.detail-tag{font-size:10px;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.1em}.attack-detail h3{font-size:19px;letter-spacing:-.03em;margin:8px 0}.attack-detail p{color:var(--muted);font-size:12.5px;line-height:1.55;margin:0}.process-rail{margin-top:55px;position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-progress{position:absolute;top:36px;left:7%;right:7%;height:3px;border-radius:99px;background:rgba(120,140,135,.12);overflow:hidden}.process-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--mint));transition:width 1.2s var(--ease)}.process-rail.in-view .process-progress span{width:100%}.process-step{position:relative;padding:72px 24px 28px;border-radius:25px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.74);min-height:285px;transition:.3s}.step-number{position:absolute;top:18px;left:22px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--panel-strong);box-shadow:var(--shadow-sm);font-size:11px;color:var(--accent);font-weight:850;z-index:2}.step-type{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--accent);font-weight:800}.process-step h3{font-size:20px;margin:10px 0}.process-step p{font-size:13px;line-height:1.65;color:var(--muted)}.report-grid,.two-col,.result-layout,.ai-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}.clean-list{list-style:none;padding:0;margin:28px 0;display:grid;gap:11px}.clean-list li{display:flex;gap:10px;align-items:center;color:#53645f;font-size:14px}.text-link{color:var(--accent);font-weight:800;font-size:14px}.report-shell{padding:26px;border-radius:32px;background:linear-gradient(145deg,#f7f9fa,#ebeff1);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.78);transform-style:preserve-3d}.report-top,.report-score-row{display:flex;justify-content:space-between;align-items:center}.tiny-label{display:block;font-size:8px;font-weight:900;letter-spacing:.11em;color:var(--faint);margin-bottom:5px}.report-top strong{font-size:14px}.report-badge{font-size:9px;font-weight:800;color:var(--accent);background:var(--accent-soft);padding:8px 11px;border-radius:99px}.report-score-row{justify-content:flex-start;gap:19px;margin:28px 0}.score-ring{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) 0 72%,#dfe6e8 72%);position:relative}.score-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--panel-strong);box-shadow:inset 2px 2px 5px rgba(151,166,174,.16)}.score-ring span{position:relative;z-index:1;font-weight:800;font-size:24px;color:var(--accent-dark)}.report-score-row small{font-size:9px;color:var(--faint)}.report-score-row h3{margin:4px 0;font-size:18px}.report-score-row p{font-size:11px;color:var(--muted);margin:0}.finding{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;padding:14px 15px;border-radius:18px;background:rgba(248,250,251,.7);box-shadow:var(--shadow-sm);margin-top:12px}.finding-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#ecf0f1;color:var(--muted);font-weight:800}.finding.high .finding-icon{background:#f4e4e2;color:var(--danger)}.finding.medium .finding-icon{background:#f5edde;color:var(--warn)}.finding.ok .finding-icon{background:var(--accent-soft);color:var(--accent)}.finding small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint)}.finding strong{display:block;font-size:11px;margin:3px 0}.finding p{font-size:9px;color:var(--muted);margin:0}.finding-state{font-size:8px;font-weight:800;color:var(--faint)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;min-height:330px;padding:30px;border-radius:29px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.75);overflow:hidden;transition:.3s var(--ease)}.service-card:hover{transform:translateY(-7px);box-shadow:17px 17px 38px rgba(158,170,178,.27),-16px -16px 38px white}.service-card.featured{background:linear-gradient(145deg,#eef7f4,#e7f0ef)}.service-index{position:absolute;right:23px;top:22px;color:#9baba7;font-size:10px;font-weight:800}.service-icon{width:57px;height:57px;border-radius:18px;background:var(--panel-strong);box-shadow:var(--shadow-sm);margin-bottom:38px;position:relative}.shield-icon:before{content:"";position:absolute;width:20px;height:24px;border:2px solid var(--accent);border-radius:10px 10px 13px 13px;left:18px;top:15px}.radar-icon:before{content:"";position:absolute;inset:15px;border:1.8px solid var(--accent);border-radius:50%;box-shadow:inset 0 0 0 6px var(--accent-soft)}.ai-icon{display:grid;place-items:center;color:var(--accent);font-weight:900;font-size:13px}.service-card h3{font-size:23px;letter-spacing:-.04em}.service-card p{font-size:13px;line-height:1.65;color:var(--muted)}.education-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.sticky-copy{position:sticky;top:145px;align-self:start}.education-stack{display:grid;gap:22px}.edu-card{display:grid;grid-template-columns:58px 1fr;gap:22px;padding:30px;border-radius:28px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.74)}.edu-no{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:var(--panel-strong);box-shadow:var(--inset);color:var(--accent);font-size:11px;font-weight:850}.edu-card h3{font-size:21px;line-height:1.25;letter-spacing:-.035em}.edu-card p{color:var(--muted);font-size:13px;line-height:1.65;margin:0}.cta-card{position:relative;text-align:center;padding:82px 50px;border-radius:44px;background:linear-gradient(145deg,#f8fafb,#e9eff1);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.78);overflow:hidden}.cta-card h2{font-size:clamp(40px,5vw,64px);line-height:1.02;letter-spacing:-.055em;max-width:890px;margin:18px auto}.cta-card p{max-width:680px;margin:0 auto;color:var(--muted);line-height:1.7}.centered-actions{justify-content:center}.cta-orb{position:absolute;width:240px;height:240px;border-radius:50%;left:-100px;top:-100px;background:radial-gradient(circle,rgba(139,200,185,.2),transparent 70%)}.cta-orb.orb-right{left:auto;top:auto;right:-100px;bottom:-100px}.footer{padding:55px 0 30px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:30px;align-items:start}.footer-brand{margin-bottom:18px}.footer-grid p{font-size:12px;color:var(--muted);max-width:300px}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;font-size:12px;color:var(--muted)}.footer-note{font-size:11px;color:var(--muted);display:flex;gap:10px;align-items:center;padding:16px 18px;border-radius:18px;background:var(--panel);box-shadow:var(--shadow-sm)}.footer-bottom{display:flex;justify-content:space-between;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:10px;color:var(--faint)}
/* inner pages */.compact-hero{padding-top:175px;padding-bottom:90px;min-height:720px;display:flex;align-items:center}.page-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.audit-stamp{height:430px;border-radius:42px;background:linear-gradient(145deg,#f8fafb,#e9eef1);box-shadow:var(--shadow);display:grid;place-items:center;align-content:center;gap:24px;text-align:center;position:relative}.stamp-ring{width:190px;height:190px;border-radius:50%;display:grid;place-content:center;box-shadow:var(--shadow),var(--inset);border:1px solid rgba(255,255,255,.8)}.stamp-ring span{font-size:66px;font-weight:700;letter-spacing:-.07em;color:var(--accent-dark)}.stamp-ring small{font-size:9px;letter-spacing:.15em;color:var(--faint);font-weight:850}.audit-stamp>p{font-size:16px;line-height:1.5}.stamp-mini{font-size:9px;color:var(--muted);display:flex;gap:8px;align-items:center}.audit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.audit-card{padding:28px;border-radius:28px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.75);min-height:430px}.audit-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px}.audit-icon{width:49px;height:49px;border-radius:16px;display:grid;place-items:center;background:var(--panel-strong);box-shadow:var(--shadow-sm);color:var(--accent);font-weight:850}.pill-soft{font-size:9px;font-weight:800;color:var(--accent);padding:8px 10px;background:var(--accent-soft);border-radius:99px}.audit-card h3{font-size:21px;line-height:1.2;letter-spacing:-.035em}.audit-card p{font-size:12.5px;line-height:1.65;color:var(--muted)}.audit-card ul{padding:0;list-style:none;margin:22px 0 0;display:grid;gap:8px}.audit-card li{font-size:11px;color:#586a65;padding-left:16px;position:relative}.audit-card li:before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--accent);left:0;top:5px}.compare-stack{display:grid;gap:20px}.compare-card{display:grid;grid-template-columns:54px 1fr auto;gap:18px;align-items:center;padding:23px;border-radius:25px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.72)}.compare-index{width:50px;height:50px;border-radius:17px;display:grid;place-items:center;background:var(--panel-strong);box-shadow:var(--inset);font-weight:800;color:var(--accent)}.compare-card h3{margin:0 0 5px;font-size:18px}.compare-card p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.compare-tag{font-size:8px;font-weight:850;padding:8px 10px;border-radius:99px;white-space:nowrap}.compare-tag.safe{background:var(--accent-soft);color:var(--accent-dark)}.compare-tag.controlled{background:#e8edf5;color:#526d92}.action-line{display:flex;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.action-line:last-child{border-bottom:0}.action-line>span{width:34px;height:34px;border-radius:12px;background:var(--panel-strong);box-shadow:var(--shadow-sm);display:grid;place-items:center;color:var(--accent);font-size:10px;font-weight:900}.action-line strong{display:block;font-size:12px}.action-line small{color:var(--faint);font-size:9px}.watch-visual{height:450px;border-radius:43px;background:linear-gradient(145deg,#f8fafb,#e8eef0);box-shadow:var(--shadow);display:grid;place-items:center;position:relative;overflow:hidden}.watch-radar{width:275px;height:275px;border-radius:50%;position:relative;box-shadow:var(--shadow),var(--inset);background:repeating-radial-gradient(circle at 50% 50%,transparent 0 34px,rgba(47,117,107,.08) 35px 36px)}.radar-sweep{position:absolute;inset:16px;border-radius:50%;overflow:hidden;animation:scan 5s linear infinite}.radar-sweep:before{content:"";position:absolute;width:50%;height:50%;left:50%;background:linear-gradient(135deg,transparent,rgba(47,117,107,.20));clip-path:polygon(0 100%,100% 0,100% 100%)}.watch-center{position:absolute;inset:85px;border-radius:50%;background:var(--panel-strong);box-shadow:var(--shadow-sm);display:grid;place-content:center;text-align:center}.watch-center b{font-size:35px;letter-spacing:-.06em;color:var(--accent)}.watch-center small{font-size:9px;color:var(--faint)}.radar-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px rgba(47,117,107,.10)}.d1{left:62px;top:88px}.d2{right:55px;top:60px}.d3{right:80px;bottom:56px}.watch-label{position:absolute;bottom:30px;font-size:10px;color:var(--muted);display:flex;gap:9px;align-items:center}.feature-bento{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:20px}.bento-card{min-height:280px;padding:28px;border-radius:28px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.76);overflow:hidden}.bento-card.large{grid-row:span 2;min-height:580px}.bento-card.wide{grid-column:span 2}.bento-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:var(--accent);font-weight:850}.bento-card h3{font-size:25px;letter-spacing:-.045em;margin:16px 0}.bento-card p{font-size:12px;line-height:1.65;color:var(--muted)}.mini-timeline{display:grid;gap:12px;margin-top:52px}.mini-timeline span{display:grid;grid-template-columns:45px 1fr;gap:10px;font-size:9px;color:var(--faint);padding:13px;border-radius:16px;background:var(--panel-strong);box-shadow:var(--inset)}.mini-timeline b{color:#51625e;font-weight:650}.mini-timeline span:before{content:""}.mini-timeline .good{border-left:2px solid var(--accent)}.mini-timeline .warn{border-left:2px solid var(--warn)}.backup-orb{width:120px;height:120px;border-radius:50%;margin:35px auto 0;box-shadow:var(--shadow),var(--inset);display:grid;place-content:center;text-align:center}.backup-orb span{font-size:30px;color:var(--accent)}.backup-orb small{font-size:8px;color:var(--faint);margin-top:5px}.progress-list{display:grid;gap:17px;margin-top:35px}.progress-list span{display:grid;grid-template-columns:1fr auto;position:relative;padding-bottom:10px}.progress-list span:after,.progress-list i{content:"";position:absolute;left:0;bottom:0;height:4px;border-radius:99px}.progress-list span:after{right:0;background:#dde4e6}.progress-list i{width:var(--p);background:var(--accent);z-index:1}.progress-list b,.progress-list em{font-size:10px;font-style:normal}.identity-cloud{height:130px;position:relative;margin-top:26px}.identity-cloud span{position:absolute;padding:10px 12px;border-radius:999px;background:var(--panel-strong);box-shadow:var(--shadow-sm);font-size:8px;color:var(--accent);font-weight:850}.identity-cloud span:nth-child(1){left:10px;top:15px}.identity-cloud span:nth-child(2){right:15px;top:0}.identity-cloud span:nth-child(3){left:45px;bottom:10px}.identity-cloud span:nth-child(4){right:10px;bottom:20px}.month-report{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:34px}.month-report span{padding:16px;border-radius:17px;background:var(--panel-strong);box-shadow:var(--inset);font-size:8px;color:var(--faint)}.month-report b{display:block;font-size:21px;color:var(--accent-dark);margin-bottom:4px}.ai-layout{grid-template-columns:1fr 1fr}.ai-visual{height:470px;position:relative;border-radius:40px;background:linear-gradient(145deg,#f8fafb,#e9eef1);box-shadow:var(--shadow);display:grid;place-items:center;overflow:hidden}.ai-core{width:110px;height:110px;border-radius:35px;background:var(--panel-strong);box-shadow:var(--shadow);display:grid;place-items:center;color:var(--accent);font-weight:900;font-size:26px;z-index:2}.ai-path{position:absolute;border:1px solid rgba(47,117,107,.11);border-radius:50%}.p1{width:230px;height:230px}.p2{width:330px;height:330px}.p3{width:420px;height:420px;border-style:dashed;animation:rotate 35s linear infinite}.ai-chip{position:absolute;padding:10px 16px;border-radius:99px;background:var(--panel-strong);box-shadow:var(--shadow-sm);font-size:9px;font-weight:800;color:var(--accent)}.c1{left:55px;top:75px}.c2{right:60px;top:105px}.c3{left:80px;bottom:75px}.c4{right:60px;bottom:95px}.risk-stack{display:grid;gap:12px;transform:rotate(-4deg)}.risk-stack span{display:block;padding:18px 24px;border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm);font-size:14px;font-weight:750;color:#52645f}.risk-stack span:nth-child(2),.risk-stack span:nth-child(4){transform:translateX(35px)}.scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.scenario-card{padding:30px;min-height:390px;border-radius:29px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.75);display:flex;flex-direction:column}.scenario-num{font-size:10px;color:var(--accent);font-weight:850;letter-spacing:.1em}.scenario-card h3{font-size:24px;line-height:1.16;letter-spacing:-.04em;margin:38px 0 18px}.scenario-card p{font-size:12.5px;line-height:1.7;color:var(--muted)}.scenario-bottom{margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.scenario-bottom b{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--faint);margin-bottom:6px}.scenario-bottom span{font-size:10px;color:var(--accent-dark);font-weight:750}.analogy-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.layer-stack{display:grid;gap:12px;perspective:800px}.layer{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:19px 22px;border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.72);transform:translateX(calc(var(--i,0) * 10px))}.layer span{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--panel-strong);box-shadow:var(--inset);font-size:9px;color:var(--accent);font-weight:850}.layer b{font-size:13px}.layer small{color:var(--faint);font-size:9px}.l1{--i:0}.l2{--i:1}.l3{--i:2}.l4{--i:3}.l5{--i:4}.journal-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:end}.lead-story{padding:45px;border-radius:34px;background:var(--panel);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.76)}.story-meta{display:flex;justify-content:space-between;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--faint);font-weight:800}.story-meta span{color:var(--accent)}.lead-story-grid{display:grid;grid-template-columns:1fr 170px;gap:50px;align-items:start;margin-top:35px}.lead-story h2{font-size:42px;line-height:1.05;letter-spacing:-.05em}.lead-story p{font-size:14px;line-height:1.7;color:var(--muted)}.story-number{font-size:130px;line-height:.8;font-weight:700;letter-spacing:-.09em;color:#dfe6e8;text-align:right}.story-lesson{padding:18px 20px;border-radius:19px;background:var(--panel-strong);box-shadow:var(--inset);margin-top:24px}.story-lesson span{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:var(--accent);font-weight:850}.story-lesson p{font-size:11px;margin:7px 0 0}.story-links{display:flex;gap:12px;margin-top:28px}.story-links a{font-size:10px;color:var(--accent);font-weight:800}.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:22px}.story-card{padding:30px;border-radius:29px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.75)}.story-card h3{font-size:28px;letter-spacing:-.045em;margin:34px 0 15px}.story-card>p{font-size:12.5px;line-height:1.65;color:var(--muted)}.story-lesson.small{margin:20px 0}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-card{padding:30px;border-radius:29px;background:var(--panel);box-shadow:var(--shadow-sm);min-height:290px;display:flex;flex-direction:column}.guide-card>span{font-size:9px;color:var(--accent);font-weight:850;letter-spacing:.1em}.guide-card h3{font-size:21px;line-height:1.2;letter-spacing:-.035em;margin:35px 0 14px}.guide-card p{font-size:12px;line-height:1.65;color:var(--muted)}.guide-card a{margin-top:auto}.contact-hero{padding-top:170px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.contact-promises{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:38px;font-size:12px;color:var(--muted)}.contact-note{margin-top:34px;padding:18px 20px;border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm);display:flex;gap:15px;align-items:flex-start}.contact-note p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.contact-note b{color:var(--ink)}.form-shell{padding:10px;border-radius:38px;background:linear-gradient(145deg,#f7f9fa,#e8edef);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8)}.audit-form{padding:32px;border-radius:30px;background:rgba(247,249,250,.68);box-shadow:var(--inset)}.form-head{margin-bottom:30px}.form-head h2{font-size:29px;letter-spacing:-.045em;margin:7px 0}.form-head p{font-size:11px;color:var(--faint)}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.audit-form label{display:block;margin-bottom:15px}.audit-form label>span{display:block;font-size:9px;font-weight:800;color:#62736e;margin:0 0 8px 4px}.audit-form label>span em{font-style:normal;font-weight:500;color:var(--faint)}.audit-form input,.audit-form select,.audit-form textarea{width:100%;border:0;outline:0;padding:15px 16px;border-radius:15px;background:#eef2f4;box-shadow:var(--inset);color:var(--ink);font-size:12px;border:1px solid rgba(255,255,255,.68);transition:.2s}.audit-form input:focus,.audit-form select:focus,.audit-form textarea:focus{box-shadow:inset 4px 4px 10px rgba(155,168,176,.18),inset -4px -4px 10px white,0 0 0 3px rgba(47,117,107,.09)}.audit-form textarea{resize:vertical}.consent{display:flex!important;gap:11px;align-items:flex-start;margin:20px 0!important}.consent input{width:17px!important;height:17px;appearance:none;padding:0!important;border-radius:5px!important;cursor:pointer}.consent input:checked{background:var(--accent);box-shadow:none}.consent input:checked:after{content:"✓";display:grid;place-items:center;color:white;font-size:10px}.consent span{margin:1px 0 0!important;font-weight:500!important;line-height:1.5!important}.form-success{margin-top:16px;padding:15px;border-radius:17px;background:var(--accent-soft);display:flex;gap:12px;align-items:flex-start}.form-success>span{width:30px;height:30px;border-radius:50%;background:var(--accent);color:white;display:grid;place-items:center}.form-success strong{font-size:11px}.form-success p{font-size:9px;color:var(--muted);margin:4px 0}.form-success code{font-size:8px}.mini-process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.mini-process article{padding:26px;border-radius:25px;background:var(--panel);box-shadow:var(--shadow-sm)}.mini-process span{font-size:10px;color:var(--accent);font-weight:850}.mini-process h3{font-size:18px;margin:30px 0 10px}.mini-process p{font-size:11px;color:var(--muted);line-height:1.55}
/* animation */.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--delay,0ms)}.reveal.is-visible{opacity:1;transform:none}[data-delay="60"]{--delay:60ms}[data-delay="80"]{--delay:80ms}[data-delay="100"]{--delay:100ms}[data-delay="120"]{--delay:120ms}[data-delay="160"]{--delay:160ms}[data-delay="180"]{--delay:180ms}@keyframes scan{to{transform:rotate(360deg)}}@keyframes rotate{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes float{50%{transform:translateY(-8px)}}@keyframes pulse{0%{opacity:.8;transform:scale(.75)}70%,100%{opacity:0;transform:scale(1.25)}}@keyframes sheen{0%{background-position:center,-180% 0}100%{background-position:center,180% 0}}@view-transition{navigation:auto}
@media(max-width:980px){.nav-toggle{display:block}.nav-links{position:absolute;top:82px;left:18px;right:18px;display:none;padding:14px;background:rgba(244,247,248,.96);backdrop-filter:blur(20px);border-radius:26px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8)}.nav-links.open{display:grid}.nav-links a{display:block}.hero-grid,.page-hero-grid,.report-grid,.two-col,.result-layout,.ai-layout,.contact-grid,.journal-hero,.analogy-layout{grid-template-columns:1fr}.hero{padding-top:150px;min-height:auto}.hero-visual{max-width:650px;width:100%;margin:auto}.signal-grid{grid-template-columns:repeat(2,1fr)}.signal-intro{grid-column:span 2}.process-rail{grid-template-columns:repeat(2,1fr)}.process-progress{display:none}.service-grid,.audit-grid,.scenario-grid,.guide-grid{grid-template-columns:repeat(2,1fr)}.education-grid{grid-template-columns:1fr}.sticky-copy{position:static}.feature-bento{grid-template-columns:repeat(2,1fr)}.bento-card.large{grid-row:auto;min-height:350px}.bento-card.wide{grid-column:span 2}.footer-grid{grid-template-columns:1fr 1fr}.footer-note{grid-column:span 2}.contact-copy{padding-top:30px}.story-grid{grid-template-columns:1fr}.lead-story-grid{grid-template-columns:1fr 100px}}
/* ── Stat band ────────────────────────────────── */
.stat-band{
  padding:22px 0;
  background:linear-gradient(90deg,rgba(247,249,250,.0),rgba(247,249,250,.55),rgba(247,249,250,.0));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.stat-band-inner{
  display:flex;
  align-items:center;
  gap:0;
  flex-wrap:wrap;
}
.sb-item{
  display:flex;
  align-items:baseline;
  gap:9px;
  padding:0 32px;
  flex-shrink:0;
}
.sb-item strong{
  font-size:32px;
  letter-spacing:-.055em;
  font-weight:760;
  color:var(--accent-dark);
  line-height:1;
}
.sb-item span{font-size:12px;color:var(--muted);max-width:160px;line-height:1.4}
.sb-divider{width:1px;height:44px;background:var(--line);flex-shrink:0}
.sb-news{
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 32px;
  font-size:12.5px;
  flex:1;
  flex-wrap:wrap;
}
.sb-date{
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--alarm);
  background:var(--alarm-soft);
  padding:4px 9px;
  border-radius:99px;
  flex-shrink:0;
}
.sb-news span{color:var(--muted)}
.sb-news a{font-size:11px;font-weight:800;color:var(--accent);flex-shrink:0;transition:.2s}
.sb-news a:hover{color:var(--accent-dark)}

/* ── Surface d'attaque redesignée ─────────────── */
.surface-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:32px;
  margin-bottom:0;
}
.surface-header .section-heading{margin-bottom:0}
.surface-cta-inline{flex-shrink:0;padding-bottom:4px}
.new-surface-map{
  position:relative;
  height:660px;
  border-radius:48px;
  background:linear-gradient(145deg,#f6f9fb,#eaeef1);
  box-shadow:var(--shadow);
  border:1px solid rgba(255,255,255,.76);
  overflow:hidden;
  margin-top:52px;
}
.new-surface-map::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 46%,rgba(47,117,107,.07),transparent 42%);
  pointer-events:none;
}
.surface-lines{
  position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;
}
/* Hub */
.surface-hub{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  width:130px;height:130px;
  z-index:4;
}
.hub-label{
  position:absolute;inset:0;
  border-radius:50%;
  background:var(--panel);
  box-shadow:var(--shadow);
  display:grid;place-items:center;
  text-align:center;
  font-size:12.5px;
  font-weight:780;
  letter-spacing:-.025em;
  line-height:1.3;
  z-index:2;
}
.hub-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(47,117,107,.1);
  pointer-events:none;
}
.r1{inset:-38px;animation:hubPulse 4s ease-out infinite}
.r2{inset:-80px;animation:hubPulse 4s ease-out infinite;animation-delay:-2s}
@keyframes hubPulse{0%{opacity:.65;transform:scale(.88)}100%{opacity:0;transform:scale(1.06)}}
.hub-sweep{
  position:absolute;inset:0;
  border-radius:50%;
  overflow:hidden;
  animation:hubSweep 5s linear infinite;
  z-index:1;
}
.hub-sweep::before{
  content:"";
  position:absolute;
  width:50%;height:50%;
  left:50%;top:0;
  background:conic-gradient(from 0deg,transparent,rgba(47,117,107,.18));
  transform-origin:left bottom;
}
@keyframes hubSweep{to{transform:rotate(360deg)}}

/* Service nodes */
.svc-node{
  position:absolute;
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 16px;
  border-radius:20px;
  background:rgba(247,249,250,.88);
  backdrop-filter:blur(14px) saturate(160%);
  -webkit-backdrop-filter:blur(14px) saturate(160%);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.82);
  cursor:pointer;
  transition:.35s var(--ease);
  z-index:3;
  transform:translate(-50%,-50%);
  white-space:nowrap;
}
.svc-node:hover{
  transform:translate(-50%,-50%) scale(1.04);
  box-shadow:12px 12px 28px rgba(158,170,178,.26),-11px -11px 28px white,0 0 30px rgba(47,117,107,.1);
  z-index:5;
}
/* Node positions */
#snode-ssh{left:13%;top:16%}
#snode-mail{left:80%;top:13%}
#snode-vpn{left:91%;top:48%}
#snode-admin{left:78%;top:80%}
#snode-api{left:38%;top:88%}
#snode-web{left:11%;top:76%}
#snode-cloud{left:48%;top:7%}
.svc-icon-wrap{
  width:34px;height:34px;
  border-radius:11px;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  display:grid;place-items:center;
  flex-shrink:0;
  transition:.35s var(--ease);
}
.svc-icon{font-size:15px;font-weight:700;color:var(--ink)}
.svc-info strong{display:block;font-size:12px;font-weight:750;color:var(--ink)}
.svc-info small{display:block;font-size:9.5px;color:var(--faint);margin-top:1px}
.svc-state{
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  padding:4px 8px;
  border-radius:99px;
  background:rgba(200,210,207,.35);
  color:var(--faint);
  transition:.4s var(--ease);
  flex-shrink:0;
}
/* State: analysing */
.svc-node[data-state="analysing"] .svc-state{
  background:var(--accent-soft);
  color:var(--accent-dark);
  animation:sNodeBlink 1.2s ease-in-out infinite;
}
.svc-node[data-state="analysing"] .svc-icon-wrap{background:var(--accent-soft);box-shadow:none}
.svc-node[data-state="analysing"] .svc-icon{color:var(--accent)}
@keyframes sNodeBlink{0%,100%{opacity:1}50%{opacity:.5}}
/* State: exposed */
.svc-node[data-state="exposed"]{border-color:rgba(192,57,43,.28);background:rgba(255,246,245,.92)}
.svc-node[data-state="exposed"] .svc-state{background:var(--alarm-soft);color:var(--alarm);animation:none}
.svc-node[data-state="exposed"] .svc-icon-wrap{background:rgba(192,57,43,.09);box-shadow:none}
.svc-node[data-state="exposed"] .svc-icon{color:var(--alarm)}
/* State: secured */
.svc-node[data-state="secured"]{border-color:rgba(47,117,107,.22);background:rgba(240,248,244,.92)}
.svc-node[data-state="secured"] .svc-state{background:var(--ok-soft);color:var(--accent-dark);animation:none}
.svc-node[data-state="secured"] .svc-icon-wrap{background:var(--accent-soft);box-shadow:none}
.svc-node[data-state="secured"] .svc-icon{color:var(--accent-dark)}

/* Surface detail panel */
.surface-detail{
  position:absolute;
  bottom:22px;left:50%;
  transform:translateX(-50%);
  width:min(580px,calc(100% - 48px));
  padding:18px 24px;
  border-radius:22px;
  background:rgba(247,249,250,.88);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.8);
  z-index:4;
  text-align:center;
}
.sd-idle{
  display:flex;gap:10px;align-items:center;justify-content:center;
  font-size:12px;color:var(--faint);font-weight:600;
}
.sd-content{text-align:left}
.sd-title{font-size:13px;font-weight:800;color:var(--ink);margin-bottom:6px}
.sd-desc{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:10px}
.sd-checks{
  display:flex;gap:6px;flex-wrap:wrap;
}
.sd-checks span{
  font-size:9.5px;font-weight:750;
  padding:4px 9px;border-radius:99px;
  background:var(--panel-strong);box-shadow:var(--inset);
  color:var(--accent-dark);
}

/* Surface legend */
.surface-legend{
  position:absolute;top:20px;right:22px;
  display:flex;flex-direction:column;gap:7px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(247,249,250,.85);
  backdrop-filter:blur(10px);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.78);
}
.sl-item{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;color:var(--muted)}
.sl-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.sl-unknown{background:#bec8c6}
.sl-scan{background:var(--accent)}
.sl-exposed{background:var(--alarm)}
.sl-secure{background:#2fa88f}

/* ── Diff section ─────────────────────────────── */
.diff-layout{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:0;
  margin-top:52px;
  border-radius:36px;
  overflow:hidden;
  box-shadow:var(--shadow);
  border:1px solid rgba(255,255,255,.72);
}
.diff-col{padding:44px 40px}
.diff-scanner{background:linear-gradient(145deg,#f5f7f9,#edf0f2)}
.diff-elvia{background:linear-gradient(145deg,#eef7f3,#e5f2ed)}
.diff-col-header{margin-bottom:20px}
.diff-label-tag{
  font-size:11px;font-weight:850;
  letter-spacing:.08em;text-transform:uppercase;
  padding:7px 14px;border-radius:99px;
  background:var(--panel-strong);box-shadow:var(--shadow-sm);
  color:var(--muted);
}
.diff-label-elvia{background:var(--accent-soft);color:var(--accent-dark);box-shadow:none}
.diff-quote{
  font-size:17px;font-weight:600;line-height:1.45;
  letter-spacing:-.02em;color:var(--ink);
  border-left:3px solid var(--line);
  padding-left:18px;margin:0 0 28px;
  font-style:normal;
}
.diff-elvia .diff-quote{border-left-color:var(--accent)}
.diff-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.diff-bad,.diff-good{display:flex;align-items:flex-start;gap:12px;font-size:13.5px;line-height:1.55;color:#53655f}
.diff-bad span,.diff-good i{
  width:22px;height:22px;border-radius:8px;
  display:grid;place-items:center;
  flex-shrink:0;font-size:11px;font-weight:900;margin-top:1px;
}
.diff-bad span{background:rgba(183,92,87,.1);color:var(--danger)}
.diff-good i{background:var(--accent-soft);box-shadow:none}
.diff-good i::after{content:"✓";font-style:normal;font-size:11px;font-weight:900;color:var(--accent-dark)}
.diff-vs{
  width:60px;display:flex;align-items:center;justify-content:center;
  background:var(--panel);
  font-size:11px;font-weight:850;letter-spacing:.08em;
  color:var(--faint);writing-mode:vertical-rl;text-orientation:mixed;
}

/* ── FAIL → RETEST → SECURED ─────────────────── */
.report-section-layout{
  display:grid;grid-template-columns:1fr 1fr;
  gap:70px;align-items:start;
}
.report-section-left .overline{margin-bottom:18px;display:block}
.report-section-left h2{font-size:clamp(34px,4vw,52px);line-height:1.06;letter-spacing:-.055em;margin:12px 0 18px}
.report-section-left>p{font-size:16px;line-height:1.7;color:var(--muted);margin:0 0 36px}
.frs-track{display:flex;flex-direction:column;gap:0}
.frs-step{
  display:flex;align-items:center;gap:16px;
  padding:18px 20px;
  border-radius:20px;
  background:var(--panel);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.76);
  transition:.3s var(--ease);
}
.frs-step:hover{transform:translateX(6px)}
.frs-badge-wrap{flex-shrink:0}
.frs-badge{
  font-size:10px;font-weight:900;letter-spacing:.1em;
  padding:8px 13px;border-radius:12px;
}
.frs-fail .frs-badge{background:var(--alarm-soft);color:var(--alarm)}
.frs-retest .frs-badge{background:var(--warn-soft);color:var(--warn-mid)}
.frs-secured .frs-badge{background:var(--ok-soft);color:var(--accent-dark)}
.frs-info strong{display:block;font-size:13px;font-weight:750;color:var(--ink)}
.frs-info span{font-size:11px;color:var(--faint)}
.frs-arrow{
  display:flex;align-items:center;gap:12px;
  padding:0 20px;margin:6px 0;
}
.frs-line{
  width:3px;height:24px;border-radius:99px;
  background:linear-gradient(to bottom,var(--line),var(--accent-soft));
  margin-left:31px;flex-shrink:0;
}
.frs-arrow span{font-size:10px;font-weight:800;color:var(--faint);letter-spacing:.07em;text-transform:uppercase}

/* Report card demo */
.report-card-demo{
  padding:28px;
  border-radius:30px;
  background:linear-gradient(145deg,#f7f9fa,#ebeff2);
  box-shadow:var(--shadow);
  border:1px solid rgba(255,255,255,.78);
  transform-style:preserve-3d;
}
.rcd-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.rcd-priority{font-size:9px;font-weight:900;letter-spacing:.12em;padding:7px 12px;border-radius:99px}
.rcd-critical{background:var(--alarm-soft);color:var(--alarm)}
.rcd-ref{font-size:9px;font-weight:700;color:var(--faint);letter-spacing:.06em}
.rcd-title{font-size:19px;letter-spacing:-.03em;margin:0 0 20px;line-height:1.25}
.rcd-rows{display:grid;gap:12px}
.rcd-row{padding:13px 15px;border-radius:15px;background:rgba(248,250,251,.7);box-shadow:var(--shadow-sm)}
.rcd-row-correction{background:rgba(230,248,240,.5);box-shadow:none;border:1px solid rgba(47,117,107,.1)}
.rcd-label{
  display:block;font-size:8px;font-weight:900;letter-spacing:.12em;
  text-transform:uppercase;color:var(--faint);margin-bottom:5px;
}
.rcd-label-fix{color:var(--accent-dark)}
.rcd-row p{font-size:11.5px;line-height:1.6;color:var(--ink);margin:0}
.rcd-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.rcd-status{font-size:9.5px;font-weight:800;padding:6px 11px;border-radius:99px}
.rcd-status-open{background:var(--alarm-soft);color:var(--alarm)}
.rcd-date{font-size:9.5px;color:var(--faint)}

/* ── Attack timeline ─────────────────────────── */
.atk-layout{max-width:760px}
.atk-header{margin-bottom:52px}
.atk-timeline{display:grid;gap:0}
.atk-step{
  display:grid;grid-template-columns:64px 1fr;gap:22px;
  align-items:start;padding:24px 0;
}
.atk-step.atk-step-danger .atk-body h3{color:var(--alarm)}
.atk-num{
  width:52px;height:52px;border-radius:18px;
  display:grid;place-items:center;
  background:var(--panel);box-shadow:var(--shadow-sm);
  font-size:12px;font-weight:850;color:var(--accent);
  flex-shrink:0;
}
.atk-num-danger{background:var(--alarm-soft);color:var(--alarm)}
.atk-body h3{font-size:20px;letter-spacing:-.03em;margin:0 0 8px}
.atk-body p{font-size:13.5px;line-height:1.7;color:var(--muted);margin:0}
.atk-connector{
  width:1px;height:32px;margin-left:26px;
  background:linear-gradient(to bottom,var(--line),var(--accent-soft));
}
.atk-connector-last{background:linear-gradient(to bottom,var(--accent-soft),rgba(192,57,43,.25))}
.atk-action{
  margin-top:40px;
  padding:28px 32px;
  border-radius:24px;
  background:var(--panel);
  box-shadow:var(--shadow-sm);
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  flex-wrap:wrap;
}
.atk-action p{font-size:15px;font-weight:600;color:var(--ink);margin:0}
.atk-action strong{color:var(--accent)}

/* ── Services editorial ───────────────────────── */
.services-editorial{display:grid;gap:2px;margin-top:52px}
.se-item{
  display:grid;grid-template-columns:80px 1fr;gap:28px;
  padding:36px 32px;border-radius:28px;
  background:var(--panel);box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.75);
  transition:.3s var(--ease);align-items:start;
}
.se-item:hover{transform:translateX(6px);box-shadow:var(--shadow)}
.se-number{
  font-size:42px;font-weight:700;letter-spacing:-.07em;
  color:#dde5e3;line-height:1;padding-top:6px;
  user-select:none;
}
.se-icon-group{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.se-icon{
  width:44px;height:44px;border-radius:15px;
  background:var(--panel-strong);box-shadow:var(--shadow-sm);
  position:relative;
}
.se-icon::before{
  content:"";position:absolute;
  width:16px;height:20px;
  border:2px solid var(--accent);border-radius:8px 8px 10px 10px;
  left:14px;top:12px;
}
.se-icon-fix::before{display:none}
.se-icon-fix::after{
  content:"";position:absolute;
  inset:12px;border-radius:6px;
  border:2px solid var(--accent);
  background:var(--accent-soft);
}
.se-icon-radar{position:relative}
.se-icon-radar::before{display:none}
.se-icon-radar::after{
  content:"";position:absolute;
  inset:12px;border-radius:50%;
  border:2px solid var(--accent);
  box-shadow:inset 0 0 0 4px var(--accent-soft);
}
.se-tag{font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.se-content h3{font-size:21px;letter-spacing:-.035em;margin:0 0 10px}
.se-content p{font-size:13px;line-height:1.68;color:var(--muted);margin:0 0 16px}
.se-cycle{
  display:flex;align-items:center;gap:10px;
  font-size:11.5px;font-weight:750;color:var(--accent-dark);
}
.se-arrow{color:var(--faint)}

/* ── AI + Experts visual ─────────────────────── */
.ai-expert-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}
.aie-visual{display:flex;flex-direction:column;align-items:center;gap:28px}
.aie-orb{
  position:relative;width:220px;height:220px;
  display:grid;place-items:center;
}
.aie-inner{
  width:150px;height:150px;border-radius:50%;
  background:var(--panel);box-shadow:var(--shadow);
  display:grid;place-content:center;text-align:center;
  gap:10px;z-index:2;position:relative;
}
.aie-label{font-size:11px;font-weight:850;color:var(--accent);letter-spacing:.06em}
.aie-chips{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;padding:0 8px}
.aie-chips span{
  font-size:8.5px;font-weight:750;
  padding:4px 8px;border-radius:99px;
  background:var(--accent-soft);color:var(--accent-dark);
}
.aie-ring{
  position:absolute;border-radius:50%;
  border:1px solid rgba(47,117,107,.1);
}
.aie-ring.r1{inset:12px;animation:aieRing 4s ease-in-out infinite}
.aie-ring.r2{inset:-12px;animation:aieRing 4s ease-in-out infinite;animation-delay:-2s;border-style:dashed}
@keyframes aieRing{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:.2;transform:scale(1.04)}}
.aie-expert-row{display:flex;gap:10px;justify-content:center}
.aie-expert-node{
  padding:11px 16px;border-radius:16px;
  background:var(--panel);box-shadow:var(--shadow-sm);
  font-size:11px;font-weight:750;color:#53645f;
}

/* ── Signal strip (legacy removal / compat) ─── */
.signal-strip{display:none}

/* ── svc-node-active ─────────────────────────── */
.svc-node-active{
  box-shadow:12px 12px 28px rgba(158,170,178,.26),-11px -11px 28px white,0 0 0 2px var(--accent)!important;
  z-index:6!important;
}

/* ── FRS hidden / visible states ─────────────── */
.frs-hidden{
  opacity:0;
  transform:translateX(-14px);
  transition:.55s cubic-bezier(.16,1,.3,1);
}
.frs-visible{
  opacity:1;
  transform:translateX(0);
}

/* ── Typography global improvements ──────────── */
h1,h2,h3{font-feature-settings:"ss01","cv01"}
.hero h1{font-size:clamp(50px,5.8vw,82px)}
/* Prevent number widths jumping during counter animation */
.sb-item strong{min-width:3.5ch;display:inline-block;font-variant-numeric:tabular-nums}

/* ── Section transitions — gradient dividers ─── */
section+section{position:relative}
.soft-section::before{
  content:"";
  display:block;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(47,117,107,.12),transparent);
  position:absolute;top:0;left:0;right:0;
}
.soft-section::after{
  content:"";
  display:block;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(47,117,107,.08),transparent);
  position:absolute;bottom:0;left:0;right:0;
}

/* ── Clean list icon fix ─────────────────────── */
.clean-list .check{flex-shrink:0}

/* ── Story grid ──────────────────────────────── */
.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:22px}

/* ── Guide grid ──────────────────────────────── */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

/* ── Ensure stat counters don't flicker ─────── */
[data-count]{display:inline-block;min-width:2ch;text-align:right;font-variant-numeric:tabular-nums}

/* ── Responsive ───────────────────────────────── */
@media(max-width:1050px){
  .diff-layout{grid-template-columns:1fr;border-radius:24px}
  .diff-vs{width:100%;height:44px;writing-mode:horizontal-tb;justify-content:center}
  .report-section-layout{grid-template-columns:1fr}
  .ai-expert-layout{grid-template-columns:1fr}
  .new-surface-map{height:520px}
  #snode-ssh{left:10%;top:14%}
  #snode-mail{left:82%;top:12%}
  #snode-vpn{left:91%;top:50%}
  #snode-admin{left:76%;top:80%}
  #snode-api{left:35%;top:88%}
  #snode-web{left:9%;top:76%}
  #snode-cloud{left:46%;top:6%}
}
@media(max-width:680px){
  .stat-band-inner{flex-direction:column;gap:16px;align-items:flex-start}
  .sb-divider{width:100%;height:1px}
  .sb-item{padding:0 16px}
  .sb-news{padding:0 16px}
  .surface-cta-inline{display:none}
  .new-surface-map{height:480px}
  #snode-ssh{left:8%;top:12%}
  #snode-mail{left:75%;top:10%}
  #snode-vpn{left:89%;top:46%}
  #snode-admin{left:72%;top:78%}
  #snode-api{left:30%;top:88%}
  #snode-web{left:8%;top:74%}
  #snode-cloud{left:44%;top:6%}
  .svc-node{padding:8px 11px}
  .svc-info small{display:none}
  .diff-col{padding:28px 22px}
  .diff-quote{font-size:15px}
  .se-item{grid-template-columns:1fr;gap:12px;padding:24px 22px}
  .se-number{font-size:30px;padding-top:0}
  .atk-step{grid-template-columns:50px 1fr}
  .atk-action{flex-direction:column;align-items:flex-start}
  .surface-legend{top:auto;right:auto;bottom:70px;left:50%;transform:translateX(-50%);flex-direction:row;white-space:nowrap}
}

@media(max-width:680px){.container{width:min(100% - 28px,1180px)}.section-space{padding:82px 0}.site-header{top:10px;padding:0 10px}.nav-shell{height:60px;padding-left:13px}.brand-mark{width:32px;height:32px}.brand-word{font-size:16px}.hero{padding-top:120px}.hero h1,.page-hero h1,.contact-hero h1{font-size:46px}.hero-lead{font-size:16px}.hero-actions{align-items:stretch}.btn{width:100%}.trust-row{display:grid;gap:9px}.lens-stage{height:470px}.risk-lens{width:205px;height:205px}.orbit-one{width:290px;height:290px}.orbit-two{width:350px;height:350px}.float-pill{padding:8px 10px}.float-pill small{display:none}.pill-mail{left:13px;top:58px}.pill-remote{right:13px;top:76px}.pill-data{left:15px;bottom:75px}.pill-backup{right:14px;bottom:61px}.signal-grid{grid-template-columns:1fr}.signal-intro{grid-column:auto}.section-heading h2{font-size:40px}.attack-map{height:760px}.attack-center{top:39%}.company-orb{width:125px;height:125px;font-size:18px}.attack-node{width:145px;padding:13px}.attack-node strong{font-size:12px}.attack-node small{font-size:9px}.node-1{left:4%;top:12%}.node-2{right:4%;top:13%}.node-3{left:4%;bottom:27%}.node-4{right:4%;bottom:27%}.node-5{top:3%}.attack-detail{bottom:16px}.process-rail,.service-grid,.audit-grid,.scenario-grid,.guide-grid,.mini-process{grid-template-columns:1fr}.report-grid,.education-grid{gap:50px}.cta-card{padding:60px 22px}.footer-grid{grid-template-columns:1fr}.footer-note{grid-column:auto}.footer-bottom{gap:18px;flex-direction:column}.compact-hero{padding-top:135px;min-height:auto}.audit-stamp,.watch-visual{height:380px}.compare-card{grid-template-columns:45px 1fr}.compare-tag{grid-column:2}.feature-bento{grid-template-columns:1fr}.bento-card.wide{grid-column:auto}.month-report{grid-template-columns:repeat(2,1fr)}.ai-visual{height:390px}.risk-stack{margin:0 22px}.scenario-card{min-height:330px}.layer{grid-template-columns:38px 1fr}.layer small{grid-column:2}.lead-story{padding:25px}.lead-story-grid{grid-template-columns:1fr}.lead-story h2{font-size:31px}.story-number{display:none}.field-grid,.contact-promises{grid-template-columns:1fr}.audit-form{padding:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}

/* ═══════════════════════════════════════════════════════
   PREMIUM UX LAYER — ElviaSecure Enhanced Experience
   ═══════════════════════════════════════════════════════ */

/* 1 · Animated ambient orbs */
@keyframes driftA{0%,100%{transform:translate(0,0) scale(1)}40%{transform:translate(-50px,60px) scale(1.16)}75%{transform:translate(30px,-38px) scale(.9)}}
@keyframes driftB{0%,100%{transform:translate(0,0) scale(1)}38%{transform:translate(55px,-32px) scale(1.12)}72%{transform:translate(-28px,45px) scale(.88)}}
.ambient-a{animation:driftA 22s ease-in-out infinite;opacity:.24}
.ambient-b{animation:driftB 28s ease-in-out infinite;opacity:.18}

/* 2 · Grain texture — instant premium feel */
body::after{content:"";position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:9998;opacity:.034;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");background-size:220px 220px;animation:grain 10s steps(8) infinite}
@keyframes grain{0%,100%{transform:translate(0,0)}13%{transform:translate(-5%,-8%)}25%{transform:translate(7%,-2%)}38%{transform:translate(-2%,9%)}50%{transform:translate(5%,-5%)}63%{transform:translate(-7%,3%)}75%{transform:translate(3%,7%)}88%{transform:translate(-5%,-3%)}}

/* 3 · Scroll progress bar */
.scroll-bar{position:fixed;top:0;left:0;height:2.5px;width:0%;background:linear-gradient(90deg,var(--accent) 0%,var(--mint) 50%,var(--accent) 100%);background-size:200% 100%;animation:barGlow 3s linear infinite;z-index:9999;border-radius:0 2px 2px 0;box-shadow:0 0 12px rgba(47,117,107,.65),0 0 28px rgba(47,117,107,.3)}
@keyframes barGlow{to{background-position:-200% 0}}

/* 4 · Cursor glow (activé via JS) */
.cursor-glow{position:fixed;width:960px;height:960px;border-radius:50%;background:radial-gradient(circle,rgba(47,117,107,.055) 0%,transparent 60%);pointer-events:none;z-index:1;transform:translate(-50%,-50%);will-change:left,top}

/* 5 · Hero — dot grid texture */
.hero{position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(rgba(47,117,107,.072) 1px,transparent 1px);background-size:26px 26px;mask-image:radial-gradient(ellipse 92% 88% at 68% 42%,black 8%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse 92% 88% at 68% 42%,black 8%,transparent 70%)}
.hero>.container{position:relative;z-index:1}

/* 6 · Bouton shimmer — sweep lumineux au hover */
.btn-primary,.nav-cta{position:relative;overflow:hidden}
.btn-primary::after,.nav-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(108deg,transparent 28%,rgba(255,255,255,.38) 50%,transparent 72%);transform:translateX(-160%);transition:transform .72s var(--ease);pointer-events:none}
.btn-primary:hover::after,.nav-cta:hover::after{transform:translateX(160%)}

/* 7 · Glows colorés — cartes */
.service-card:hover{transform:translateY(-8px);box-shadow:17px 17px 38px rgba(158,170,178,.28),-16px -16px 38px white,0 0 65px rgba(47,117,107,.09)}
.service-card.featured{border:1px solid rgba(47,117,107,.22)}
.service-card.featured:hover{box-shadow:18px 18px 42px rgba(47,117,107,.16),-17px -17px 42px rgba(255,255,255,.9),0 0 95px rgba(47,117,107,.15)}
.metric-card{transition:.35s var(--ease)}
.metric-card:hover{transform:translateY(-6px);box-shadow:14px 14px 30px rgba(158,170,178,.26),-13px -13px 30px white,0 0 38px rgba(47,117,107,.08)}
.edu-card{transition:.3s var(--ease)}
.edu-card:hover{transform:translateX(11px);box-shadow:14px 14px 30px rgba(158,170,178,.25),-13px -13px 30px white,0 0 32px rgba(47,117,107,.08)}
.process-step{transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.process-step:hover{transform:translateY(-8px);box-shadow:17px 17px 40px rgba(158,170,178,.28),-16px -16px 40px white,0 0 45px rgba(47,117,107,.1)}
.step-number{transition:box-shadow .3s var(--ease)}
.process-step:hover .step-number{box-shadow:var(--shadow-sm),0 0 18px rgba(47,117,107,.2)}
.guide-card{transition:.3s var(--ease)}
.guide-card:hover{transform:translateY(-7px);box-shadow:16px 16px 38px rgba(158,170,178,.27),-15px -15px 38px white,0 0 38px rgba(47,117,107,.09)}
.story-card{transition:.3s var(--ease)}
.story-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.compare-card{transition:.3s var(--ease)}
.compare-card:hover{transform:translateX(9px);box-shadow:var(--shadow)}
.bento-card{transition:.3s var(--ease)}
.bento-card:hover{transform:translateY(-5px);box-shadow:16px 16px 38px rgba(158,170,178,.27),-15px -15px 38px white,0 0 36px rgba(47,117,107,.09)}

/* 8 · Attack nodes glow */
.attack-node:hover,.attack-node.is-active{box-shadow:16px 16px 36px rgba(158,170,178,.27),-15px -15px 36px white,0 0 38px rgba(47,117,107,.15)}

/* 9 · Findings hover */
.finding{transition:.25s var(--ease);cursor:default}
.finding:hover{transform:translateX(6px)}
.finding.high:hover{box-shadow:9px 9px 22px rgba(158,170,178,.2),-8px -8px 22px white,0 0 18px rgba(183,92,87,.08)}
.finding.ok:hover{box-shadow:9px 9px 22px rgba(158,170,178,.2),-8px -8px 22px white,0 0 18px rgba(47,117,107,.1)}

/* 10 · Nav premium */
.nav-cta:hover{transform:translateY(-2px);box-shadow:12px 12px 26px rgba(31,92,84,.3),-8px -8px 20px rgba(255,255,255,.68),0 0 34px rgba(47,117,107,.22)}
.brand-mark{transition:box-shadow .3s var(--ease)}
.brand:hover .brand-mark{box-shadow:var(--shadow-sm),0 0 26px rgba(47,117,107,.22)}

/* 11 · Section h2 — ligne de soulignement animée au scroll */
.section-heading h2{position:relative;display:inline-block}
.section-heading.centered h2{display:block}
.section-heading h2::after{content:"";position:absolute;left:0;bottom:-10px;height:3px;width:0;background:linear-gradient(90deg,var(--accent),var(--mint));border-radius:99px;transition:width 1.4s var(--ease);transition-delay:.4s}
.section-heading.centered h2::after{left:50%;transform:translateX(-50%)}
.section-heading.reveal.is-visible h2::after{width:52px}

/* 12 · Overline / eyebrow — entrée animée */
@keyframes fadeSlideUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.reveal.is-visible .overline,.reveal.is-visible .eyebrow{animation:fadeSlideUp .6s var(--ease) .08s both}

/* 13 · Lens stage — sweep de lumière */
.lens-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(132deg,transparent 36%,rgba(255,255,255,.58) 50%,transparent 64%);background-size:260% 260%;animation:lensSweep 9s ease-in-out infinite}
@keyframes lensSweep{0%,100%{background-position:220% 220%}50%{background-position:-220% -220%}}

/* 14 · CTA card — halo centré */
.cta-card{isolation:isolate}
.cta-card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse 78% 65% at 50% 35%,rgba(47,117,107,.072),transparent);pointer-events:none;z-index:-1}

/* 15 · Service icons glow au hover parent */
.service-icon{transition:box-shadow .3s var(--ease)}
.service-card:hover .service-icon{box-shadow:var(--shadow-sm),0 0 24px rgba(47,117,107,.16)}

/* 16 · Radar dots — pulsation continue */
.radar-dot{animation:radarPing 3s ease-out infinite}
.d2{animation-delay:-1s}
.d3{animation-delay:-2s}
@keyframes radarPing{0%,100%{box-shadow:0 0 0 0 rgba(47,117,107,.45)}70%{box-shadow:0 0 0 11px rgba(47,117,107,0)}}

/* 17 · Footer links */
.footer-links a{transition:.22s var(--ease);display:inline-block}
.footer-links a:hover{color:var(--accent);transform:translateX(6px)}

/* 18 · Form input — focus glow */
.audit-form input:focus,.audit-form select:focus,.audit-form textarea:focus{box-shadow:inset 4px 4px 10px rgba(155,168,176,.18),inset -4px -4px 10px white,0 0 0 2.5px rgba(47,117,107,.22),0 0 24px rgba(47,117,107,.08)}

/* 19 · Stamp ring hover */
.stamp-ring{transition:.4s var(--ease)}
.audit-stamp:hover .stamp-ring{box-shadow:var(--shadow),var(--inset),0 0 50px rgba(47,117,107,.16)}

/* 20 · Float pills — backdrop renforcé */
.float-pill{backdrop-filter:blur(20px) saturate(200%);-webkit-backdrop-filter:blur(20px) saturate(200%)}

/* 21 · Reveal — animation plus dramatique avec scale */
.reveal{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--delay,0ms)}
.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}

/* 22 · Eyebrow dot pulse */
.eyebrow-dot,.status-dot{animation:eyeDot 2.8s ease-out infinite}
@keyframes eyeDot{0%,100%{box-shadow:0 0 0 0 rgba(47,117,107,.45),0 0 0 5px rgba(47,117,107,.1)}60%{box-shadow:0 0 0 6px rgba(47,117,107,0),0 0 0 0 rgba(47,117,107,0)}}

/* 23 · Score ring — anneau animé */
.score-ring{transition:background 1.2s var(--ease)}

/* 24 · Text link arrow */
.text-link{transition:gap .25s var(--ease)}
.text-link:hover{gap:6px}

/* 25 · Nav links — indicateur actif sous le texte */
.nav-links>a:not(.nav-cta){position:relative}
.nav-links>a:not(.nav-cta).active::after{content:"";position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:16px;height:2px;border-radius:99px;background:var(--accent)}

/* 26 · Audit card hover */
.audit-card{transition:.3s var(--ease)}
.audit-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}

/* 27 · Scenario card hover */
.scenario-card{transition:.3s var(--ease)}
.scenario-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}

/* 28 · Layer stack hover */
.layer{transition:.3s var(--ease)}
.layer:hover{transform:translateX(calc(var(--i,0) * 10px + 8px));box-shadow:var(--shadow)}

/* ═══════════════════════════════════════════════════════
   NOUVEAUX COMPOSANTS — Risques / Audit / Journal
   ═══════════════════════════════════════════════════════ */

/* ── Variables danger ─────────────────────────── */
:root{
  --alarm:#c0392b;
  --alarm-soft:#fce8e6;
  --alarm-mid:#e74c3c;
  --warn-soft:#fdf3e3;
  --warn-mid:#e67e22;
  --ok-soft:#e8f5f0;
}

/* ── Attack ticker ────────────────────────────── */
.attack-ticker-wrap{
  position:relative;
  display:flex;
  align-items:stretch;
  overflow:hidden;
  background:rgba(192,57,43,.06);
  border-bottom:1px solid rgba(192,57,43,.14);
  font-size:11.5px;
  font-weight:650;
  height:38px;
  margin-top:107px;
}
.ticker-danger-label{
  flex-shrink:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:var(--alarm);
  color:white;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
  z-index:2;
}
.attack-ticker-inner{
  flex:1;
  overflow:hidden;
  display:flex;
  align-items:center;
  mask-image:linear-gradient(90deg,transparent,black 4%,black 96%,transparent);
}
.attack-ticker-track{
  display:flex;
  gap:22px;
  white-space:nowrap;
  color:#5c3a37;
  animation:tickerScroll 32s linear infinite;
}
.attack-ticker-track span{display:inline-block}
.tick-sep{color:var(--alarm);opacity:.5}
@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── Alarm blink ─────────────────────────────── */
.alarm-blink{
  display:inline-block;
  width:7px;height:7px;
  border-radius:50%;
  background:white;
  animation:blinkAlarm 1.2s ease-in-out infinite;
  flex-shrink:0;
}
@keyframes blinkAlarm{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(255,255,255,.5)}50%{opacity:.4;box-shadow:0 0 0 6px rgba(255,255,255,0)}}

/* ── Risk hero section ──────────────────────── */
.risk-hero-section{padding-top:30px}
.eyebrow-alert{
  background:rgba(192,57,43,.07);
  border:1px solid rgba(192,57,43,.18);
  color:var(--alarm);
}
.eyebrow-alert .eyebrow-dot,.dot-alarm{
  background:var(--alarm);
  box-shadow:0 0 0 5px rgba(192,57,43,.12);
  animation:alarmPulse 2s ease-out infinite;
}
@keyframes alarmPulse{0%,100%{box-shadow:0 0 0 0 rgba(192,57,43,.4)}65%{box-shadow:0 0 0 7px rgba(192,57,43,0)}}
.text-danger{color:var(--alarm);font-style:normal}

/* ── Risk stat panel ─────────────────────────── */
.risk-stat-panel{
  padding:28px;
  border-radius:32px;
  background:linear-gradient(145deg,#fff5f4,#fdf0ef);
  box-shadow:20px 20px 50px rgba(192,57,43,.10),-18px -18px 50px rgba(255,255,255,.92);
  border:1px solid rgba(192,57,43,.12);
  transform-style:preserve-3d;
}
.rsp-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:24px;
}
.rsp-label{
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#9b6b68;
}
.alarm-badge{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:9px;
  font-weight:850;
  color:var(--alarm);
  background:var(--alarm-soft);
  padding:7px 11px;
  border-radius:99px;
  letter-spacing:.06em;
}
.rsp-stat{margin-bottom:4px}
.rsp-stat strong{
  display:block;
  font-size:52px;
  letter-spacing:-.06em;
  line-height:1;
  margin-bottom:4px;
}
.rsp-stat span{font-size:12px;color:#7a5c5a;line-height:1.4;display:block}
.rsp-critical strong{color:var(--alarm)}
.rsp-high strong{color:var(--warn-mid)}
.rsp-divider{height:1px;background:linear-gradient(90deg,rgba(192,57,43,.12),transparent);margin:16px 0}
.rsp-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.rsp-mini{
  padding:14px 16px;
  border-radius:18px;
  text-align:center;
}
.rsp-mini strong{display:block;font-size:22px;font-weight:760;letter-spacing:-.04em;margin-bottom:3px}
.rsp-mini small{font-size:9px;line-height:1.4;color:#7a5c5a}
.rsp-danger-bg{background:rgba(192,57,43,.08);border:1px solid rgba(192,57,43,.12)}
.rsp-danger-bg strong{color:var(--alarm)}
.rsp-warn-bg{background:rgba(230,126,34,.08);border:1px solid rgba(230,126,34,.14)}
.rsp-warn-bg strong{color:var(--warn-mid)}
.rsp-footer{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(192,57,43,.1);
  font-size:9.5px;
  color:#9b6b68;
  display:flex;
  gap:8px;
  align-items:center;
}

/* ── Threat grid ─────────────────────────────── */
.threat-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:52px;
}
.threat-card{
  position:relative;
  padding:28px 26px 22px;
  border-radius:28px;
  background:var(--panel);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.76);
  border-left:3px solid rgba(192,57,43,.3);
  display:flex;
  flex-direction:column;
  gap:14px;
  transition:.3s var(--ease);
  overflow:hidden;
}
.threat-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(145deg,rgba(255,255,255,.5),transparent 60%);
  pointer-events:none;
}
.threat-card:hover{
  transform:translateY(-7px);
  box-shadow:16px 16px 40px rgba(158,170,178,.27),-15px -15px 40px white,0 0 50px rgba(192,57,43,.06);
}
.tc-critical{border-left-color:var(--alarm);background:linear-gradient(145deg,#fff8f7,#fdf4f3)}
.tc-high{border-left-color:var(--warn-mid);background:linear-gradient(145deg,#fffbf5,#fdf7ef)}
.tc-medium{border-left-color:#b4854d}
.tc-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.tc-num{
  font-size:10px;
  font-weight:850;
  color:var(--faint);
  letter-spacing:.08em;
}
.tc-severity{
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.1em;
  padding:5px 10px;
  border-radius:99px;
}
.sev-critical{background:var(--alarm-soft);color:var(--alarm)}
.sev-high{background:var(--warn-soft);color:var(--warn-mid)}
.sev-medium{background:#f5edde;color:#b4854d}
.tc-icon-wrap{
  width:48px;height:48px;
  border-radius:16px;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  display:grid;place-items:center;
}
.tc-icon{
  font-size:20px;
  font-weight:700;
  color:var(--ink);
}
.tc-critical .tc-icon-wrap{background:rgba(192,57,43,.08);box-shadow:none}
.tc-critical .tc-icon{color:var(--alarm)}
.tc-high .tc-icon-wrap{background:rgba(230,126,34,.08);box-shadow:none}
.tc-high .tc-icon{color:var(--warn-mid)}
.threat-card h3{
  font-size:18px;
  line-height:1.22;
  letter-spacing:-.03em;
  margin:0;
}
.tc-desc{
  font-size:13px;
  line-height:1.65;
  color:var(--muted);
  margin:0;
}
.tc-consequence{
  padding:14px 16px;
  border-radius:16px;
  background:rgba(247,249,250,.7);
  border:1px solid rgba(0,0,0,.05);
  margin-top:auto;
}
.tc-critical .tc-consequence{background:rgba(192,57,43,.04);border-color:rgba(192,57,43,.1)}
.tc-high .tc-consequence{background:rgba(230,126,34,.04);border-color:rgba(230,126,34,.1)}
.tc-con-label{
  display:block;
  font-size:8.5px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--faint);
  margin-bottom:6px;
}
.tc-critical .tc-con-label{color:rgba(192,57,43,.6)}
.tc-high .tc-con-label{color:rgba(230,126,34,.7)}
.tc-consequence p{
  font-size:12px;
  line-height:1.55;
  color:var(--ink);
  margin:0;
  font-weight:500;
}
.tc-footer{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding-top:14px;
  border-top:1px solid var(--line);
}
.tc-check-label{
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:var(--faint);
}
.tc-tags{display:flex;flex-wrap:wrap;gap:6px}
.tc-tags span{
  font-size:10px;
  font-weight:700;
  padding:5px 10px;
  border-radius:99px;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  color:#516660;
}

/* ── Layer status badges ─────────────────────── */
.layer{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:19px 22px;border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.72);transform:translateX(calc(var(--i,0) * 10px))}
.layer-status{
  font-size:9px;
  font-weight:800;
  padding:6px 11px;
  border-radius:99px;
  white-space:nowrap;
}
.ls-ok{background:var(--ok-soft);color:var(--accent-dark)}
.ls-warn{background:var(--warn-soft);color:var(--warn-mid)}
.ls-alert{background:var(--alarm-soft);color:var(--alarm)}

/* ── Audit card improvements ─────────────────── */
.audit-icon-accent{
  background:var(--accent-soft);
  color:var(--accent-dark);
  font-weight:900;
  box-shadow:none;
}
.action-plan-list{margin-top:22px;display:grid;gap:10px}
.action-line{
  display:grid;
  grid-template-columns:34px 1fr auto;
  gap:12px;
  align-items:center;
  padding:15px 16px;
  border-radius:18px;
  background:rgba(248,250,251,.7);
  box-shadow:var(--shadow-sm);
  transition:.25s var(--ease);
}
.action-line:hover{transform:translateX(5px)}
.action-num{
  width:30px;height:30px;
  border-radius:10px;
  display:grid;place-items:center;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  font-size:10px;
  font-weight:900;
  color:var(--accent);
}
.action-line strong{display:block;font-size:12px;font-weight:750}
.action-line small{color:var(--faint);font-size:9.5px;margin-top:2px;display:block}
.action-tag{
  font-size:8.5px;
  font-weight:850;
  padding:6px 10px;
  border-radius:99px;
  white-space:nowrap;
}
.atag-critical{background:var(--alarm-soft);color:var(--alarm)}
.atag-medium{background:var(--warn-soft);color:var(--warn-mid)}
.atag-low{background:var(--ok-soft);color:var(--accent-dark)}
.action-critical{border-left:2px solid var(--alarm)}
.action-medium{border-left:2px solid var(--warn-mid)}

/* ── Journal — lead story redesign ──────────── */
.lead-story{
  padding:40px 44px;
  border-radius:34px;
  background:var(--panel);
  box-shadow:var(--shadow);
  border:1px solid rgba(255,255,255,.76);
  margin-bottom:22px;
}
.ls-eyebrow{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:28px;
}
.ls-tag{
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.1em;
  padding:7px 12px;
  border-radius:99px;
  background:var(--accent-soft);
  color:var(--accent-dark);
}
.ls-tag-alert{background:var(--alarm-soft);color:var(--alarm)}
.ls-date{font-size:10px;color:var(--faint);font-weight:700}
.lead-story-grid{display:grid;grid-template-columns:1fr 130px;gap:45px;align-items:start}
.ls-content h2{font-size:36px;line-height:1.1;letter-spacing:-.045em;margin:0 0 16px}
.ls-content>p{font-size:14.5px;line-height:1.72;color:var(--muted);margin:0 0 20px}
.story-lesson{
  padding:18px 20px;
  border-radius:18px;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  margin-top:20px;
}
.sl-label{
  display:block;
  font-size:8.5px;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:var(--accent);
  font-weight:850;
  margin-bottom:7px;
}
.story-lesson p{font-size:12px;margin:0;line-height:1.6;color:#516660}
.story-links{
  display:flex;
  gap:14px;
  margin-top:22px;
}
.story-links a{
  font-size:11px;
  color:var(--accent);
  font-weight:800;
  transition:.2s;
}
.story-links a:hover{color:var(--accent-dark);transform:translateX(3px);display:inline-block}
.ls-number{
  font-size:120px;
  line-height:.85;
  font-weight:700;
  letter-spacing:-.09em;
  color:#dfe6e8;
  text-align:right;
  user-select:none;
}

/* Story cards */
.story-card{
  padding:32px;
  border-radius:28px;
  background:var(--panel);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.75);
  display:flex;
  flex-direction:column;
  gap:14px;
}
.story-card h3{font-size:26px;letter-spacing:-.045em;margin:0;line-height:1.15}
.story-card>p{font-size:13px;line-height:1.65;color:var(--muted);margin:0}
.story-source-link{
  margin-top:auto;
  font-size:11px;
  font-weight:800;
  color:var(--accent);
  align-self:flex-start;
  transition:.2s;
}
.story-source-link:hover{color:var(--accent-dark)}

/* Guide cards */
.guide-card{
  padding:32px;
  border-radius:28px;
  background:var(--panel);
  box-shadow:var(--shadow-sm);
  border:1px solid rgba(255,255,255,.75);
  display:flex;
  flex-direction:column;
  gap:0;
  min-height:290px;
}
.guide-num{
  font-size:9px;
  font-weight:850;
  color:var(--accent);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.guide-card h3{
  font-size:20px;
  line-height:1.22;
  letter-spacing:-.033em;
  margin:26px 0 14px;
}
.guide-card p{font-size:12.5px;line-height:1.65;color:var(--muted);margin:0 0 auto}
.guide-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:22px;
  font-size:12px;
  font-weight:800;
  color:var(--accent);
  transition:.2s var(--ease);
}
.guide-link span{transition:transform .2s var(--ease)}
.guide-link:hover{color:var(--accent-dark)}
.guide-link:hover span{transform:translateX(5px)}

/* Bento mini-timeline improved */
.mini-timeline{display:grid;gap:10px;margin-top:40px}
.mini-timeline span{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  font-size:11px;
  color:#51625e;
  font-weight:600;
  padding:13px 16px;
  border-radius:14px;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  border-left:3px solid transparent;
}
.mini-timeline span.good{border-left-color:var(--accent)}
.mini-timeline span.warn{border-left-color:var(--warn-mid)}
.mini-timeline span b{font-weight:720}
.mini-timeline span em{font-style:normal;font-size:9.5px;color:var(--faint)}

/* Progress bars improved */
.progress-list{display:grid;gap:14px;margin-top:30px}
.progress-list span{
  display:grid;
  grid-template-columns:1fr auto;
  position:relative;
  padding-bottom:10px;
}
.progress-list span:after,.progress-list i{content:"";position:absolute;left:0;bottom:0;height:4px;border-radius:99px}
.progress-list span:after{right:0;background:rgba(200,210,208,.4)}
.progress-list i{width:var(--p);background:linear-gradient(90deg,var(--accent),var(--mint));z-index:1}
.progress-list b,.progress-list em{font-size:11px;font-style:normal;color:#51625e}
.progress-list em{color:var(--accent);font-weight:700}

/* Month report improved */
.month-report{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:30px}
.month-report span{
  padding:18px 14px;
  border-radius:16px;
  background:var(--panel-strong);
  box-shadow:var(--inset);
  font-size:9px;
  color:var(--faint);
  line-height:1.5;
  text-align:center;
}
.month-report b{display:block;font-size:24px;color:var(--accent-dark);margin-bottom:4px;letter-spacing:-.04em}

/* AI chips improved */
.ai-chip{
  position:absolute;
  padding:10px 16px;
  border-radius:99px;
  background:var(--panel-strong);
  box-shadow:var(--shadow-sm);
  font-size:10px;
  font-weight:800;
  color:var(--accent);
  letter-spacing:.02em;
  animation:chipFloat 4s ease-in-out infinite;
}
.c1{left:45px;top:70px;animation-delay:0s}
.c2{right:50px;top:100px;animation-delay:-.8s}
.c3{left:70px;bottom:80px;animation-delay:-1.6s}
.c4{right:55px;bottom:95px;animation-delay:-2.4s}
@keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* ── Responsive threat grid ──────────────────── */
@media(max-width:1050px){.threat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){
  .threat-grid{grid-template-columns:1fr}
  .attack-ticker-wrap{margin-top:80px}
  .risk-hero-section{padding-top:20px}
  .rsp-stat strong{font-size:40px}
  .ls-number{display:none}
  .lead-story-grid{grid-template-columns:1fr}
  .lead-story{padding:24px}
  .ls-content h2{font-size:26px}
  .month-report{grid-template-columns:repeat(2,1fr)}
}

/* ═══════════════════════════════════════════════════════
   SOVEREIGNTY / TRUST LAYER — 2026-09-07
   ═══════════════════════════════════════════════════════ */
.sovereignty-section{padding:92px 0 104px;position:relative;border-bottom:1px solid var(--line)}
.sovereignty-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 45%,rgba(47,117,107,.08),transparent 28%);pointer-events:none}
.sovereignty-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:center;position:relative}
.sovereignty-copy h2{font-size:clamp(38px,4.5vw,59px);line-height:1.02;letter-spacing:-.055em;margin:16px 0 20px;max-width:720px}
.sovereignty-copy>p{font-size:16px;line-height:1.75;color:var(--muted);max-width:680px}
.sovereignty-points{display:grid;gap:10px;margin-top:30px}
.sovereignty-points article{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start;padding:16px 18px;border-radius:20px;background:rgba(246,249,250,.72);border:1px solid rgba(255,255,255,.78);box-shadow:var(--shadow-sm);transition:.3s var(--ease)}
.sovereignty-points article:hover{transform:translateX(7px);box-shadow:var(--shadow)}
.sovereignty-points strong{font-size:13px;display:block;margin:2px 0 4px}
.sovereignty-points p{font-size:11.5px;line-height:1.55;color:var(--muted);margin:0}
.sv-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-dark);font-size:10px;font-weight:900;letter-spacing:.05em;box-shadow:var(--inset)}
.sovereignty-visual{min-height:520px;padding:28px;border-radius:40px;background:linear-gradient(145deg,rgba(249,251,252,.96),rgba(231,238,240,.88));border:1px solid rgba(255,255,255,.82);box-shadow:var(--shadow);position:relative;overflow:hidden}
.sovereignty-visual::before{content:"";position:absolute;inset:-25%;background:conic-gradient(from 120deg,transparent,rgba(47,117,107,.08),transparent 28%);animation:svAura 12s linear infinite;pointer-events:none}
@keyframes svAura{to{transform:rotate(360deg)}}
.sv-topline{position:relative;z-index:2;display:flex;align-items:center;gap:9px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-bottom:22px;border-bottom:1px solid var(--line)}
.sv-flow{position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:8px;margin-top:22px}
.sv-node{padding:18px 20px;border-radius:20px;background:rgba(247,249,250,.78);border:1px solid rgba(255,255,255,.8);box-shadow:var(--shadow-sm);transition:.45s var(--ease);position:relative;overflow:hidden}
.sv-node::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.6) 50%,transparent 75%);transform:translateX(-140%);transition:.7s var(--ease)}
.sv-node.is-active{transform:translateX(8px);border-color:rgba(47,117,107,.24);box-shadow:12px 12px 30px rgba(47,117,107,.12),-11px -11px 30px rgba(255,255,255,.9),0 0 35px rgba(47,117,107,.10)}
.sv-node.is-active::after{transform:translateX(140%)}
.sv-node small{display:inline-block;width:28px;font-size:9px;font-weight:900;color:var(--accent);letter-spacing:.09em;vertical-align:middle}
.sv-node strong{font-size:13px;letter-spacing:-.015em}
.sv-node>span{display:block;margin:5px 0 0 32px;font-size:10.5px;color:var(--faint)}
.sv-connector{height:16px;display:flex;justify-content:center;position:relative}
.sv-connector::before{content:"";width:1px;height:100%;background:rgba(47,117,107,.16)}
.sv-connector i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--accent);top:0;animation:svDrop 1.8s ease-in-out infinite}
@keyframes svDrop{0%{transform:translateY(0);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translateY(12px);opacity:0}}
.sv-badges{position:relative;z-index:2;display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.sv-badges span{font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;padding:7px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);border:1px solid rgba(47,117,107,.08)}
.hero .trust-row{max-width:720px}
.stat-band{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.sb-news{line-height:1.45}
.footer-bottom{flex-wrap:wrap;gap:12px 24px}
.footer-bottom .footer-tech{color:var(--accent-dark);font-weight:750}
section{scroll-margin-top:100px}
@media(max-width:980px){.sovereignty-grid{grid-template-columns:1fr;gap:46px}.sovereignty-visual{min-height:auto}.sovereignty-copy{max-width:760px}.sovereignty-points{grid-template-columns:repeat(3,1fr)}.sovereignty-points article{grid-template-columns:1fr}.sv-icon{margin-bottom:4px}}
@media(max-width:680px){.sovereignty-section{padding:72px 0}.sovereignty-points{grid-template-columns:1fr}.sovereignty-visual{padding:20px;border-radius:28px}.sv-node{padding:15px 16px}.sv-node.is-active{transform:translateX(4px)}.sv-badges{margin-top:16px}.hero .trust-row{grid-template-columns:1fr}.stat-band{padding:18px 0}}
@media(max-width:900px),(pointer:coarse){.cursor-glow{display:none!important}body::after{animation:none!important;opacity:.022}.ambient{filter:blur(110px)}}
@media(prefers-reduced-motion:reduce){.sovereignty-visual::before,.sv-connector i{animation:none!important}.sv-node{transform:none!important}}

/* Mobile surface map: replace absolute constellation by a readable interactive grid */
@media(max-width:680px){
  .new-surface-map{height:auto!important;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px;margin-top:34px;border-radius:30px;overflow:visible}
  .surface-lines,.surface-hub{display:none!important}
  .svc-node,#snode-ssh,#snode-mail,#snode-vpn,#snode-admin,#snode-api,#snode-web,#snode-cloud{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:auto;min-width:0;padding:12px!important;white-space:normal;align-items:flex-start;border-radius:17px}
  .svc-node:hover,.svc-node.svc-node-active{transform:translateY(-2px)!important}
  .svc-icon-wrap{width:32px;height:32px;border-radius:10px}
  .svc-info{min-width:0;flex:1}
  .svc-info strong{font-size:11px;line-height:1.2}
  .svc-info small{display:none!important}
  .svc-state{font-size:7px;padding:4px 6px;align-self:flex-start}
  .surface-detail{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:auto!important;grid-column:1/-1;padding:15px 16px;margin-top:2px;text-align:left}
  .sd-idle{justify-content:flex-start;line-height:1.45}
  .surface-legend{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;grid-column:1/-1;display:flex!important;flex-wrap:wrap;justify-content:flex-start;gap:8px 12px;padding:12px 14px;margin-top:0}
  .sl-item{font-size:9px}
}
@media(max-width:520px){.new-surface-map{grid-template-columns:1fr}.svc-node{align-items:center}.svc-state{margin-left:auto}.surface-detail,.surface-legend{grid-column:1}}

/* ═══════════════════════════════════════════════
   ELVIASECURE V3 — CONVERSION / CLARITY LAYER
   ═══════════════════════════════════════════════ */
.home-v3 .hero{min-height:820px}
.hero-grid-v3{display:grid;grid-template-columns:1.04fr .96fr;gap:76px;align-items:center}
.hero-v3 h1{font-size:clamp(50px,5.7vw,80px);line-height:.98;letter-spacing:-.064em;margin:26px 0 24px}
.trust-row-v3{max-width:720px}.trust-row-v3 span{padding:6px 0}
.hero-threat-card{position:relative;padding:24px;border-radius:38px;background:linear-gradient(145deg,rgba(249,251,251,.94),rgba(231,237,240,.92));box-shadow:24px 24px 65px rgba(142,157,165,.28),-22px -22px 60px rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.82);overflow:hidden;min-height:550px;transform-style:preserve-3d}
.hero-threat-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(47,117,107,.11),transparent 38%),linear-gradient(135deg,transparent 43%,rgba(255,255,255,.5) 50%,transparent 57%);pointer-events:none}
.htc-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;color:var(--muted)}
.htc-top>span{display:flex;align-items:center;gap:9px}.htc-top small{font-size:8px;letter-spacing:.12em;color:var(--faint)}
.htc-radar{width:250px;height:250px;border-radius:50%;position:relative;margin:35px auto 28px;background:repeating-radial-gradient(circle,transparent 0 35px,rgba(47,117,107,.07) 36px 37px);box-shadow:var(--inset)}
.htc-ring{position:absolute;border:1px solid rgba(47,117,107,.10);border-radius:50%;inset:25px}.htc-ring.r-b{inset:-18px;border-style:dashed;animation:rotateSimple 25s linear infinite}
.htc-sweep{position:absolute;inset:12px;border-radius:50%;overflow:hidden;animation:hubSweep 5s linear infinite}.htc-sweep:before{content:"";position:absolute;width:50%;height:50%;left:50%;background:linear-gradient(135deg,transparent,rgba(47,117,107,.17));clip-path:polygon(0 100%,100% 0,100% 100%)}
.htc-core{position:absolute;inset:78px;border-radius:50%;background:var(--panel-strong);box-shadow:var(--shadow-sm);display:grid;place-content:center;text-align:center;z-index:2}.htc-core strong{font-size:13px;line-height:1.05}.htc-core small{font-size:8px;color:var(--faint);margin-top:5px}.htc-point{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--alarm);box-shadow:0 0 0 7px rgba(192,57,43,.08)}.htc-point.p1{left:38px;top:90px}.htc-point.p2{right:52px;top:58px;background:var(--warn-mid)}.htc-point.p3{right:48px;bottom:58px;background:var(--accent)}
@keyframes rotateSimple{to{transform:rotate(360deg)}}
.htc-findings{position:relative;z-index:2;display:grid;gap:8px}.htc-findings>div{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:center;padding:11px 13px;border-radius:16px;background:rgba(249,251,251,.72);box-shadow:var(--shadow-sm)}
.htc-findings p{margin:0}.htc-findings strong{display:block;font-size:10.5px}.htc-findings small{display:block;font-size:8.5px;color:var(--faint);margin-top:2px}.htc-findings em{font-style:normal;font-size:8px;font-weight:850;color:var(--muted);padding:5px 8px;border-radius:99px;background:rgba(230,235,236,.7)}
.risk-dot{width:7px;height:7px;border-radius:50%}.risk-high{background:var(--alarm)}.risk-warn{background:var(--warn-mid)}.risk-ok{background:var(--accent)}
.htc-foot{position:relative;z-index:2;margin-top:16px;padding:13px 15px;border-radius:15px;background:rgba(47,117,107,.055);font-size:10.5px;line-height:1.5;color:var(--muted)}.htc-foot strong{color:var(--accent-dark)}
.proof-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(250,251,252,.45)}.proof-strip-inner{min-height:90px;display:grid;grid-template-columns:1fr 1px 1.25fr 1px .9fr;align-items:center;gap:28px}.proof-strip-inner>div{display:flex;align-items:center;gap:12px}.proof-strip-inner strong{font-size:29px;letter-spacing:-.05em;color:var(--accent-dark);white-space:nowrap}.proof-strip-inner span{font-size:11px;line-height:1.45;color:var(--muted)}.proof-strip-inner>i{width:1px;height:38px;background:var(--line)}.proof-strip-inner>a{font-size:11px;font-weight:800;color:var(--accent);display:flex;align-items:center;gap:8px;justify-content:flex-end}
.urgency-v3 .section-heading{max-width:780px}.impact-grid-v3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:55px}.impact-card-v3{position:relative;padding:30px;border-radius:28px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.76);min-height:310px;transition:.35s var(--ease)}.impact-card-v3:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.impact-index{position:absolute;right:23px;top:20px;font-size:9px;font-weight:850;color:var(--faint)}
.impact-symbol{width:52px;height:52px;border-radius:17px;background:var(--panel-strong);box-shadow:var(--inset);margin-bottom:50px;position:relative}.impact-card-v3 h3{font-size:22px;line-height:1.15;letter-spacing:-.035em;margin-bottom:13px}.impact-card-v3 p{font-size:12.5px;line-height:1.68;color:var(--muted)}
.scan-symbol:before{content:"";position:absolute;inset:13px;border:1.7px solid var(--accent);border-radius:50%}.scan-symbol:after{content:"";position:absolute;width:12px;height:1.8px;background:var(--accent);left:26px;top:25px;transform-origin:left;transform:rotate(-45deg)}
.key-symbol:before{content:"";position:absolute;width:14px;height:14px;border:2px solid var(--accent);border-radius:50%;left:10px;top:14px}.key-symbol:after{content:"";position:absolute;width:20px;height:2px;background:var(--accent);left:23px;top:26px;transform:rotate(38deg);box-shadow:8px 4px 0 -0.3px var(--accent)}
.restore-symbol:before{content:"↻";position:absolute;inset:0;display:grid;place-items:center;color:var(--accent);font-size:29px;font-weight:400}

.method-layout-v3{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.method-layout-v3 .section-heading{margin:0}.method-flow-v3{display:grid;gap:0}.method-flow-v3 article{display:grid;grid-template-columns:54px 1fr;gap:17px;align-items:start;padding:20px 22px;border-radius:22px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.74)}.method-flow-v3 article>span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--panel-strong);box-shadow:var(--inset);color:var(--accent);font-size:10px;font-weight:900}.method-flow-v3 small{font-size:8px;letter-spacing:.1em;font-weight:850;color:var(--accent)}.method-flow-v3 h3{font-size:20px;margin:5px 0 6px}.method-flow-v3 p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.mf-line{height:30px;display:flex;align-items:center;padding-left:44px}.mf-line i{display:block;width:2px;height:100%;background:linear-gradient(var(--accent-soft),rgba(47,117,107,.18));border-radius:99px}
.deliverable-layout-v3{display:grid;grid-template-columns:1fr .9fr;gap:75px;align-items:center}.deliverable-demo-v3{padding:28px;border-radius:31px;background:linear-gradient(145deg,#f8fafb,#e9eef0);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.78);transform-style:preserve-3d}.dd-head,.dd-severity,.dd-status{display:flex;justify-content:space-between;align-items:center}.dd-head{font-size:8px;font-weight:850;letter-spacing:.11em;color:var(--faint);padding-bottom:17px;border-bottom:1px solid var(--line)}.dd-head em{font-style:normal}.dd-severity{margin:21px 0 13px}.dd-severity b{font-size:9px;padding:6px 9px;border-radius:99px;background:var(--alarm-soft);color:var(--alarm)}.dd-severity span{font-size:16px;font-weight:800;letter-spacing:-.03em}.dd-row{padding:15px 16px;border-radius:16px;background:rgba(249,251,251,.72);box-shadow:var(--shadow-sm);margin-top:10px}.dd-row small{font-size:8px;letter-spacing:.1em;font-weight:850;color:var(--faint)}.dd-row p{font-size:11.5px;line-height:1.6;margin:6px 0 0;color:var(--ink)}.dd-status{margin-top:18px;padding-top:15px;border-top:1px solid var(--line);gap:8px}.dd-status span{font-size:9px;font-weight:800;color:var(--faint);padding:6px 9px;border-radius:99px;background:rgba(225,232,232,.6)}.dd-status .done{background:var(--accent-soft);color:var(--accent-dark)}.dd-status i{font-style:normal;color:var(--faint)}
.audience-head-v3{display:flex;justify-content:space-between;gap:40px;align-items:flex-end}.audience-head-v3 .section-heading{max-width:760px}.audience-grid-v3{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:44px}.audience-card-v3{display:grid;grid-template-columns:52px 1fr auto;gap:16px;align-items:center;padding:22px 23px;border-radius:23px;background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.74);transition:.3s var(--ease)}.audience-card-v3:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.audience-card-v3 small{font-size:8px;letter-spacing:.1em;color:var(--accent);font-weight:850}.audience-card-v3 h3{font-size:17px;margin:4px 0 4px;letter-spacing:-.025em}.audience-card-v3 p{font-size:10.5px;line-height:1.5;color:var(--muted);margin:0}.audience-card-v3>i{font-style:normal;color:var(--accent);font-weight:900}
.aud-icon,.sector-tab-icon{width:48px;height:48px;border-radius:15px;background:var(--panel-strong);box-shadow:var(--inset);display:grid;place-items:center;position:relative;color:var(--accent)}

.city-icon:before{content:"";width:22px;height:18px;border:1.8px solid currentColor;border-top:0;position:absolute;bottom:12px}.city-icon:after{content:"";width:26px;height:10px;border:1.8px solid currentColor;clip-path:polygon(50% 0,100% 100%,0 100%);position:absolute;top:10px}.office-icon:before{content:"";width:20px;height:25px;border:1.8px solid currentColor;position:absolute;bottom:10px;box-shadow:inset 0 0 0 4px rgba(47,117,107,.05)}.office-icon:after{content:"";position:absolute;width:3px;height:3px;background:currentColor;box-shadow:7px 0 currentColor,0 7px currentColor,7px 7px currentColor;top:16px;left:17px}.finance-icon:before{content:"€";font-size:20px;font-weight:800}.health-icon:before{content:"+";font-size:26px;font-weight:600}.tool-icon:before{content:"◇";font-size:24px;transform:rotate(45deg)}.people-icon:before{content:"";width:9px;height:9px;border:1.8px solid currentColor;border-radius:50%;position:absolute;top:11px;left:13px;box-shadow:13px 0 0 -1.8px var(--panel-strong),13px 0 0 0 currentColor}.people-icon:after{content:"";width:25px;height:11px;border:1.8px solid currentColor;border-radius:12px 12px 4px 4px;position:absolute;bottom:10px;left:11px}
.trust-panel-v3{padding:48px;border-radius:38px;background:linear-gradient(145deg,#eef7f3,#e6efed);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8)}.trust-title-v3{display:flex;justify-content:space-between;gap:40px;align-items:end}.trust-title-v3 h2{font-size:clamp(34px,4vw,51px);line-height:1.04;letter-spacing:-.052em;max-width:780px;margin:12px 0 0}.trust-badges-v3{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:38px}.trust-badges-v3 article{padding:18px;border-radius:19px;background:rgba(248,250,251,.68);display:grid;grid-template-columns:37px 1fr;gap:11px;align-items:center;border:1px solid rgba(255,255,255,.65)}.trust-badges-v3 b{width:34px;height:34px;border-radius:11px;background:var(--accent-soft);display:grid;place-items:center;font-size:9px;color:var(--accent-dark)}.trust-badges-v3 strong{display:block;font-size:11px}.trust-badges-v3 small{display:block;font-size:8.5px;line-height:1.4;color:var(--muted);margin-top:3px}.cta-card-v3{padding-block:72px}.cta-card-v3 h2{max-width:870px}

/* ── Votre activité / enjeux page ── */
.sector-hero{padding-top:170px;min-height:760px;display:flex;align-items:center}.sector-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.sector-hero h1{font-size:clamp(50px,5.7vw,77px);line-height:.99;letter-spacing:-.062em;margin:26px 0 24px}.sector-hero h1 em{font-style:normal;color:var(--accent);font-weight:600}
.sector-orbit{position:relative;height:500px;border-radius:44px;background:linear-gradient(145deg,#f8fafb,#e9eef0);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.78);overflow:hidden}.sector-orbit:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(47,117,107,.11),transparent 38%)}.sector-orbit-center{position:absolute;width:128px;height:128px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--panel-strong);box-shadow:var(--shadow);display:grid;place-content:center;text-align:center;z-index:3}.sector-orbit-center strong{font-size:16px;line-height:1.05}.sector-orbit-center small{font-size:8px;color:var(--faint);margin-top:5px}.so-ring{position:absolute;border-radius:50%;border:1px solid rgba(47,117,107,.10);left:50%;top:50%;transform:translate(-50%,-50%)}.so-r1{width:270px;height:270px}.so-r2{width:390px;height:390px;border-style:dashed;animation:rotate 35s linear infinite}.so-dot{position:absolute;padding:9px 12px;border-radius:14px;background:rgba(249,251,251,.85);box-shadow:var(--shadow-sm);font-size:9px;font-weight:800;color:var(--accent-dark);z-index:4}.d-city{left:11%;top:16%}.d-pme{right:12%;top:18%}.d-fin{right:8%;bottom:24%}.d-health{left:12%;bottom:20%}.d-field{left:42%;top:8%}.d-assoc{right:34%;bottom:8%}
.sector-explorer{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:stretch}.sector-tabs{display:grid;gap:9px}.sector-tab{border:1px solid rgba(255,255,255,.72);background:var(--panel);box-shadow:var(--shadow-sm);border-radius:20px;padding:13px 15px;display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:center;text-align:left;cursor:pointer;transition:.28s var(--ease)}.sector-tab:hover,.sector-tab.is-active{transform:translateX(5px);box-shadow:var(--shadow)}.sector-tab.is-active{background:linear-gradient(145deg,#eef7f3,#e5f0ec);border-color:rgba(47,117,107,.16)}.sector-tab small{display:block;font-size:7.5px;letter-spacing:.1em;color:var(--accent);font-weight:850}.sector-tab strong{display:block;font-size:12px;margin-top:3px}.sector-tab-icon{width:43px;height:43px}

.sector-panel{padding:34px;border-radius:30px;background:linear-gradient(145deg,#f8fafb,#e9eef0);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.78);min-height:520px;transition:.3s var(--ease)}.sector-panel-top{display:flex;justify-content:space-between;gap:22px;align-items:flex-start}.sp-kicker{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--accent)}.sector-panel h3{font-size:30px;line-height:1.08;letter-spacing:-.045em;margin:10px 0 0;max-width:640px}.sp-badge{font-size:8.5px;font-weight:850;padding:7px 11px;border-radius:99px;background:var(--accent-soft);color:var(--accent-dark);white-space:nowrap}.sp-intro{font-size:13px;line-height:1.7;color:var(--muted);max-width:760px;margin:22px 0 26px}.sp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sp-grid article{padding:17px 18px;border-radius:17px;background:rgba(249,251,251,.65);box-shadow:var(--shadow-sm)}.sp-grid small{font-size:7.5px;letter-spacing:.1em;color:var(--faint);font-weight:850}.sp-grid strong{display:block;font-size:12px;margin:6px 0 5px}.sp-grid p{font-size:10.5px;line-height:1.55;color:var(--muted);margin:0}.sp-bottom{display:flex;gap:7px;flex-wrap:wrap;margin-top:21px}.sp-bottom span{font-size:8.5px;font-weight:750;padding:6px 9px;border-radius:99px;background:var(--accent-soft);color:var(--accent-dark)}
.common-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}.common-questions{display:grid;gap:10px}.common-questions article{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px 19px;border-radius:19px;background:var(--panel);box-shadow:var(--shadow-sm);transition:.28s var(--ease)}.common-questions article:hover{transform:translateX(6px)}.common-questions article>span{width:38px;height:38px;border-radius:13px;background:var(--panel-strong);box-shadow:var(--inset);display:grid;place-items:center;color:var(--accent);font-size:9px;font-weight:900}.common-questions h3{font-size:16px;margin:1px 0 5px}.common-questions p{font-size:10.5px;color:var(--muted);line-height:1.5;margin:0}.sector-fit-card{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:42px 46px;border-radius:32px;background:linear-gradient(145deg,#eef7f3,#e5efec);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8)}.sector-fit-card h2{font-size:38px;letter-spacing:-.05em;margin:10px 0 8px}.sector-fit-card p{font-size:13px;line-height:1.65;color:var(--muted);max-width:720px;margin:0}

@media(max-width:980px){
  .hero-grid-v3,.method-layout-v3,.deliverable-layout-v3,.sector-hero-grid,.common-layout{grid-template-columns:1fr}.hero-threat-card{max-width:640px;width:100%;margin:auto}.proof-strip-inner{grid-template-columns:1fr;gap:12px;padding:18px 0}.proof-strip-inner>i{width:100%;height:1px}.proof-strip-inner>a{justify-content:flex-start}.impact-grid-v3{grid-template-columns:1fr}.audience-grid-v3{grid-template-columns:1fr}.trust-badges-v3{grid-template-columns:repeat(2,1fr)}.audience-head-v3{align-items:flex-start;flex-direction:column}.sector-orbit{max-width:650px;width:100%;margin:auto}.sector-explorer{grid-template-columns:1fr}.sector-tabs{grid-template-columns:repeat(2,1fr)}.sector-tab:hover,.sector-tab.is-active{transform:translateY(-3px)}
}
@media(max-width:680px){
  .home-v3 .hero{min-height:auto}.hero-v3{padding-top:126px}.hero-v3 h1,.sector-hero h1{font-size:44px}.hero-grid-v3{gap:45px}.hero-threat-card{min-height:505px;padding:18px;border-radius:30px}.htc-radar{width:220px;height:220px}.htc-core{inset:70px}.proof-strip-inner>div{align-items:flex-start}.proof-strip-inner strong{font-size:24px}.urgency-v3 .section-heading,.audience-head-v3 .section-heading{text-align:left}.impact-card-v3{min-height:auto}.impact-symbol{margin-bottom:32px}.method-layout-v3{gap:42px}.deliverable-layout-v3{gap:42px}.audience-card-v3{grid-template-columns:47px 1fr auto;padding:18px 16px}.trust-panel-v3{padding:30px 20px}.trust-title-v3{display:block}.trust-title-v3 h2{font-size:34px}.trust-badges-v3{grid-template-columns:1fr}.sector-hero{padding-top:132px;min-height:auto}.sector-hero-grid{gap:45px}.sector-orbit{height:390px}.so-r2{width:330px;height:330px}.so-r1{width:230px;height:230px}.sector-orbit-center{width:108px;height:108px}.sector-tabs{grid-template-columns:1fr}.sector-panel{padding:23px 18px;min-height:auto}.sector-panel-top{display:block}.sp-badge{display:inline-block;margin-top:12px}.sector-panel h3{font-size:27px}.sp-grid{grid-template-columns:1fr}.sector-fit-card{padding:30px 22px;display:block}.sector-fit-card .btn{margin-top:25px}.dd-status{flex-wrap:wrap;justify-content:flex-start}
}

/* ═══ V3.1 — warm premium polish ═══ */
body{background:
 radial-gradient(circle at 14% 8%,rgba(248,224,209,.26),transparent 24%),
 radial-gradient(circle at 86% 14%,rgba(184,228,218,.32),transparent 28%),
 radial-gradient(circle at 70% 72%,rgba(218,229,241,.24),transparent 30%),
 linear-gradient(145deg,#eef3f2 0%,#f8f8f6 48%,#eef3f4 100%)}
body:before{background-image:radial-gradient(rgba(45,92,84,.042) .75px,transparent .75px);background-size:22px 22px;opacity:.72}
.ambient{width:560px;height:560px;filter:blur(115px)}.ambient-a{background:#b9e0d6;opacity:.22}.ambient-b{background:#ead9cf;opacity:.16}
.home-v3 main,.enjeux-page main{position:relative;isolation:isolate}
.home-v3 main:before,.enjeux-page main:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(115deg,transparent 0 38%,rgba(255,255,255,.22) 50%,transparent 62%);background-size:220% 100%;animation:warmDrift 18s ease-in-out infinite}
@keyframes warmDrift{0%,100%{background-position:130% 0}50%{background-position:-30% 0}}

.hero-threat-card,.deliverable-demo-v3,.sector-orbit,.sector-panel{background:linear-gradient(145deg,rgba(250,251,250,.95),rgba(233,239,240,.92));border-color:rgba(255,255,255,.88)}
.impact-card-v3,.audience-card-v3,.sector-tab,.common-questions article{background:linear-gradient(145deg,rgba(248,250,249,.93),rgba(238,242,242,.9))}
.impact-card-v3:hover,.audience-card-v3:hover{box-shadow:18px 18px 42px rgba(145,158,165,.22),-15px -15px 38px rgba(255,255,255,.88),0 18px 50px rgba(47,117,107,.06)}
.aud-icon,.sector-tab-icon,.impact-symbol{background:linear-gradient(145deg,#f9fbfa,#e8efed);box-shadow:inset 3px 3px 8px rgba(150,164,168,.11),inset -3px -3px 8px rgba(255,255,255,.88)}
.tool-icon:before{content:"";width:21px;height:5px;border:1.8px solid currentColor;border-radius:6px;transform:rotate(-42deg);position:absolute;left:14px;top:23px}.tool-icon:after{content:"";width:10px;height:10px;border:1.8px solid currentColor;border-radius:50% 50% 45% 12%;position:absolute;left:10px;top:12px;transform:rotate(-42deg)}
.finance-icon:before{content:"";width:20px;height:24px;border:1.7px solid currentColor;border-radius:4px;position:absolute}.finance-icon:after{content:"€";font-size:13px;font-weight:850;position:absolute}
.health-icon:before{content:"";width:22px;height:22px;border:1.7px solid currentColor;border-radius:50%;position:absolute}.health-icon:after{content:"+";font-size:19px;font-weight:700;position:absolute}

.trust-badges-v3 b{position:relative;font-size:0}.trust-fr b:before{content:"";width:18px;height:22px;border:1.7px solid currentColor;border-radius:5px;position:absolute;box-shadow:inset 0 -6px 0 rgba(47,117,107,.07)}.trust-fr b:after{content:"";width:7px;height:7px;border:1.7px solid currentColor;border-radius:50%;position:absolute;bottom:7px}
.trust-ai b:before{content:"";width:18px;height:18px;border:1.7px solid currentColor;border-radius:5px;position:absolute;box-shadow:6px 0 0 -5px currentColor,-6px 0 0 -5px currentColor,0 6px 0 -5px currentColor,0 -6px 0 -5px currentColor}.trust-ai b:after{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;position:absolute}
.trust-human b:before{content:"";width:18px;height:21px;border:1.7px solid currentColor;border-radius:9px 9px 11px 11px;position:absolute;clip-path:polygon(50% 0,100% 16%,88% 76%,50% 100%,12% 76%,0 16%)}.trust-human b:after{content:"✓";font-size:10px;font-weight:900;position:absolute}
.trust-scope b:before{content:"";width:18px;height:18px;border:1.7px solid currentColor;border-radius:50%;position:absolute}.trust-scope b:after{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;position:absolute;box-shadow:0 0 0 4px rgba(47,117,107,.09)}
.eyebrow{background:rgba(250,251,249,.72)}.btn-soft{background:linear-gradient(145deg,#f7f9f8,#e9efee)}
.proof-strip{background:rgba(250,250,247,.52)}
@media(max-width:900px),(pointer:coarse){.home-v3 main:before,.enjeux-page main:before{animation:none;background-position:center}.ambient-b{opacity:.10}}

/* ═══ V3.2 — publication polish: 2 animations utiles ═══ */
.home-v3::after{animation:none;opacity:.018}
.htc-findings>div{position:relative;overflow:hidden}
.htc-findings>div::after{content:"";position:absolute;inset:-2px;background:linear-gradient(105deg,transparent 26%,rgba(255,255,255,.72) 48%,rgba(47,117,107,.10) 52%,transparent 74%);transform:translateX(-145%);pointer-events:none}
.htc-findings>div.scan-hit::after{animation:homeFindingSweep .82s var(--ease) both}
.htc-findings>div.scan-hit{animation:homeFindingFocus .9s var(--ease) both}
@keyframes homeFindingSweep{to{transform:translateX(145%)}}
@keyframes homeFindingFocus{0%,100%{box-shadow:var(--shadow-sm)}45%{box-shadow:10px 10px 24px rgba(145,158,165,.20),-9px -9px 24px rgba(255,255,255,.88),0 0 0 2px rgba(47,117,107,.10),0 0 34px rgba(47,117,107,.10)}}
.method-flow-v3 article{position:relative;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .45s var(--ease)}
.method-flow-v3 .mf-line i{transform:scaleY(1);transform-origin:top;opacity:1}
.method-flow-v3.flow-ready .mf-line i{transform:scaleY(0);opacity:.45}
.method-flow-v3.flow-live article:nth-child(1){animation:methodStage 1.05s var(--ease) .08s both}
.method-flow-v3.flow-live .mf-line:nth-child(2) i{animation:methodLine .6s var(--ease) .68s forwards}
.method-flow-v3.flow-live article:nth-child(3){animation:methodStage 1.05s var(--ease) 1.05s both}
.method-flow-v3.flow-live .mf-line:nth-child(4) i{animation:methodLine .6s var(--ease) 1.62s forwards}
.method-flow-v3.flow-live article:nth-child(5){animation:methodStage 1.05s var(--ease) 1.95s both}
@keyframes methodLine{to{transform:scaleY(1);opacity:1}}
@keyframes methodStage{0%,100%{transform:translateX(0);border-color:rgba(255,255,255,.74)}45%{transform:translateX(7px);border-color:rgba(47,117,107,.18);box-shadow:14px 14px 32px rgba(145,158,165,.21),-12px -12px 30px rgba(255,255,255,.9),0 0 34px rgba(47,117,107,.08)}}
@media(prefers-reduced-motion:reduce){.htc-findings>div.scan-hit,.htc-findings>div.scan-hit::after,.method-flow-v3.flow-live article,.method-flow-v3.flow-live .mf-line i{animation:none!important}.method-flow-v3 .mf-line i{transform:none;opacity:1}}

/* V3.2 mobile hardening */
.hero-grid-v3>*{min-width:0}
@media(max-width:680px){
  .hero-v3 .eyebrow{display:flex;max-width:100%;white-space:normal;line-height:1.35;align-items:flex-start}
  .hero-v3 .eyebrow-dot{flex:0 0 auto;margin-top:4px}
  .hero-v3 h1{font-size:clamp(40px,11vw,44px);overflow-wrap:normal}
  .nav-shell{width:100%;max-width:100%}
  .nav-toggle{display:block!important;flex:0 0 44px}
  .hero-copy{min-width:0;width:100%}
}

/* ═══ LEGAL / PRIVACY PAGES ═══ */
.legal-page main{position:relative;isolation:isolate}
.legal-hero{padding-top:170px;padding-bottom:72px;min-height:520px;display:flex;align-items:center}
.legal-hero-inner{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}
.legal-hero h1{font-size:clamp(52px,7vw,86px);line-height:.98;letter-spacing:-.065em;margin:24px 0 22px}
.legal-hero .hero-lead{max-width:760px;margin:0 auto}
.legal-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.legal-card{padding:32px;border-radius:28px;background:linear-gradient(145deg,rgba(249,251,250,.94),rgba(236,241,241,.91));box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.78)}
.legal-card h2{font-size:26px;letter-spacing:-.04em;margin:12px 0 16px}
.legal-card p{font-size:13.5px;line-height:1.75;color:var(--muted);margin:0}
.legal-card a{color:var(--accent-dark);font-weight:800;text-decoration:underline;text-decoration-color:rgba(47,117,107,.24);text-underline-offset:3px}
.legal-note{margin-top:16px!important;padding:14px 16px;border-radius:16px;background:rgba(180,133,77,.08);border:1px solid rgba(180,133,77,.14);color:#76644f!important}
@media(max-width:760px){.legal-hero{padding-top:128px;min-height:auto}.legal-hero h1{font-size:44px}.legal-stack{grid-template-columns:1fr}.legal-card{padding:24px 20px}}
