/* Offre plateformes : mêmes couleurs, mouvements et pictogrammes BSF. */
.os-platform-homehero h1{font-size:clamp(43px,6.2vw,88px);line-height:1.05;letter-spacing:-.05em}
.os-platform-homehero .hero-copy{max-width:61ch}
.os-platform-homehero .hero-copy .os-guide-lead{font-size:clamp(16px,1.3vw,19px)}
.os-platform-hub{padding:clamp(22px,2.3vw,34px);min-width:0}
.os-platform-hub .idc-top{gap:14px}
.os-platform-hub .idc-top svg{width:58px}
.os-platform-hub .idc-name{font-size:22px}
.os-platform-domain{display:flex;align-items:center;gap:13px;padding:19px;margin-top:25px;border:1px solid rgba(46,174,230,.45);border-radius:14px;background:linear-gradient(120deg,rgba(46,174,230,.12),rgba(46,174,230,.025))}
.os-platform-domain-dot{flex:none;width:11px;height:11px;background:var(--or);border-radius:3px;box-shadow:0 0 24px #f7931e55}
.os-platform-domain strong{display:block;font-size:20px;line-height:1.2}
.os-platform-domain span:not(.os-platform-domain-dot){display:block;margin-top:5px;color:var(--tx2);font-size:13px}
.os-platform-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}
.os-platform-hub-grid a{display:flex;align-items:center;gap:11px;min-height:76px;padding:13px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);text-decoration:none;transition:transform .2s,border-color .2s;min-width:0;font-size:14px;line-height:1.35}
.os-platform-hub-grid a:hover{transform:translateY(-3px);border-color:var(--blue)}
.os-platform-hub-grid svg{width:29px;height:29px;flex:none;color:var(--blue)}
.os-platform-hub-caption{font-size:12px;line-height:1.6;color:var(--tx2);margin-top:18px}
.os-platform-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#plateformes{padding-bottom:44px}
.os-platform-card{position:relative;display:flex;flex-direction:column;text-decoration:none;min-width:0;padding:25px;transition:border-color .2s,transform .2s}
.os-platform-card:hover{transform:translateY(-4px);border-color:var(--blue)}
.os-platform-card-icon{display:block;width:54px;height:54px;color:var(--blue)}
.os-platform-card-icon svg{width:100%;height:100%}
.os-platform-card-number{font:500 12px/1.5 var(--mono);color:var(--tx2)}
.os-platform-card>.os-platform-card-number{position:absolute;right:25px;top:25px}
.os-platform-card h3{font-size:25px;line-height:1.2;letter-spacing:-.03em;margin-top:20px}
.os-platform-card p{font-size:15px;line-height:1.6;color:var(--tx2);margin-top:13px}
.os-platform-card-go{display:flex;justify-content:space-between;align-items:center;font-size:13px;line-height:1.5;color:var(--tx);margin-top:auto;padding-top:22px;gap:14px}
.os-platform-card-go b{font-size:23px;color:var(--or)}
.os-platform-band{padding:30px 0;border-block:1px solid var(--line);background:linear-gradient(120deg,rgba(46,174,230,.06),rgba(247,147,30,.035))}
.os-platform-band>.wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}
.os-platform-band h2{font-size:clamp(24px,3vw,34px);line-height:1.2;letter-spacing:-.03em}
.os-platform-band p{max-width:78ch;color:var(--tx2);font-size:15px;line-height:1.6;margin-top:12px}
.os-platform-band .btn{flex:none;max-width:100%}
.os-platform-network-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px;margin-bottom:24px}
.os-platform-network-links>a{display:flex;flex-direction:column;padding:22px;text-decoration:none;min-width:0}
.os-platform-network-links strong{font-size:21px;line-height:1.3}
.os-platform-network-links span{font-size:14px;color:var(--tx2);margin-top:10px;line-height:1.6}
.os-platform-network-links b{color:var(--or);margin-left:auto;padding-top:16px}
.os-platform-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.os-platform-detail{min-width:0;padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;scroll-margin-top:20px}
.os-platform-detail:target{border-color:var(--or)}
.os-platform-detail-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.os-platform-detail h2{font-size:clamp(26px,2.6vw,35px);line-height:1.16;letter-spacing:-.03em;margin-top:22px}
.os-platform-detail-lead{color:var(--tx2);font-size:16px;line-height:1.6;margin-top:14px}
.os-platform-detail h3{font-size:14px;color:var(--tx);margin-top:24px;margin-bottom:10px;line-height:1.4}
.os-platform-detail .dl{margin:0}
.os-platform-detail .dl li{font-size:14px;line-height:1.6}
.os-platform-param-list{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0}
.os-platform-param-list li{padding:7px 10px;border:1px solid var(--line);border-radius:9px;color:var(--tx2);font-size:12px;line-height:1.5}
.os-platform-example{margin-top:20px;padding:16px;border-left:2px solid var(--or);background:rgba(247,147,30,.03);border-radius:0 10px 10px 0}
.os-platform-example strong{font-size:12px;color:#ffb454}
.os-platform-example p{font-size:14px;line-height:1.6;color:var(--tx2);margin-top:7px}
.os-platform-delivery{font-size:13px;color:var(--tx2);line-height:1.65;margin-top:18px;padding-bottom:20px}
.os-platform-delivery strong{color:var(--tx)}
.os-platform-detail>.btn{align-self:flex-start;margin-top:auto;font-size:13px;max-width:100%}
.os-platform-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}
.os-platform-steps>li{min-width:0;padding:20px}
.os-platform-step-number{font:500 13px/1.5 var(--mono);color:var(--blue)}
.os-platform-steps h3{font-size:20px;line-height:1.25;letter-spacing:-.025em;margin-top:15px}
.os-platform-steps p{font-size:14px;color:var(--tx2);line-height:1.6;margin-top:12px}
.os-platform-mission{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;padding:clamp(24px,3vw,36px);border:1px solid rgba(46,174,230,.4);border-radius:20px;background:rgba(46,174,230,.04)}
.os-platform-mission h3{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin-bottom:15px}
.os-platform-mission p{font-size:14px;line-height:1.6;color:var(--tx2);margin-top:16px}
.os-platform-ecosystem-link{font-size:15px;line-height:1.6;color:var(--tx2);margin-top:22px;max-width:85ch}
.os-platform-ecosystem-link a{color:#9bd9f4;display:inline;min-height:44px;text-underline-offset:4px}
@media(max-width:1100px){.os-platform-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.os-platform-band>.wrap{flex-wrap:wrap}}
@media(max-width:900px){.os-platform-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.os-platform-network-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.os-platform-homehero h1{font-size:clamp(40px,11vw,59px)}.os-platform-cards,.os-platform-details,.os-platform-steps,.os-platform-mission{grid-template-columns:1fr}.os-platform-hub .idc-top svg{width:48px}.os-platform-hub .idc-name{font-size:19px}.os-platform-hub .os-position-signature{font-size:11px}.os-platform-hub-grid a{padding:10px;gap:8px;font-size:12px}.os-platform-hub-grid svg{width:24px;height:24px}.os-platform-hub{padding:20px}.os-platform-card{padding:22px}.os-platform-network-links{grid-template-columns:1fr}.os-platform-steps>li{padding:22px}.os-platform-step-number{float:right}.os-platform-steps h3{margin-top:0;padding-right:28px}.os-platform-steps p{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.os-platform-hub-grid a,.os-platform-card{transition:none;transform:none!important}}
@media(max-width:640px){
 .os-platform-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px 14px;padding:20px}
 .os-platform-card>.os-platform-card-icon{grid-column:1;grid-row:1/4;width:36px;height:36px}
 .os-platform-card>.os-platform-card-number{right:13px;top:12px;font-size:10px}
 .os-platform-card h3{grid-column:2;font-size:22px;margin:0;padding-right:12px}
 .os-platform-card p{grid-column:2;margin:0;font-size:14px}
 .os-platform-card-go{grid-column:2;padding-top:0;margin:0;font-size:12px}
 .os-platform-network-links{grid-template-columns:repeat(2,minmax(0,1fr))}
 .os-platform-network-links>a{padding:16px}.os-platform-network-links strong{font-size:18px}
 .os-platform-network-links span{font-size:13px}
}
@media print{.os-platform-hub{display:none}.os-platform-cards,.os-platform-details{grid-template-columns:repeat(2,minmax(0,1fr))}.os-platform-steps{grid-template-columns:1fr 1fr}.os-platform-card,.os-platform-detail,.os-platform-steps>li{break-inside:avoid}.os-platform-detail{padding:5mm}.os-platform-band{background:white;padding:5mm 0}.os-platform-domain,.os-platform-example{background:white}.os-platform-card h3,.os-platform-detail h2{font-size:16pt}.os-platform-detail .dl li,.os-platform-example p,.os-platform-detail-lead{font-size:10pt}.os-platform-card-go{display:none}}
