@font-face{font-family:'Sora';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/sora-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/sora-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/sora-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-sans-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibm-plex-sans-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2')}
body{margin:0;background:#06222B;font-family:'IBM Plex Sans','Segoe UI',system-ui,sans-serif}
a{color:#00768E}a:hover{color:#005A6D}
@keyframes sp-spin{to{transform:rotate(360deg)}}
.sp-gear-cw{animation:sp-spin 60s linear infinite}
.sp-gear-ccw{animation:sp-spin 50s linear infinite reverse}
@keyframes sp-slide{0%{opacity:0}2.7%{opacity:1}16.67%{opacity:1}19.4%{opacity:0}100%{opacity:0}}
@keyframes sp-tab{0%{opacity:.45}2.7%{opacity:1}16.67%{opacity:1}19.4%{opacity:.45}100%{opacity:.45}}
.sp-slide{opacity:0;animation:sp-slide 30s linear infinite}
.sp-tab{opacity:.45;animation:sp-tab 30s linear infinite}
.sp-d2{animation-delay:5s}.sp-d3{animation-delay:10s}.sp-d4{animation-delay:15s}.sp-d5{animation-delay:20s}.sp-d6{animation-delay:25s}
.sp-card{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.sp-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;transform:scaleX(0);transform-origin:left;transition:transform .35s ease;animation:sp-spot 18s ease-in-out infinite}
.sp-a1::before{background:#008CA8}.sp-a2::before{background:linear-gradient(90deg,#008CA8,#80B82C)}.sp-a3::before{background:#80B82C}
.sp-c2::before{animation-delay:3s}.sp-c3::before{animation-delay:6s}.sp-c4::before{animation-delay:9s}.sp-c5::before{animation-delay:12s}.sp-c6::before{animation-delay:15s}
.sp-o::before{animation-duration:12s}
.sp-ill{container-type:inline-size}
.sp-sts{position:relative;display:grid;gap:18px 16px}
.sp-n3{grid-template-columns:repeat(3,minmax(0,1fr))}.sp-n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.sp-st{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;min-width:0}
.sp-st-txt{display:flex;flex-direction:column;gap:6px;min-width:0}
.sp-tile{flex:none;width:76px;height:76px;border-radius:22px;background:#FFFFFF;border:1px solid #E3ECEF;box-shadow:0 12px 28px rgba(6,34,43,.10),0 2px 4px rgba(6,34,43,.05);display:flex;align-items:center;justify-content:center;transition:transform .3s ease,box-shadow .3s ease}
.sp-st:hover .sp-tile{transform:translateY(-5px) scale(1.04);box-shadow:0 20px 36px rgba(6,34,43,.16),0 2px 4px rgba(6,34,43,.05)}
.sp-line{position:absolute;top:37px;height:2px;border-radius:2px;opacity:.55}
.sp-dot{position:absolute;top:-4px;left:0;width:10px;height:10px;border-radius:50%;animation:sp-run 5s ease-in-out infinite alternate}
@keyframes sp-run{from{left:0}to{left:calc(100% - 10px)}}
@container (max-width:460px){.sp-sts{grid-template-columns:1fr}.sp-st{flex-direction:row;align-items:center;text-align:left;gap:16px}.sp-line{display:none}.sp-tile{width:64px;height:64px;border-radius:18px}}
@keyframes sp-spot{0%{transform:scaleX(0)}4%{transform:scaleX(1)}15%{transform:scaleX(1)}19%{transform:scaleX(0)}100%{transform:scaleX(0)}}
.sp-card:hover,.sp-card:focus-visible{transform:translateY(-6px);box-shadow:0 18px 40px rgba(6,34,43,.14);border-color:#9DB6BE !important}
.sp-card:hover::before,.sp-card:focus-visible::before{animation:none;transform:scaleX(1)}
.sp-arrow{opacity:.45;transition:transform .25s ease,opacity .25s ease}
.sp-card:hover .sp-arrow,.sp-card:focus-visible .sp-arrow{transform:translateX(5px);opacity:1}
.sp-card:hover .sp-answer,.sp-card:focus-visible .sp-answer,.sp-card:hover .sp-num,.sp-card:focus-visible .sp-num{color:#00768E !important}
@media (prefers-reduced-motion: reduce){.sp-gear-cw,.sp-gear-ccw,.sp-slide,.sp-tab,.sp-card::before,.sp-dot{animation:none}.sp-slide.sp-d1,.sp-tab.sp-d1{opacity:1}.sp-card,.sp-arrow,.sp-tile{transition:none}.sp-card:hover,.sp-card:focus-visible{transform:none}}
.sp-ill{container-type:inline-size}
.sp-sts{position:relative;display:grid;gap:18px 16px}
.sp-n3{grid-template-columns:repeat(3,minmax(0,1fr))}.sp-n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.sp-st{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;min-width:0}
.sp-st-txt{display:flex;flex-direction:column;gap:6px;min-width:0}
.sp-tile{flex:none;width:76px;height:76px;border-radius:22px;background:#FFFFFF;border:1px solid #E3ECEF;box-shadow:0 12px 28px rgba(6,34,43,.10),0 2px 4px rgba(6,34,43,.05);display:flex;align-items:center;justify-content:center;transition:transform .3s ease,box-shadow .3s ease}
.sp-st:hover .sp-tile,.sp-hov:hover .sp-tile{transform:translateY(-5px) scale(1.04);box-shadow:0 20px 36px rgba(6,34,43,.16),0 2px 4px rgba(6,34,43,.05)}
.sp-line{position:absolute;top:37px;height:2px;border-radius:2px;opacity:.55}
.sp-dot{position:absolute;top:-4px;left:0;width:10px;height:10px;border-radius:50%;animation:sp-run 5s ease-in-out infinite alternate}
@keyframes sp-run{from{left:0}to{left:calc(100% - 10px)}}
@container (max-width:460px){.sp-sts{grid-template-columns:1fr}.sp-st{flex-direction:row;align-items:center;text-align:left;gap:16px}.sp-line{display:none}.sp-tile{width:64px;height:64px;border-radius:18px}}
@media (prefers-reduced-motion: reduce){.sp-dot{animation:none}.sp-tile{transition:none}}

/* ---- site ---- */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
img{max-width:100%}
:focus-visible{outline:2px solid #008CA8;outline-offset:2px}
.sp-skip{position:absolute;left:-9999px;top:0;z-index:100;background:#FFFFFF;color:#0A2A33;padding:12px 18px;font-weight:600}
.sp-skip:focus{left:8px;top:8px}
.sp-menu-btn{display:none;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #D5E1E5;border-radius:8px;background:#FFFFFF;font:inherit;font-size:14.5px;font-weight:600;color:#0A2A33;cursor:pointer}
@media (max-width:1180px){
.sp-menu-btn{display:inline-flex}
.sp-nav{display:none !important;order:10;flex-basis:100%;flex-direction:column;align-items:stretch !important;gap:0 !important}
.sp-nav.sp-open{display:flex !important}
.sp-nav a{border-top:1px solid #E3ECEF;padding:14px 0 !important;box-shadow:none !important}
}
.sp-chip{position:relative;display:inline-flex}
.sp-chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.sp-chip span{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:44px;box-sizing:border-box;padding:8px 12px;border:1px solid #3D6A78;border-radius:8px;background:#0B3340;color:#FFFFFF;font-size:14.5px}
.sp-chip input:checked + span{background:#80B82C;border-color:#80B82C;color:#06222B;font-weight:600}
.sp-chip input:focus-visible + span{outline:2px solid #FFFFFF;outline-offset:2px}
.sp-piege{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.sp-alerte{margin:0 auto 24px;max-width:1200px;box-sizing:border-box;padding:16px 20px;border-radius:10px;background:#FDECEC;border:1px solid #E5A3A3;color:#7A1C1C;font-weight:500}
