:root{
  --blue:#0d4da8;--blue-deep:#062f78;--blue-navy:#061a43;--orange:#f26722;--green:#2e8b36;--red:#c3171d;--yellow:#f2c14b;--text:#23385f;--muted:#647493;--line:#dce7f5;--soft:#f5f9ff;--white:#fff;--black:#080808;--shadow:0 22px 60px rgba(6,26,67,.14);--heavy:0 34px 90px rgba(6,26,67,.24)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button{font-family:inherit}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(220,231,245,.95);box-shadow:0 8px 22px rgba(6,26,67,.07);backdrop-filter:blur(16px)}
.top-shell{width:100%;max-width:1760px;margin:0 auto;min-height:64px;padding:3px 28px;display:grid;grid-template-columns:340px minmax(0,1fr)54px;align-items:center;gap:12px}.brand{display:flex;align-items:center;justify-content:flex-end}.brand img{width:320px;height:60px;object-fit:contain;filter:drop-shadow(0 5px 14px rgba(0,0,0,.10))}.main-nav{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.main-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:0 13px;border-radius:999px;background:var(--red);color:#fff;font-size:13.5px;font-weight:900;box-shadow:0 8px 18px rgba(195,23,29,.18);transition:.2s}.main-nav a:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(195,23,29,.28)}.nav-toggle{display:inline-flex;width:43px;height:43px;border:0;border-radius:13px;background:#070707;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;box-shadow:0 12px 26px rgba(0,0,0,.18)}.nav-toggle span{display:block;width:22px;height:3px;background:#fff;border-radius:999px}
main{margin:0;padding:0}.hero-slider{position:relative;margin:0;padding:0;background:#fff;line-height:0}.slider-stage{position:relative;width:100vw;height:min(755px,calc(100vw * 755 / 1920));margin:0 calc(50% - 50vw);overflow:hidden;background:#fff;box-shadow:0 18px 52px rgba(6,26,67,.18)}.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}.slide.is-active{opacity:1;z-index:1}.slide img{width:100%;height:100%;object-fit:cover;object-position:center;background:#fff}.slider-dots{display:none!important}.slider-arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.93);color:var(--blue-deep);font-size:30px;line-height:1;cursor:pointer;box-shadow:0 12px 28px rgba(6,26,67,.18);transition:.2s}.slider-arrow:hover{transform:translateY(-50%) scale(1.06)}.slider-arrow.prev{left:18px}.slider-arrow.next{right:18px}
.hero-actions{max-width:1080px;margin:8px auto 0;padding:0 12px;display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}.hero-contact{min-height:35px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#f1f6ff);display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:900;color:var(--blue-deep);box-shadow:0 10px 22px rgba(6,26,67,.08);white-space:nowrap}.hero-contact svg{width:15px;height:15px;fill:var(--orange)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 15px;border:0;border-radius:10px;font-size:13.5px;font-weight:900;letter-spacing:.01em;cursor:pointer;white-space:nowrap;transition:.2s;box-shadow:0 12px 26px rgba(6,26,67,.14)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(180deg,var(--blue),#08377d);color:#fff}.btn-secondary{background:linear-gradient(180deg,var(--orange),#d84f10);color:#fff}.outline-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:14px;border:1px solid var(--blue);color:var(--blue);font-weight:900;background:#fff;cursor:pointer}.outline-link.orange{border-color:var(--orange);color:var(--orange)}
.pro-section,.content-section{position:relative;padding:76px 6vw}.pro-section:before,.patterned-bg:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 12% 14%,rgba(13,77,168,.10),transparent 26%),radial-gradient(circle at 88% 20%,rgba(242,103,34,.12),transparent 24%),linear-gradient(135deg,rgba(46,139,54,.06),transparent 42%);pointer-events:none}.section-kicker{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}.section-kicker:before{content:'';width:34px;height:4px;border-radius:999px;background:var(--blue)}h1,h2,h3{margin:0;color:var(--blue-navy);line-height:1.06}.lead{font-size:20px!important;color:#1b3765!important;font-weight:750}.home-intro{display:grid;grid-template-columns:minmax(320px,1fr)minmax(360px,.9fr);gap:44px;align-items:center}.home-intro-copy,.home-stat-board,.section-head,.two-col,.pillar-grid,.metric-grid,.participation-grid,.programme-days,.sponsor-grid,.info-grid,.region-grid,.benefit-grid{position:relative;z-index:1}.home-intro h1{font-size:clamp(38px,5vw,78px);max-width:900px}.home-intro p{font-size:18px;line-height:1.7;max-width:860px}.intro-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.home-stat-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.home-stat-board article,.metric-grid article{border:1px solid rgba(13,77,168,.12);background:rgba(255,255,255,.92);box-shadow:var(--shadow);border-radius:24px;padding:24px}.home-stat-board strong,.metric-grid strong{display:block;color:var(--blue);font-size:34px}.home-stat-board span,.metric-grid span{display:block;margin-top:6px;font-weight:850;color:var(--text)}
.patronage{padding:70px 6vw;background:linear-gradient(180deg,#fff,#f7fbff)}.patronage-layout{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}.patronage-copy h2{font-size:clamp(34px,4vw,58px)}.patronage-copy h2 span{color:var(--blue)}.patronage-copy p{font-size:18px;line-height:1.7;max-width:760px}.patronage-icons{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.patronage-icons span{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;font-weight:900;color:var(--blue-deep);box-shadow:0 10px 25px rgba(6,26,67,.08)}.patronage-icons span:nth-child(2n) b{color:var(--green)}.patronage-icons span:nth-child(3n) b{color:var(--orange)}.patronage-card{position:relative;min-height:315px;border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--line);display:grid;grid-template-columns:1fr 300px 42px;box-shadow:var(--shadow)}.patronage-info{padding:38px 32px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.patronage-info small{font-size:15px;font-weight:900;color:var(--text)}.patronage-info h3{font-size:clamp(32px,3vw,48px);color:var(--blue);margin:10px 0 8px;white-space:nowrap}.patronage-info strong{font-size:18px;color:var(--blue-navy);line-height:1.35}.patronage-emblem{width:110px;margin-top:24px}.president-portrait{height:100%;overflow:hidden}.president-portrait img{width:100%;height:100%;object-fit:cover;object-position:center}.ci-flag-ribbon{display:grid;grid-template-rows:1fr 1fr 1fr}.ci-flag-ribbon span:nth-child(1){background:var(--orange)}.ci-flag-ribbon span:nth-child(2){background:#fff}.ci-flag-ribbon span:nth-child(3){background:var(--green)}
.section-head{max-width:900px;margin:0 auto 34px;text-align:center}.section-head h2{font-size:clamp(34px,4vw,60px)}.section-head p{font-size:18px;line-height:1.7;color:var(--muted)}.pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.pillar-grid article{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.pillar-grid span{display:inline-flex;width:42px;height:42px;border-radius:50%;align-items:center;justify-content:center;background:var(--blue);color:#fff;font-weight:900}.pillar-grid h3{font-size:23px;margin:18px 0 10px}.pillar-grid p{line-height:1.55;color:var(--muted);font-weight:700}.compact-bottom{padding-bottom:70px}.white-section{background:#fff}.patterned-bg{background:#f7fbff}.page-hero{min-height:420px;padding:86px 6vw;display:flex;align-items:center;background-size:cover;background-position:center;color:#fff;position:relative;overflow:hidden}.page-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,67,.90),rgba(13,77,168,.72),rgba(242,103,34,.30))}.page-hero>div{position:relative;z-index:1;max-width:980px}.page-hero h1{font-size:clamp(42px,5vw,78px);color:#fff}.page-hero p{font-size:20px;line-height:1.65;max-width:850px;color:#eef6ff}.salon-hero{background-image:url('../uploads/slides/slide-001.webp')}.participate-hero{background-image:url('../uploads/slides/slide-002.webp')}.programme-hero{background-image:url('../uploads/slides/slide-003.webp')}.expo-hero{background-image:url('../uploads/slides/slide-004.webp')}.info-hero{background-image:url('../uploads/slides/slide-005.webp')}.contact-hero{background-image:url('../uploads/slides/slide-006.webp')}.two-col{display:grid;grid-template-columns:minmax(320px,1fr)minmax(320px,.85fr);gap:34px;align-items:start}.two-col h2{font-size:clamp(34px,4vw,62px)}.two-col p{font-size:18px;line-height:1.75}.premium-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.premium-panel h3{font-size:28px;margin-bottom:18px}.check-list{padding:0;margin:0;display:grid;gap:13px;list-style:none}.check-list li{position:relative;padding-left:30px;font-weight:750;line-height:1.5}.check-list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--green);font-weight:900}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.participation-grid,.sponsor-grid,.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.participation-grid article,.sponsor-grid article,.info-grid article{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow)}.participation-grid span,.sponsor-grid span,.info-grid span{display:inline-flex;color:var(--orange);text-transform:uppercase;font-weight:900;font-size:12px;letter-spacing:.12em}.participation-grid h3,.sponsor-grid strong,.info-grid strong{display:block;color:var(--blue-deep);font-size:28px;line-height:1.15;margin:12px 0}.participation-grid p,.sponsor-grid p,.info-grid p{line-height:1.6;color:var(--muted);font-weight:700}.participation-grid button{border:0;border-radius:12px;background:var(--blue);color:#fff;padding:12px 16px;font-weight:900;cursor:pointer}.benefit-grid,.region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1100px;margin:0 auto}.benefit-grid span,.region-grid span{background:linear-gradient(180deg,#fff,#f3f7ff);border:1px solid var(--line);border-radius:16px;padding:16px 18px;text-align:center;font-weight:900;color:var(--blue-deep);box-shadow:0 10px 22px rgba(6,26,67,.07)}.programme-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.programme-days article{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.programme-days span{color:var(--orange);font-weight:900;text-transform:uppercase;letter-spacing:.12em}.programme-days h2{font-size:34px;margin:12px 0 20px}.programme-days li{margin:12px 0;font-weight:800;line-height:1.5}.expo-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.expo-details span{background:var(--blue);color:#fff;border-radius:14px;padding:14px;font-weight:900;text-align:center}.sponsor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sponsor-grid article:nth-child(1) strong{color:var(--orange)}.sponsor-grid article:nth-child(2) strong{color:var(--blue)}.sponsor-grid article:nth-child(3) strong{color:var(--green)}.sponsor-grid article:nth-child(4) strong{color:var(--red)}.contact-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:34px;align-items:start;background:#f7fbff}.contact-panel{background:var(--blue-deep);color:#fff;border-radius:28px;padding:30px;box-shadow:var(--shadow)}.contact-panel img{width:230px;background:#fff;border-radius:14px;padding:8px;margin-bottom:20px}.contact-panel strong{display:block;color:#cfe1ff;margin-top:18px}.contact-panel a,.contact-panel span{display:block;margin-top:8px;color:#fff;font-weight:900}.form-wrap.compact{max-width:980px;width:100%;padding:0}.premium-form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.premium-form label{display:grid;gap:7px;font-size:13px;font-weight:900;color:var(--blue-deep);margin-bottom:14px}.premium-form input,.premium-form select,.premium-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 13px;font:inherit;color:var(--text);background:#f8fbff;outline:none}.premium-form input:focus,.premium-form select:focus,.premium-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(13,77,168,.11);background:#fff}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important}.alert{border-radius:16px;padding:14px 16px;margin:0 0 18px;font-weight:800}.alert.success{background:#eaf8ef;color:var(--green);border:1px solid #bae3c1}.alert.error{background:#fff0ec;color:var(--red);border:1px solid #ffc7b8}.premium-modal{display:none;position:fixed;inset:0;z-index:3000}.premium-modal.is-open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(7px)}.modal-card{position:relative;width:min(1220px,92vw);max-height:88vh;margin:5vh auto;background:#fff;border-radius:30px;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;box-shadow:0 38px 100px rgba(0,0,0,.34)}.modal-close{position:absolute;right:18px;top:16px;z-index:5;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:var(--blue-navy);font-size:26px;cursor:pointer;box-shadow:0 8px 22px rgba(6,26,67,.16)}.modal-visual{position:relative;min-height:620px;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:#061a43;color:#fff}.modal-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.58}.modal-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,26,67,.90),transparent 58%)}.modal-visual>*{position:relative;z-index:1}.modal-visual-badge{align-self:flex-start;background:var(--orange);border-radius:999px;padding:9px 14px;font-weight:900;margin-bottom:18px}.modal-visual h3{font-size:34px;color:#fff}.modal-visual p,.modal-visual li{line-height:1.5;color:#e8f1ff;font-weight:750}.modal-visual ul{padding-left:18px}.modal-mini-grid{display:flex;gap:8px;flex-wrap:wrap}.modal-mini-grid span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:8px 12px;font-weight:900}.modal-form-panel{padding:34px;overflow:auto}.modal-logo{width:210px;margin-bottom:16px}.modal-form-panel h2{font-size:38px}.modal-intro{font-weight:750;color:var(--muted);line-height:1.5}.modal-submit{width:100%;margin-top:6px}.modal-open{overflow:hidden}.site-footer{background:var(--blue-navy);color:#fff;padding:42px 6vw 24px}.footer-inner{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:30px}.footer-logo{width:250px;background:#fff;border-radius:14px;padding:8px}.site-footer p,.site-footer a,.site-footer span{color:#e8f1ff;line-height:1.6}.site-footer strong{display:block;margin-bottom:12px}.site-footer a{display:block;margin:7px 0}.footer-bottom{text-align:center;margin-top:28px;color:#bdd1f3;font-weight:700}
@media(max-width:1300px){.top-shell{grid-template-columns:280px 1fr 50px;padding:4px 18px}.brand img{width:260px}.main-nav{gap:6px}.main-nav a{font-size:12.5px;padding:0 10px}.home-intro,.patronage-layout,.two-col{grid-template-columns:1fr}.sponsor-grid,.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-card{grid-template-columns:1fr}.modal-visual{min-height:330px}.modal-form-panel{max-height:56vh}.patronage-card{max-width:900px}}
@media(max-width:980px){.top-shell{grid-template-columns:1fr 50px}.brand{justify-content:flex-start}.brand img{width:220px}.main-nav{position:absolute;left:14px;right:14px;top:calc(100% + 8px);display:none;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:var(--heavy)}.main-nav.is-open{display:flex}.main-nav a{width:100%;min-height:40px}.slider-arrow{width:36px;height:36px;font-size:26px}.metric-grid,.participation-grid,.programme-days,.sponsor-grid,.info-grid,.benefit-grid,.region-grid,.home-stat-board{grid-template-columns:1fr}.contact-layout{grid-template-columns:1fr}.patronage-card{grid-template-columns:1fr}.ci-flag-ribbon{height:16px;grid-template-columns:1fr 1fr 1fr;grid-template-rows:none}.president-portrait{height:300px;order:2}.patronage-info{order:1}.footer-inner{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}
@media(max-width:640px){.top-shell{min-height:60px;padding:4px 10px}.brand img{width:188px}.slider-stage{height:58vw}.hero-actions{margin-top:6px}.hero-contact,.btn{min-height:32px;font-size:12px;padding:0 9px}.pro-section,.content-section,.patronage{padding:46px 18px}.home-intro h1,.page-hero h1{font-size:34px}.page-hero{min-height:360px;padding:58px 18px}.patronage-card{border-radius:22px}.patronage-info{padding:24px}.patronage-info h3{white-space:normal;font-size:32px}.modal-card{width:96vw;margin:2vh auto;max-height:96vh;border-radius:22px}.modal-form-panel{padding:22px}.modal-visual{min-height:260px}.modal-form-panel h2{font-size:30px}}

/* S2IA V7 — top menu simplifié selon instruction : noir, sans arrondi hors survol */
.site-header .main-nav{
    gap:18px;
}
.site-header .main-nav a{
    background:transparent !important;
    color:#050505 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    min-height:34px !important;
    padding:0 4px !important;
    font-size:15px !important;
    font-weight:900 !important;
    line-height:34px !important;
    transition:background .18s ease,color .18s ease;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus,
.site-header .main-nav a.is-active{
    background:#050505 !important;
    color:#f2c14b !important;
    transform:none !important;
    box-shadow:none !important;
    padding:0 8px !important;
}
.site-header .nav-toggle{
    background:#050505 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}
.site-header .nav-toggle span{background:#fff !important;}
@media(max-width:1300px){
    .site-header .main-nav{gap:12px;}
    .site-header .main-nav a{font-size:13.5px !important;}
}
@media(max-width:980px){
    .site-header .main-nav a{
        width:100%;
        justify-content:center;
        padding:0 8px !important;
    }
}

/* === V8 FINAL USER FIXES === */
.site-header{position:sticky;top:0;background:#fff!important;box-shadow:0 5px 18px rgba(6,26,67,.06)!important;border-bottom:1px solid #e6edf7!important;}
.top-shell{min-height:62px!important;padding:0 28px!important;grid-template-columns:320px minmax(0,1fr)48px!important;gap:14px!important;}
.brand{justify-content:center!important;}
.brand img{width:286px!important;height:58px!important;object-fit:contain!important;}
.site-header .main-nav{gap:20px!important;}
.site-header .main-nav a{
    background:transparent!important;
    color:#050505!important;
    box-shadow:none!important;
    border-radius:0!important;
    min-height:38px!important;
    line-height:38px!important;
    padding:0 2px!important;
    font-size:16px!important;
    font-weight:900!important;
    transform:none!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus{
    background:transparent!important;
    color:var(--red)!important;
    box-shadow:none!important;
    transform:none!important;
    padding:0 2px!important;
}
.site-header .main-nav a.is-active{
    background:transparent!important;
    color:var(--red)!important;
    box-shadow:none!important;
    transform:none!important;
    padding:0 2px!important;
}
.site-header .nav-toggle{width:42px!important;height:42px!important;background:#050505!important;border-radius:0!important;box-shadow:none!important;}
.site-header .nav-toggle span{background:#fff!important;width:23px!important;height:3px!important;}
.hero-slider{margin:0!important;padding:0!important;background:#fff!important;line-height:0!important;overflow:hidden!important;}
.slider-stage{width:100vw!important;height:calc(100vw * 786 / 1999)!important;max-height:none!important;min-height:0!important;margin:0 calc(50% - 50vw)!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:hidden!important;}
.slide img{width:100%!important;height:100%!important;object-fit:fill!important;object-position:center center!important;background:transparent!important;}
.slider-dots{display:none!important;}
.slider-arrow{width:42px!important;height:42px!important;background:rgba(255,255,255,.92)!important;color:var(--blue-deep)!important;box-shadow:0 10px 26px rgba(6,26,67,.18)!important;}
.slider-arrow.prev{left:14px!important}.slider-arrow.next{right:14px!important}
.hero-actions{max-width:940px!important;margin:0 auto!important;padding:8px 10px 10px!important;gap:4px!important;background:#fff!important;}
.hero-contact{min-height:31px!important;padding:0 8px!important;border-radius:8px!important;font-size:12px!important;gap:5px!important;box-shadow:none!important;background:#fff!important;}
.hero-contact svg{width:13px!important;height:13px!important;}
.btn{min-height:32px!important;padding:0 12px!important;border-radius:8px!important;font-size:12.5px!important;box-shadow:0 8px 18px rgba(6,26,67,.10)!important;}
.salon-hero{background-image:url('../uploads/slides/slide-001.webp')!important}.participate-hero{background-image:url('../uploads/slides/slide-002.webp')!important}.programme-hero{background-image:url('../uploads/slides/slide-003.webp')!important}.expo-hero{background-image:url('../uploads/slides/slide-004.webp')!important}.info-hero{background-image:url('../uploads/slides/slide-005.webp')!important}.contact-hero{background-image:url('../uploads/slides/slide-006.webp')!important}
@media(max-width:1300px){
    .top-shell{grid-template-columns:260px minmax(0,1fr)46px!important;padding:0 16px!important;}
    .brand img{width:236px!important;height:54px!important;}
    .site-header .main-nav{gap:13px!important;}
    .site-header .main-nav a{font-size:13.5px!important;}
}
@media(max-width:980px){
    .top-shell{grid-template-columns:1fr 46px!important;}
    .brand{justify-content:flex-start!important;}
    .brand img{width:210px!important;}
    .main-nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 6px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;padding:12px!important;box-shadow:var(--heavy)!important;}
    .main-nav.is-open{display:flex!important;}
    .site-header .main-nav a{width:100%!important;text-align:center!important;justify-content:center!important;}
}
@media(max-width:640px){
    .slider-stage{height:calc(100vw * 786 / 1999)!important;}
    .hero-actions{display:grid!important;grid-template-columns:1fr!important;}
    .hero-contact,.btn{width:100%!important;justify-content:center!important;min-height:34px!important;}
}

/* === V9 strict corrections === */
.site-header{position:sticky!important;top:0!important;z-index:80!important;background:#fff!important;border-bottom:1px solid #e5edf8!important;box-shadow:0 6px 20px rgba(8,46,117,.07)!important;}
.top-shell{max-width:1760px!important;min-height:70px!important;padding:6px 26px!important;grid-template-columns:300px minmax(0,1fr)48px!important;gap:18px!important;}
.brand{justify-content:flex-start!important;}
.brand img{width:278px!important;height:58px!important;object-fit:contain!important;}
.site-header .main-nav{gap:18px!important;}
.site-header .main-nav a{background:transparent!important;color:#080808!important;box-shadow:none!important;border-radius:0!important;min-height:36px!important;padding:0!important;font-size:15px!important;font-weight:900!important;line-height:1!important;transition:color .2s ease!important;}
.site-header .main-nav a:hover,.site-header .main-nav a:focus{background:transparent!important;color:#d71920!important;transform:none!important;box-shadow:none!important;}
.site-header .main-nav a.is-active{background:transparent!important;color:#d71920!important;box-shadow:none!important;}
.nav-toggle{display:inline-flex!important;width:42px!important;height:42px!important;border-radius:12px!important;background:#000!important;box-shadow:0 10px 20px rgba(0,0,0,.18)!important;}
.nav-toggle span{background:#fff!important;width:22px!important;height:3px!important;}
main{margin:0!important;padding:0!important;}
.hero-slider{margin:0!important;padding:0!important;width:100%!important;background:#fff!important;line-height:0!important;overflow:hidden!important;}
.slider-stage{width:100vw!important;height:calc(100vw * 755 / 1920)!important;max-height:none!important;min-height:0!important;margin:0 calc(50% - 50vw)!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;overflow:hidden!important;}
.slide{background:#fff!important;}
.slide img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;background:#fff!important;}
.slider-dots{display:none!important;}
.slider-arrow{width:38px!important;height:38px!important;font-size:27px!important;background:rgba(255,255,255,.90)!important;}
.slider-arrow.prev{left:14px!important}.slider-arrow.next{right:14px!important}
.hero-actions{max-width:920px!important;margin:0 auto!important;padding:7px 10px 9px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;flex-wrap:wrap!important;background:#fff!important;}
.hero-contact{min-height:32px!important;padding:0 9px!important;border-radius:9px!important;font-size:12.5px!important;box-shadow:none!important;}
.hero-contact svg{width:14px!important;height:14px!important;}
.btn{min-height:33px!important;padding:0 13px!important;border-radius:9px!important;font-size:12.8px!important;box-shadow:0 7px 15px rgba(6,26,67,.12)!important;}
@media(max-width:980px){.top-shell{grid-template-columns:1fr 46px!important;min-height:62px!important;padding:4px 14px!important}.brand img{width:225px!important;height:52px!important}.main-nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 6px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;padding:12px!important;box-shadow:var(--heavy)!important}.main-nav.is-open{display:flex!important}.site-header .main-nav a{width:100%!important;text-align:center!important;justify-content:center!important;min-height:40px!important}.slider-stage{height:calc(100vw * 755 / 1920)!important}.hero-actions{display:grid!important;grid-template-columns:1fr!important;max-width:none!important}.hero-contact,.btn{width:100%!important;justify-content:center!important}}
@media(max-width:640px){.brand img{width:190px!important;height:46px!important}.nav-toggle{width:38px!important;height:38px!important}.hero-contact,.btn{font-size:12px!important;min-height:31px!important}}

/* === V10 public strict fixes === */
.site-header{position:sticky!important;top:0!important;z-index:80!important;background:#fff!important;border-bottom:1px solid #e7edf6!important;box-shadow:0 5px 16px rgba(8,46,117,.06)!important;}
.top-shell{max-width:1760px!important;min-height:66px!important;padding:5px 28px!important;grid-template-columns:295px minmax(0,1fr)46px!important;gap:18px!important;align-items:center!important;}
.brand{justify-content:flex-start!important;}
.brand img{width:272px!important;height:56px!important;object-fit:contain!important;}
.site-header .main-nav{gap:20px!important;}
.site-header .main-nav a{
    background:transparent!important;
    color:#050505!important;
    box-shadow:none!important;
    border-radius:0!important;
    min-height:38px!important;
    padding:0!important;
    font-size:15.5px!important;
    font-weight:900!important;
    line-height:38px!important;
    transition:color .18s ease!important;
}
.site-header .main-nav a:hover,.site-header .main-nav a:focus{background:transparent!important;color:#d71920!important;transform:none!important;box-shadow:none!important;}
.site-header .main-nav a.is-active{background:transparent!important;color:#d71920!important;box-shadow:none!important;}
.nav-toggle{display:inline-flex!important;width:42px!important;height:42px!important;border-radius:0!important;background:#000!important;box-shadow:none!important;}
.nav-toggle span{background:#fff!important;width:22px!important;height:3px!important;}
main{margin:0!important;padding:0!important;}
.hero-slider{margin:0!important;padding:0!important;width:100%!important;background:#fff!important;line-height:0!important;overflow:hidden!important;}
.slider-stage{width:100vw!important;height:calc(100vw * 786 / 1999)!important;max-height:none!important;min-height:0!important;margin:0 calc(50% - 50vw)!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;overflow:hidden!important;transform:none!important;}
.slide{background:#fff!important;}
.slide img{width:100%!important;height:100%!important;object-fit:fill!important;object-position:center center!important;background:#fff!important;}
.slider-dots{display:none!important;}
.slider-arrow{width:38px!important;height:38px!important;font-size:28px!important;background:rgba(255,255,255,.94)!important;color:#082e75!important;border:0!important;box-shadow:0 8px 20px rgba(6,26,67,.14)!important;}
.slider-arrow.prev{left:12px!important}.slider-arrow.next{right:12px!important}
.hero-actions{max-width:930px!important;margin:0 auto!important;padding:7px 10px 9px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;flex-wrap:wrap!important;background:#fff!important;}
.hero-contact{min-height:31px!important;padding:0 8px!important;border-radius:8px!important;font-size:12.5px!important;gap:5px!important;box-shadow:none!important;background:#fff!important;border:1px solid #e5edf8!important;}
.hero-contact svg{width:13px!important;height:13px!important;}
.btn{min-height:31px!important;padding:0 12px!important;border-radius:8px!important;font-size:12.5px!important;box-shadow:0 7px 14px rgba(6,26,67,.10)!important;}
.btn-primary{background:#0d4da8!important;color:#fff!important}.btn-secondary{background:#f26722!important;color:#fff!important}
.site-footer{margin-top:0!important;}
@media(max-width:1180px){.top-shell{grid-template-columns:240px minmax(0,1fr)44px!important;padding:4px 16px!important}.brand img{width:225px!important;height:52px!important}.site-header .main-nav{gap:12px!important}.site-header .main-nav a{font-size:13px!important}}
@media(max-width:980px){.top-shell{grid-template-columns:1fr 44px!important;min-height:62px!important}.main-nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 6px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;background:#fff!important;border:1px solid #dce7f6!important;border-radius:14px!important;padding:12px!important;box-shadow:0 18px 45px rgba(8,46,117,.14)!important}.main-nav.is-open{display:flex!important}.site-header .main-nav a{width:100%!important;text-align:center!important;justify-content:center!important;min-height:40px!important}.hero-actions{display:grid!important;grid-template-columns:1fr!important;max-width:none!important}.hero-contact,.btn{width:100%!important;justify-content:center!important}}
@media(max-width:640px){.brand img{width:190px!important;height:46px!important}.slider-stage{height:calc(100vw * 786 / 1999)!important}.nav-toggle{width:38px!important;height:38px!important}.hero-contact,.btn{font-size:12px!important;min-height:31px!important}}


/* === V13 accueil : actions, patronage, institutions, compteur === */
.site-header .main-nav a{background:transparent!important;color:#080808!important;border-radius:0!important;box-shadow:none!important;min-height:38px!important;padding:0!important;font-size:15.5px!important;font-weight:900!important;line-height:1!important;}
.site-header .main-nav a:hover,.site-header .main-nav a:focus{color:#d71920!important;background:transparent!important;box-shadow:none!important;transform:none!important;}
.site-header .main-nav a.is-active{color:#d71920!important;background:transparent!important;box-shadow:none!important;}
.hero-slider{margin:0!important;padding:0!important;background:#fff!important;line-height:0!important;}
.slider-stage{width:100vw!important;height:calc(100vw * 786 / 1999)!important;max-height:none!important;min-height:0!important;margin:0 calc(50% - 50vw)!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important;}
.slide img{width:100%!important;height:100%!important;object-fit:fill!important;object-position:center center!important;background:#fff!important;}
.slider-arrow{width:42px!important;height:42px!important;font-size:30px!important;background:rgba(255,255,255,.92)!important;color:#062f78!important;}
.hero-actions{max-width:none!important;width:100%!important;margin:0!important;padding:14px 22px!important;background:#050505!important;display:block!important;}
.hero-actions-inner{max-width:1780px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;}
.action-pill{min-height:52px;padding:0 20px;border-radius:15px;background:#fff;color:#062f78;border:1px solid rgba(255,255,255,.35);display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:17px;font-weight:950;white-space:nowrap;box-shadow:0 12px 26px rgba(0,0,0,.22);}
.action-pill svg{width:20px;height:20px;fill:#f26722;}
.action-button{min-height:54px!important;padding:0 24px!important;border-radius:15px!important;font-size:17px!important;font-weight:950!important;box-shadow:0 14px 28px rgba(0,0,0,.25)!important;}
.event-countdown{background:#fff;border-radius:16px;padding:8px 10px 9px;display:flex;align-items:center;gap:10px;box-shadow:0 12px 26px rgba(0,0,0,.22);}
.countdown-title{font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#062f78;white-space:nowrap;}
.countdown-grid{display:flex;align-items:center;gap:6px;}
.flip-tile{width:58px;height:58px;border-radius:13px;background:#14a389;color:#fff;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 -2px 0 rgba(0,0,0,.16),0 7px 14px rgba(0,0,0,.14);}
.flip-tile:nth-child(2){background:#0d4da8}.flip-tile:nth-child(3){background:#f26722}.flip-tile:nth-child(4){background:#2e8b36}.flip-tile:nth-child(5){background:#061a43}
.flip-tile:after{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(255,255,255,.35);box-shadow:0 1px 0 rgba(0,0,0,.16);}
.flip-tile b{font-size:24px;line-height:1;font-weight:950;letter-spacing:-.04em;}
.flip-tile small{font-size:8.5px;text-transform:uppercase;font-weight:900;opacity:.95;margin-top:5px;}
.patronage-hero{background:#1f6f24;padding:36px 5vw 42px;color:#fff;position:relative;overflow:hidden;}
.patronage-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 15% 0%,rgba(255,255,255,.14),transparent 32%),radial-gradient(circle at 84% 26%,rgba(242,103,34,.18),transparent 28%);pointer-events:none;}
.patronage-band{position:relative;z-index:1;max-width:1180px;margin:0 auto 20px;padding:14px 22px;border-radius:999px;background:#184f1d;color:#fff;text-align:center;font-size:22px;font-weight:950;letter-spacing:.01em;white-space:nowrap;box-shadow:0 15px 30px rgba(0,0,0,.18);}
.patronage-card-pro{position:relative;z-index:1;max-width:1360px;margin:0 auto;background:#fff;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:minmax(420px,1fr)390px 48px;box-shadow:0 32px 70px rgba(0,0,0,.22);}
.patronage-text-pro{background:#1f6f24;padding:40px 46px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:330px;}
.patronage-text-pro h2{color:#fff;font-size:clamp(36px,4vw,62px);line-height:1.02;margin:0 0 10px;font-weight:950;}
.patronage-text-pro p{color:#fff;font-size:clamp(22px,2.2vw,36px);line-height:1.18;margin:0;font-weight:900;}
.patronage-emblem-pro{width:140px;margin-top:26px;background:#fff;border-radius:18px;padding:10px;box-shadow:0 16px 35px rgba(0,0,0,.17);}
.patronage-photo-pro{min-height:330px;background:#f8fbff;}
.patronage-photo-pro img{width:100%;height:100%;object-fit:cover;object-position:center;}
.ci-flag-pro{display:grid;grid-template-rows:1fr 1fr 1fr;min-height:330px;}.ci-flag-pro span:nth-child(1){background:#f26722}.ci-flag-pro span:nth-child(2){background:#fff}.ci-flag-pro span:nth-child(3){background:#2e8b36}
.institutional-portage{padding:34px 5vw 50px;background:#fff;}
.institutional-board{max-width:1380px;margin:0 auto;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 22px 55px rgba(6,26,67,.13);border:1px solid #e7edf6;}
.institutional-board img{width:100%;height:auto;display:block;}
.premium-modal .modal-card{width:min(1540px,96vw)!important;max-height:94vh!important;margin:3vh auto!important;overflow:auto!important;border-radius:30px!important;}
.premium-modal .modal-visual{min-height:560px!important;}
.premium-modal .modal-form-panel{padding:34px!important;max-height:none!important;overflow:visible!important;}
.premium-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.premium-modal .premium-form input,.premium-modal .premium-form select,.premium-modal .premium-form textarea{min-height:46px!important;}
@media(max-width:1420px){.hero-actions-inner{gap:9px}.action-pill{min-height:46px;font-size:14px;padding:0 14px}.action-button{min-height:48px!important;font-size:15px!important;padding:0 18px!important}.flip-tile{width:48px;height:50px}.flip-tile b{font-size:20px}.countdown-title{display:none}.patronage-card-pro{grid-template-columns:1fr 330px 42px}}
@media(max-width:1020px){.hero-actions-inner{display:grid;grid-template-columns:1fr 1fr;}.action-pill,.action-button,.event-countdown{width:100%;}.event-countdown{grid-column:1/-1;justify-content:center}.patronage-band{white-space:normal;font-size:18px}.patronage-card-pro{grid-template-columns:1fr}.ci-flag-pro{grid-template-columns:1fr 1fr 1fr;grid-template-rows:14px;min-height:14px}.patronage-photo-pro{min-height:300px}.premium-modal .modal-card{grid-template-columns:1fr!important}.premium-modal .modal-visual{min-height:260px!important}.premium-modal .form-grid{grid-template-columns:1fr!important;}}
@media(max-width:640px){.hero-actions{padding:12px 12px!important}.hero-actions-inner{grid-template-columns:1fr}.action-pill,.action-button{min-height:45px!important;font-size:14px!important}.event-countdown{display:block;text-align:center}.countdown-grid{justify-content:center;margin-top:8px;flex-wrap:wrap}.flip-tile{width:54px;height:54px}.patronage-hero{padding:28px 14px 34px}.patronage-card-pro{border-radius:20px}.patronage-text-pro{padding:28px 22px;min-height:auto}.patronage-text-pro h2{font-size:30px}.patronage-text-pro p{font-size:20px}.patronage-emblem-pro{width:100px}.institutional-portage{padding:22px 12px 34px}.slider-stage{height:calc(100vw * 786 / 1999)!important}.premium-modal .modal-card{width:97vw!important;margin:1.5vh auto!important;max-height:97vh!important}.premium-modal .modal-form-panel{padding:22px!important}}

/* === V13 page backgrounds webp === */
.salon-hero{background-image:url('../uploads/slides/slide-001.webp')!important}.participate-hero{background-image:url('../uploads/slides/slide-002.webp')!important}.programme-hero{background-image:url('../uploads/slides/slide-003.webp')!important}.expo-hero{background-image:url('../uploads/slides/slide-004.webp')!important}.info-hero{background-image:url('../uploads/slides/slide-005.webp')!important}.contact-hero{background-image:url('../uploads/slides/slide-006.webp')!important}


/* ================================
   V14 — Optimisation affichage + bloc Haut Patronage
   ================================ */

/* Allègement rendu général */
.hero-slider,
.slider-stage,
.slide,
.slide img,
.patronage-hero,
.patronage-card-pro,
.institutional-board {
  contain: layout paint;
}
.slide img,
.patronage-photo-pro img,
.institutional-board img {
  image-rendering: auto;
}

/* Bloc Haut Patronage : suppression du grand fond vert et présentation institutionnelle premium */
.patronage-hero{
  background:#fff!important;
  color:var(--blue-navy)!important;
  padding:36px 5vw 54px!important;
  position:relative!important;
  overflow:hidden!important;
}
.patronage-hero:before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background:
    radial-gradient(circle at 9% 6%, rgba(13,77,168,.055), transparent 26%),
    radial-gradient(circle at 91% 12%, rgba(242,103,34,.075), transparent 22%),
    linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  pointer-events:none!important;
}

/* Ancienne bande verte neutralisée */
.patronage-band{display:none!important;}

.patronage-titleline{
  position:relative!important;
  z-index:1!important;
  max-width:1420px!important;
  margin:0 auto 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  text-align:center!important;
}
.patronage-titleline strong{
  color:#0b1f43!important;
  font-size:clamp(20px,2.15vw,34px)!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}
.patronage-titleline .title-line{
  width:min(180px,14vw)!important;
  height:3px!important;
  border-radius:999px!important;
  position:relative!important;
}
.patronage-titleline .title-line.orange{background:linear-gradient(90deg,transparent,#f26722)!important;}
.patronage-titleline .title-line.green{background:linear-gradient(90deg,#2e8b36,transparent)!important;}
.patronage-titleline .title-line:after{
  content:''!important;
  position:absolute!important;
  top:50%!important;
  width:10px!important;
  height:10px!important;
  transform:translateY(-50%) rotate(45deg)!important;
  background:#e7b64f!important;
  border-radius:2px!important;
}
.patronage-titleline .title-line.orange:after{right:-10px!important;}
.patronage-titleline .title-line.green:after{left:-10px!important;}

.patronage-card-pro{
  position:relative!important;
  z-index:1!important;
  max-width:1540px!important;
  margin:0 auto!important;
  min-height:335px!important;
  background:#fff!important;
  border:1px solid #e8eef7!important;
  border-radius:30px!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(420px,44%)!important;
  box-shadow:0 22px 60px rgba(6,26,67,.12)!important;
}

.patronage-text-pro{
  background:
    radial-gradient(circle at 10% 0%,rgba(242,103,34,.06),transparent 25%),
    radial-gradient(circle at 90% 110%,rgba(46,139,54,.07),transparent 28%),
    #fff!important;
  color:var(--blue-navy)!important;
  min-height:335px!important;
  padding:42px 54px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
.patronage-deco{
  display:block!important;
  width:150px!important;
  height:3px!important;
  margin:0 0 22px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#f26722 0%,#f2c14b 50%,#2e8b36 100%)!important;
  position:relative!important;
}
.patronage-deco:after{
  content:''!important;
  position:absolute!important;
  left:72px!important;
  top:50%!important;
  width:9px!important;
  height:9px!important;
  transform:translateY(-50%) rotate(45deg)!important;
  background:#e7b64f!important;
  border-radius:2px!important;
}
.patronage-text-pro h2{
  margin:0!important;
  color:#16611f!important;
  font-size:clamp(30px,3.1vw,50px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  font-weight:950!important;
}
.patronage-text-pro h2 span{
  display:block!important;
  color:#1a6b28!important;
  font-size:.88em!important;
  font-weight:900!important;
}
.patronage-text-pro p{
  margin:16px 0 20px!important;
  color:#122846!important;
  font-size:clamp(18px,1.55vw,26px)!important;
  line-height:1.35!important;
  font-weight:750!important;
}
.patronage-emblem-wrap{
  width:98px!important;
  height:78px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid #edf2f9!important;
  box-shadow:0 12px 28px rgba(6,26,67,.10)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px!important;
}
.patronage-emblem-pro{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  margin:0!important;
  background:transparent!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
}

.patronage-photo-pro{
  position:relative!important;
  min-height:335px!important;
  height:100%!important;
  background:#f8fbff!important;
  overflow:hidden!important;
}
.patronage-photo-pro img{
  width:100%!important;
  height:100%!important;
  min-height:335px!important;
  object-fit:cover!important;
  object-position:center!important;
}
.patronage-photo-pro:before{
  content:''!important;
  position:absolute!important;
  left:-64px!important;
  top:-18%!important;
  bottom:-18%!important;
  width:128px!important;
  background:#fff!important;
  border-radius:50%!important;
  z-index:2!important;
  box-shadow:16px 0 0 rgba(242,103,34,.92),24px 0 0 #fff,34px 0 0 rgba(46,139,54,.92)!important;
  pointer-events:none!important;
}
.patronage-photo-pro .ci-curve{display:none!important;}
.ci-flag-pro{display:none!important;}

/* Portage institutionnel : plus léger visuellement */
.institutional-portage{
  padding:24px 5vw 44px!important;
  background:#fff!important;
}
.institutional-board{
  max-width:1380px!important;
  margin:0 auto!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 14px 36px rgba(6,26,67,.08)!important;
  border:1px solid #edf2f9!important;
}
.institutional-board img{
  width:100%!important;
  height:auto!important;
  display:block!important;
}

/* Responsive patronage */
@media(max-width:1100px){
  .patronage-titleline strong{white-space:normal!important;font-size:24px!important;}
  .patronage-titleline .title-line{width:70px!important;}
  .patronage-card-pro{
    grid-template-columns:1fr!important;
    max-width:760px!important;
  }
  .patronage-text-pro{
    min-height:auto!important;
    padding:34px 30px!important;
  }
  .patronage-photo-pro,
  .patronage-photo-pro img{
    min-height:320px!important;
  }
  .patronage-photo-pro:before{display:none!important;}
}
@media(max-width:640px){
  .patronage-hero{padding:30px 14px 42px!important;}
  .patronage-titleline{gap:10px!important;margin-bottom:16px!important;}
  .patronage-titleline .title-line{width:38px!important;}
  .patronage-titleline strong{font-size:18px!important;}
  .patronage-card-pro{border-radius:22px!important;}
  .patronage-text-pro{padding:28px 22px!important;}
  .patronage-text-pro h2{font-size:30px!important;}
  .patronage-text-pro p{font-size:17px!important;}
  .patronage-photo-pro,
  .patronage-photo-pro img{min-height:260px!important;}
}


/* ================================
   V15 — Section Haut Patronage image + Portage Institutionnel
   ================================ */

/* Logo top : utiliser le même format visuel que le pied de page, aligné à gauche */
.top-shell{
  grid-template-columns:270px minmax(0,1fr)54px!important;
  min-height:68px!important;
  padding:6px 28px!important;
}
.brand{
  justify-content:flex-start!important;
}
.brand img{
  width:250px!important;
  height:auto!important;
  max-height:58px!important;
  object-fit:contain!important;
  object-position:left center!important;
}

/* Remplacement complet de l'ancien bloc Haut Patronage */
.patronage-hero,
.patronage-band,
.patronage-card-pro,
.institutional-portage{
  display:none!important;
}

.patronage-image-section{
  width:100%;
  background:#fff;
  padding:22px 5vw 10px;
  contain:layout paint;
}
.patronage-image-section img{
  width:min(100%,1920px);
  height:auto;
  margin:0 auto;
  display:block;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}

/* Portage Institutionnel : zone verte + 5 vignettes */
.institutional-vignettes{
  width:100%;
  padding:22px 5vw 44px;
  background:#fff;
}
.institutional-vignettes-inner{
  width:min(100%,1500px);
  margin:0 auto;
  background:#2e8b36;
  border-radius:28px;
  padding:28px 30px 34px;
  box-shadow:0 18px 45px rgba(6,26,67,.12);
  overflow:hidden;
  position:relative;
}
.institutional-vignettes-inner:before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.14),transparent 26%),
    radial-gradient(circle at 92% 28%,rgba(242,103,34,.12),transparent 26%);
  pointer-events:none;
}
.institutional-vignettes h2{
  position:relative;
  z-index:1;
  margin:0 0 24px;
  text-align:center;
  color:#fff;
  font-size:clamp(25px,2.4vw,38px);
  line-height:1.1;
  font-weight:950;
  letter-spacing:.02em;
}
.institution-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}
.institution-card{
  background:#fff;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.72);
  padding:16px 13px 14px;
  min-height:178px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  box-shadow:0 14px 30px rgba(6,26,67,.12);
  transition:transform .2s ease, box-shadow .2s ease;
}
.institution-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 40px rgba(6,26,67,.18);
}
.institution-logo-box{
  width:100%;
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#fff;
  overflow:hidden;
}
.institution-logo-box img{
  max-width:100%;
  max-height:86px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.institution-card h3{
  margin:12px 0 0;
  color:#06377e;
  font-size:14px;
  line-height:1.25;
  font-weight:900;
  text-align:center;
}

/* Ajustements responsive */
@media(max-width:1280px){
  .top-shell{grid-template-columns:235px minmax(0,1fr)50px!important;}
  .brand img{width:220px!important;max-height:52px!important;}
  .institution-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:980px){
  .top-shell{grid-template-columns:1fr 50px!important;}
  .brand img{width:210px!important;}
  .patronage-image-section{padding:16px 12px 8px;}
  .institutional-vignettes{padding:18px 12px 34px;}
  .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .brand img{width:185px!important;max-height:48px!important;}
  .institutional-vignettes-inner{padding:22px 16px 24px;border-radius:22px;}
  .institution-grid{grid-template-columns:1fr;}
  .institution-card{min-height:156px;}
}

/* ================================
   V16 — Corrections strictes demandées
   ================================ */

/* Logo top : même fichier/format que le pied de page, taille conservée */
.site-header .top-shell{
  grid-template-columns:300px minmax(0,1fr)54px!important;
  min-height:92px!important;
  padding:8px 28px!important;
}
.site-header .brand{
  justify-content:flex-start!important;
  align-items:center!important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact{
  width:250px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:#fff!important;
  border-radius:14px!important;
  padding:8px!important;
  box-shadow:none!important;
  filter:none!important;
  display:block!important;
}

/* Portage institutionnel : plus de fond vert, logos seulement, pas de titres en bas */
.institutional-vignettes{
  background:#fff!important;
  padding:26px 5vw 46px!important;
}
.institutional-vignettes-inner{
  background:#fff!important;
  border:1px solid #e7edf6!important;
  box-shadow:0 14px 34px rgba(6,26,67,.08)!important;
  border-radius:24px!important;
  padding:28px 28px 32px!important;
}
.institutional-vignettes-inner:before{display:none!important;}
.institutional-vignettes h2{
  color:#073b7a!important;
  font-size:clamp(24px,2.2vw,36px)!important;
  margin:0 0 24px!important;
  text-align:center!important;
}
.institutional-vignettes h2:after{
  content:'';
  display:block;
  width:170px;
  height:4px;
  margin:12px auto 0;
  border-radius:999px;
  background:linear-gradient(90deg,#0d4da8,#f26722,#f2c14b,#2e8b36);
}
.institution-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
}
.institution-card{
  background:#fff!important;
  border:1px solid #dfe9f6!important;
  border-radius:22px!important;
  padding:18px!important;
  min-height:150px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 12px 28px rgba(6,26,67,.08)!important;
}
.institution-logo-box{
  width:100%!important;
  min-height:110px!important;
  height:110px!important;
  border-radius:16px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.institution-logo-box img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:110px!important;
  object-fit:contain!important;
  display:block!important;
}
.institution-card h3{display:none!important;}

/* Popups : présentation plus compacte, complète et lisible */
.premium-modal .modal-card{
  width:min(1220px,94vw)!important;
  max-height:90vh!important;
  margin:5vh auto!important;
  display:grid!important;
  grid-template-columns:minmax(320px,.78fr) minmax(520px,1.22fr)!important;
  overflow:hidden!important;
  border-radius:26px!important;
  background:#fff!important;
  box-shadow:0 34px 90px rgba(0,0,0,.32)!important;
}
.premium-modal .modal-close{
  width:38px!important;
  height:38px!important;
  right:14px!important;
  top:14px!important;
  z-index:10!important;
}
.premium-modal .modal-visual{
  min-height:0!important;
  height:auto!important;
  padding:26px!important;
}
.premium-modal .modal-visual h3{
  font-size:clamp(24px,2.2vw,34px)!important;
  line-height:1.12!important;
}
.premium-modal .modal-visual p,
.premium-modal .modal-visual li{
  font-size:14px!important;
  line-height:1.45!important;
}
.premium-modal .modal-form-panel{
  padding:28px 34px!important;
  overflow:auto!important;
  max-height:90vh!important;
}
.premium-modal .modal-logo{
  width:205px!important;
  height:auto!important;
  margin:0 0 14px!important;
  background:#fff!important;
  border-radius:12px!important;
  padding:6px!important;
}
.premium-modal .modal-form-panel h2{
  font-size:clamp(30px,3vw,44px)!important;
  line-height:1.08!important;
  margin:0 0 12px!important;
}
.premium-modal .modal-intro{
  font-size:16px!important;
  line-height:1.45!important;
  margin:0 0 18px!important;
}
.premium-modal .premium-form{
  padding:22px!important;
  border-radius:22px!important;
}
.premium-modal .form-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.premium-modal .premium-form label{
  font-size:13px!important;
  margin-bottom:12px!important;
}
.premium-modal .premium-form input,
.premium-modal .premium-form select,
.premium-modal .premium-form textarea{
  min-height:42px!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  font-size:14px!important;
}
.premium-modal .premium-form textarea{
  min-height:84px!important;
}
.premium-modal .modal-submit{
  min-height:46px!important;
  font-size:15px!important;
  border-radius:12px!important;
}

@media(max-width:1300px){
  .site-header .top-shell{grid-template-columns:280px minmax(0,1fr)50px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:250px!important;}
}
@media(max-width:1080px){
  .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .premium-modal .modal-card{grid-template-columns:1fr!important;width:min(760px,96vw)!important;margin:2vh auto!important;max-height:96vh!important;}
  .premium-modal .modal-visual{min-height:220px!important;}
  .premium-modal .modal-form-panel{max-height:none!important;}
}
@media(max-width:980px){
  .site-header .top-shell{grid-template-columns:1fr 50px!important;min-height:78px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:220px!important;}
}
@media(max-width:640px){
  .site-header .top-shell{min-height:68px!important;padding:6px 12px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:185px!important;padding:6px!important;}
  .institution-grid{grid-template-columns:1fr!important;}
  .institution-card{min-height:130px!important;}
  .premium-modal .modal-form-panel{padding:22px 18px!important;}
  .premium-modal .form-grid{grid-template-columns:1fr!important;}
  .premium-modal .modal-logo{width:178px!important;}
}

/* =========================================================
   S2IA V17 — Top menu, Portage Institutionnel, Popups, Chiffres clés
   ========================================================= */

/* Top menu type premium, inspiré de la référence fournie, sans image générée */
.site-header{
    position:sticky!important;
    top:0!important;
    z-index:1000!important;
    padding:14px 24px 12px!important;
    background:linear-gradient(180deg,#fbfaf3 0%,#f1efe1 100%)!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
}
.site-header .top-shell{
    width:min(100%,1760px)!important;
    max-width:1760px!important;
    min-height:92px!important;
    margin:0 auto!important;
    padding:12px 22px!important;
    display:grid!important;
    grid-template-columns:330px minmax(0,1fr)58px!important;
    align-items:center!important;
    gap:20px!important;
    border-radius:38px!important;
    background:
      radial-gradient(circle at 0% 0%,rgba(46,139,54,.16),transparent 30%),
      radial-gradient(circle at 100% 0%,rgba(242,103,34,.12),transparent 26%),
      linear-gradient(180deg,#fffdf7 0%,#f6f2df 100%)!important;
    border:1px solid rgba(46,139,54,.14)!important;
    box-shadow:0 18px 44px rgba(6,26,67,.13)!important;
    overflow:hidden!important;
    position:relative!important;
}
.site-header .top-shell:before,
.site-header .top-shell:after{
    content:''!important;
    position:absolute!important;
    border-radius:50%!important;
    pointer-events:none!important;
    z-index:0!important;
}
.site-header .top-shell:before{
    width:240px!important;height:120px!important;left:-44px!important;bottom:-74px!important;background:rgba(46,139,54,.18)!important;
}
.site-header .top-shell:after{
    width:280px!important;height:160px!important;right:-72px!important;top:-88px!important;background:rgba(46,139,54,.14)!important;
}
.site-header .brand,
.site-header .main-nav,
.site-header .nav-toggle{position:relative!important;z-index:1!important;}
.site-header .brand{
    justify-content:flex-start!important;
    align-items:center!important;
    width:100%!important;
    min-height:68px!important;
    padding:8px 16px!important;
    border-radius:28px 10px 28px 10px!important;
    background:rgba(255,255,255,.92)!important;
    border:1px solid rgba(46,139,54,.13)!important;
    box-shadow:0 12px 26px rgba(6,26,67,.07)!important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact{
    width:250px!important;
    height:auto!important;
    max-width:250px!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:left center!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border-radius:0!important;
    box-shadow:none!important;
    filter:drop-shadow(0 5px 10px rgba(6,26,67,.10))!important;
}
.site-header .main-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:28px!important;
}
.site-header .main-nav a{
    background:transparent!important;
    color:#111!important;
    box-shadow:none!important;
    border-radius:0!important;
    min-height:38px!important;
    padding:0!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1!important;
    position:relative!important;
    transition:color .18s ease!important;
}
.site-header .main-nav a:after{
    content:''!important;
    position:absolute!important;
    left:0!important;right:0!important;bottom:1px!important;
    height:3px!important;
    border-radius:999px!important;
    background:#d71920!important;
    transform:scaleX(0)!important;
    transform-origin:center!important;
    transition:transform .2s ease!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus,
.site-header .main-nav a.is-active{
    color:#d71920!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
}
.site-header .main-nav a:hover:after,
.site-header .main-nav a:focus:after,
.site-header .main-nav a.is-active:after{transform:scaleX(1)!important;}
.site-header .nav-toggle{
    width:52px!important;height:52px!important;
    border-radius:16px!important;
    background:#111!important;
    box-shadow:0 14px 28px rgba(0,0,0,.18)!important;
}
.site-header .nav-toggle span{background:#fff!important;}

/* Actions principales : garde lisible sous slider */
.hero-actions-inner{width:min(100%,1440px)!important;}

/* Popups améliorés : gauche design, droite formulaire propre, contenu non coupé */
.premium-modal .modal-card{
    width:min(1500px,94vw)!important;
    max-height:92vh!important;
    height:auto!important;
    margin:4vh auto!important;
    display:grid!important;
    grid-template-columns:minmax(420px,.85fr) minmax(560px,1.15fr)!important;
    overflow:hidden!important;
    border-radius:28px!important;
    box-shadow:0 38px 95px rgba(0,0,0,.34)!important;
}
.premium-modal .modal-close{
    width:42px!important;height:42px!important;
    top:18px!important;right:18px!important;
    color:#061a43!important;
    background:#fff!important;
}
.premium-modal .modal-visual{
    min-height:640px!important;
    height:100%!important;
    padding:34px!important;
    background:#061a43!important;
    position:relative!important;
    overflow:hidden!important;
}
.premium-modal .modal-visual img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    opacity:.66!important;
}
.premium-modal .modal-visual:after{
    background:linear-gradient(0deg,rgba(6,26,67,.94),rgba(6,26,67,.40) 54%,rgba(6,26,67,.18))!important;
}
.modal-visual-content{position:relative!important;z-index:2!important;margin-top:auto!important;}
.premium-modal .modal-visual h3{font-size:clamp(28px,2.3vw,42px)!important;line-height:1.08!important;margin:0 0 12px!important;color:#fff!important;}
.premium-modal .modal-visual p,.premium-modal .modal-visual li{font-size:15px!important;line-height:1.55!important;color:#eef6ff!important;font-weight:800!important;}
.premium-modal .modal-visual-badge{display:inline-flex!important;background:#f26722!important;color:#fff!important;border-radius:999px!important;padding:9px 16px!important;font-weight:950!important;margin-bottom:16px!important;}
.premium-modal .modal-form-panel{
    padding:38px 40px!important;
    max-height:92vh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    background:#fff!important;
}
.premium-modal .modal-logo{width:210px!important;height:auto!important;margin:0 0 16px!important;}
.premium-modal .modal-form-panel h2{font-size:clamp(34px,3vw,48px)!important;line-height:1.08!important;margin:0 0 12px!important;color:#061a43!important;}
.premium-modal .modal-intro{font-size:17px!important;line-height:1.45!important;margin:0 0 20px!important;color:#667493!important;font-weight:850!important;}
.premium-modal .premium-form{padding:26px!important;border-radius:24px!important;box-shadow:none!important;background:#fff!important;}
.premium-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
.premium-modal .premium-form label{font-size:14px!important;color:#062e76!important;margin-bottom:14px!important;}
.premium-modal .premium-form input,.premium-modal .premium-form select,.premium-modal .premium-form textarea{
    min-height:48px!important;border-radius:14px!important;background:#f8fbff!important;
}
.premium-modal .premium-form textarea{min-height:92px!important;}
.premium-modal .modal-submit{min-height:50px!important;border-radius:14px!important;font-size:16px!important;}
.stand-visual-slider{position:absolute!important;inset:0!important;z-index:0!important;}
.stand-visual-slider .stand-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:0!important;animation:standFade 10s infinite!important;}
.stand-visual-slider .stand-slide-one{animation-delay:0s!important;}
.stand-visual-slider .stand-slide-two{animation-delay:5s!important;}
@keyframes standFade{0%,45%{opacity:.68}50%,95%{opacity:0}100%{opacity:.68}}

/* Portage Institutionnel : fond vert renforcé + logos seuls */
.institutional-vignettes{
    padding:34px 5vw 54px!important;
    background:#fff!important;
}
.institutional-vignettes-inner{
    width:min(100%,1540px)!important;
    margin:0 auto!important;
    border-radius:30px!important;
    padding:32px 34px 38px!important;
    background:
      radial-gradient(circle at 12% 4%,rgba(255,255,255,.15),transparent 25%),
      linear-gradient(135deg,#1f7a2c 0%,#2e8b36 58%,#16611f 100%)!important;
    box-shadow:0 22px 54px rgba(6,26,67,.14)!important;
    border:1px solid rgba(255,255,255,.26)!important;
    overflow:hidden!important;
}
.institutional-vignettes-inner:before{display:none!important;}
.institutional-vignettes h2{
    color:#fff!important;text-align:center!important;
    font-size:clamp(32px,3.2vw,54px)!important;
    font-weight:950!important;letter-spacing:.015em!important;
    margin:0 0 26px!important;
}
.institution-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important;}
.institution-card{
    min-height:170px!important;
    padding:18px!important;
    border-radius:20px!important;
    background:#fff!important;
    border:1px solid rgba(255,255,255,.8)!important;
    box-shadow:0 16px 38px rgba(6,26,67,.13)!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
}
.institution-card h3{display:none!important;}
.institution-logo-box{width:100%!important;min-height:122px!important;background:#fff!important;border-radius:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;}
.institution-logo-box img{max-width:96%!important;max-height:112px!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:none!important;}

/* Chiffres clés */
.key-figures{
    padding:56px 5vw 70px!important;
    background:#fff!important;
}
.key-figures-inner{
    width:min(100%,1540px)!important;
    margin:0 auto!important;
    padding:46px 42px 48px!important;
    border-radius:34px!important;
    color:#fff!important;
    background:
      radial-gradient(circle at 14% 8%,rgba(13,77,168,.34),transparent 24%),
      radial-gradient(circle at 85% 14%,rgba(242,103,34,.25),transparent 24%),
      linear-gradient(135deg,#03070e 0%,#081327 50%,#050505 100%)!important;
    box-shadow:0 30px 80px rgba(0,0,0,.26)!important;
    position:relative!important;
    overflow:hidden!important;
}
.key-figures-inner:before{
    content:'';position:absolute;inset:0;
    background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
    background-size:38px 38px;opacity:.28;pointer-events:none;
}
.key-figures-head{position:relative;z-index:1;text-align:center;max-width:900px;margin:0 auto 32px;}
.key-figures-head span{display:inline-flex;margin-bottom:12px;color:#f2c14b;font-weight:950;text-transform:uppercase;letter-spacing:.18em;font-size:13px;}
.key-figures-head h2{color:#fff!important;font-size:clamp(36px,4vw,64px)!important;line-height:1.05!important;margin:0 0 12px!important;font-weight:950!important;}
.key-figures-head p{color:#dce8ff!important;font-size:18px!important;line-height:1.6!important;font-weight:750!important;margin:0!important;}
.key-grid{position:relative;z-index:1;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important;}
.key-card{
    padding:24px 16px 22px!important;
    border-radius:22px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07))!important;
    border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:0 16px 36px rgba(0,0,0,.22)!important;
    text-align:center!important;
    min-height:230px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
}
.key-icon{width:76px!important;height:76px!important;border-radius:24px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.96)!important;margin-bottom:18px!important;box-shadow:0 14px 30px rgba(0,0,0,.18)!important;}
.key-icon svg{width:47px!important;height:47px!important;fill:none!important;stroke:#0d4da8!important;stroke-width:4!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.key-card:nth-child(2n) .key-icon svg{stroke:#f26722!important}.key-card:nth-child(3n) .key-icon svg{stroke:#2e8b36!important}
.key-card strong{display:block;color:#fff!important;font-size:clamp(26px,2.4vw,42px)!important;line-height:1.05!important;font-weight:950!important;margin-bottom:10px!important;}
.key-card span{display:block;color:#fff!important;font-size:15px!important;line-height:1.25!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.02em!important;}

@media(max-width:1280px){
  .site-header .top-shell{grid-template-columns:300px minmax(0,1fr)54px!important;}
  .site-header .main-nav{gap:18px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .institution-grid,.key-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .premium-modal .modal-card{grid-template-columns:1fr!important;width:min(880px,96vw)!important;}
  .premium-modal .modal-visual{min-height:270px!important;}
}
@media(max-width:980px){
  .site-header{padding:8px 10px!important;}
  .site-header .top-shell{grid-template-columns:1fr 52px!important;min-height:78px!important;border-radius:24px!important;}
  .site-header .brand{min-height:58px!important;max-width:310px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:220px!important;}
  .site-header .main-nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:18px!important;padding:14px!important;box-shadow:var(--heavy)!important;}
  .site-header .main-nav.is-open{display:flex!important;}
  .site-header .main-nav a{width:100%!important;text-align:center!important;justify-content:center!important;min-height:42px!important;}
  .institution-grid,.key-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:640px){
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:185px!important;}
  .institution-grid,.key-grid{grid-template-columns:1fr!important;}
  .institutional-vignettes-inner,.key-figures-inner{padding:26px 18px!important;border-radius:24px!important;}
  .premium-modal .modal-card{width:97vw!important;margin:1.5vh auto!important;max-height:97vh!important;}
  .premium-modal .modal-form-panel{padding:22px 18px!important;}
  .premium-modal .form-grid{grid-template-columns:1fr!important;}
  .premium-modal .modal-logo{width:170px!important;}
}



/* =========================================================
   S2IA V18 — Corrections strictes demandées
   ========================================================= */

/* Top menu : fond opaque, pas de slider visible derrière */
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:4000!important;
  width:100%!important;
  padding:14px 24px!important;
  background:#ffffff!important;
  background-color:#ffffff!important;
  border-bottom:1px solid #e8edf5!important;
  box-shadow:0 12px 34px rgba(6,26,67,.10)!important;
  backdrop-filter:none!important;
}
.site-header .top-shell{
  width:min(100%,1780px)!important;
  min-height:82px!important;
  margin:0 auto!important;
  padding:10px 20px!important;
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)58px!important;
  gap:24px!important;
  align-items:center!important;
  background:
    linear-gradient(90deg, rgba(46,139,54,.08) 0%, rgba(255,255,255,1) 18%, rgba(255,255,255,1) 82%, rgba(242,103,34,.08) 100%)!important;
  border:1px solid rgba(13,77,168,.13)!important;
  border-radius:30px!important;
  box-shadow:0 18px 45px rgba(6,26,67,.12)!important;
  overflow:hidden!important;
}
.site-header .brand{
  min-height:62px!important;
  justify-content:flex-start!important;
  background:#ffffff!important;
  border-radius:22px!important;
  padding:6px 12px!important;
  border:1px solid rgba(46,139,54,.18)!important;
  box-shadow:0 10px 24px rgba(6,26,67,.08)!important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact{
  width:260px!important;
  max-width:260px!important;
  max-height:58px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
}
.site-header .main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:24px!important;
  flex-wrap:wrap!important;
}
.site-header .main-nav a{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  border-radius:0!important;
  color:#111111!important;
  min-height:40px!important;
  padding:0 2px!important;
  font-size:16px!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  transition:color .2s ease, transform .2s ease!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a.is-active{
  color:#c3171d!important;
  transform:none!important;
}
.site-header .nav-toggle{
  background:#050505!important;
  border-radius:13px!important;
  box-shadow:0 12px 24px rgba(0,0,0,.18)!important;
}
.site-header .nav-toggle span{background:#ffffff!important;}

/* Bloc Président : champ réduit à gauche + mot de bienvenue à droite */
.patronage-image-section{display:none!important;}
.patronage-welcome{
  padding:34px 5vw 18px!important;
  background:#ffffff!important;
}
.patronage-welcome-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(420px,.92fr) minmax(420px,1.08fr)!important;
  gap:22px!important;
  align-items:stretch!important;
}
.patronage-identity-card,
.president-message-card{
  border-radius:28px!important;
  background:#ffffff!important;
  border:1px solid #e5edf7!important;
  box-shadow:0 18px 45px rgba(6,26,67,.10)!important;
  overflow:hidden!important;
}
.patronage-identity-card{
  padding:24px!important;
}
.patronage-kicker{
  display:inline-flex!important;
  align-items:center!important;
  color:#0d4da8!important;
  font-size:15px!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
  margin-bottom:16px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  background:#f4f8ff!important;
  border:1px solid #dfe9f8!important;
}
.patronage-identity-content{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 210px!important;
  gap:18px!important;
  align-items:end!important;
}
.patronage-identity-text h2{
  margin:0!important;
  color:#0f5f25!important;
  font-size:clamp(26px,2.6vw,42px)!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.patronage-identity-text h2 span{color:#0a541f!important;}
.patronage-identity-text p{
  margin:12px 0 18px!important;
  color:#10264d!important;
  font-size:clamp(16px,1.25vw,22px)!important;
  line-height:1.35!important;
  font-weight:850!important;
}
.patronage-identity-text img{
  width:86px!important;
  height:auto!important;
  border-radius:14px!important;
  border:1px solid #edf2f8!important;
  background:#fff!important;
  padding:7px!important;
  box-shadow:0 10px 24px rgba(6,26,67,.08)!important;
}
.patronage-president-photo{
  margin:0!important;
  height:240px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#f8fbff!important;
  position:relative!important;
}
.patronage-president-photo:after{
  content:''!important;
  position:absolute!important;
  right:0;top:0;bottom:0;width:14px!important;
  background:linear-gradient(180deg,#f26722 0 33%,#fff 33% 66%,#2e8b36 66% 100%)!important;
}
.patronage-president-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.president-message-card{
  padding:30px 34px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(242,103,34,.09),transparent 28%),
    radial-gradient(circle at 0% 100%,rgba(46,139,54,.08),transparent 28%),
    #ffffff!important;
}
.president-message-card span{
  display:inline-flex!important;
  align-self:flex-start!important;
  margin-bottom:12px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  background:#0d4da8!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.president-message-card h3{
  margin:0 0 14px!important;
  color:#061a43!important;
  font-size:clamp(24px,2.1vw,36px)!important;
  line-height:1.14!important;
  font-weight:950!important;
}
.president-message-card p{
  margin:0!important;
  color:#263b61!important;
  font-size:clamp(16px,1.15vw,20px)!important;
  line-height:1.62!important;
  font-weight:700!important;
}

/* Popups : utiliser les images fournies, logo centré et agrandi, présentation moins coupée */
.premium-modal .modal-card{
  width:min(1500px,94vw)!important;
  max-height:90vh!important;
  margin:5vh auto!important;
  border-radius:26px!important;
  display:grid!important;
  grid-template-columns:46% 54%!important;
  overflow:hidden!important;
}
.premium-modal .modal-visual{
  min-height:620px!important;
  padding:34px!important;
}
.premium-modal .modal-visual img,
.premium-modal .stand-slide{
  opacity:1!important;
  object-fit:cover!important;
  object-position:center!important;
}
.premium-modal .modal-visual:after{
  background:linear-gradient(0deg,rgba(6,26,67,.92) 0%,rgba(6,26,67,.70) 34%,rgba(6,26,67,.18) 100%)!important;
}
.premium-modal .modal-visual-content{
  max-width:92%!important;
}
.premium-modal .modal-visual h3{
  font-size:clamp(28px,2.7vw,46px)!important;
  line-height:1.08!important;
}
.premium-modal .modal-form-panel{
  padding:40px 44px 34px!important;
  max-height:90vh!important;
  overflow:auto!important;
}
.premium-modal .modal-logo{
  width:285px!important;
  max-width:82%!important;
  margin:0 auto 22px!important;
  display:block!important;
}
.premium-modal .modal-form-panel h2{
  text-align:center!important;
  font-size:clamp(32px,3vw,52px)!important;
  line-height:1.08!important;
  margin:0 0 12px!important;
}
.premium-modal .modal-intro{
  text-align:center!important;
  max-width:760px!important;
  margin:0 auto 24px!important;
}
.premium-modal .premium-form{
  border-radius:22px!important;
}
.premium-modal .form-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.stand-visual-slider .stand-slide-one{animation:s2iaStandA 10s infinite!important;}
.stand-visual-slider .stand-slide-two{animation:s2iaStandB 10s infinite!important;}
@keyframes s2iaStandA{0%,45%{opacity:1}50%,95%{opacity:0}100%{opacity:1}}
@keyframes s2iaStandB{0%,45%{opacity:0}50%,95%{opacity:1}100%{opacity:0}}

/* Portage institutionnel : nouveau design, sans grand fond vert, logos réels grands, pas de titres sous les vignettes */
.institutional-vignettes{
  padding:42px 5vw 52px!important;
  background:
    radial-gradient(circle at 8% 10%,rgba(46,139,54,.08),transparent 24%),
    radial-gradient(circle at 92% 2%,rgba(242,103,34,.07),transparent 24%),
    #ffffff!important;
}
.institutional-vignettes-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  padding:34px 34px 38px!important;
  background:#ffffff!important;
  border-radius:30px!important;
  border:1px solid #e7eef7!important;
  box-shadow:0 18px 46px rgba(6,26,67,.09)!important;
  position:relative!important;
  overflow:hidden!important;
}
.institutional-vignettes-inner:before{
  content:''!important;
  position:absolute!important;
  left:0!important;right:0!important;top:0!important;height:8px!important;
  background:linear-gradient(90deg,#0d4da8 0%,#f26722 35%,#f2c14b 55%,#2e8b36 100%)!important;
}
.institutional-vignettes h2{
  margin:0 0 28px!important;
  color:#0f5f25!important;
  text-align:center!important;
  font-size:clamp(30px,3vw,50px)!important;
  font-weight:950!important;
  line-height:1.08!important;
}
.institution-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.institution-card{
  min-height:190px!important;
  padding:14px!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  box-shadow:0 15px 34px rgba(6,26,67,.10)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.institution-card h3{display:none!important;}
.institution-logo-box{
  width:100%!important;
  min-height:150px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.institution-logo-box img{
  max-width:98%!important;
  max-height:146px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
}

/* Chiffres clés : fond bleu éclatant, titres agrandis */
.key-figures{
  padding:52px 5vw 70px!important;
  background:#fff!important;
}
.key-figures-inner{
  background:
    radial-gradient(circle at 13% 8%,rgba(255,255,255,.18),transparent 24%),
    radial-gradient(circle at 86% 12%,rgba(242,103,34,.22),transparent 22%),
    linear-gradient(135deg,#0d4da8 0%,#073e90 48%,#062f78 100%)!important;
  color:#fff!important;
  border-radius:34px!important;
  box-shadow:0 30px 80px rgba(13,77,168,.30)!important;
}
.key-figures-head{
  max-width:1060px!important;
}
.key-figures-head>span{display:none!important;}
.key-figures-head h2,
.key-figures-head h3{
  margin:0!important;
  font-size:clamp(42px,4.8vw,78px)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
}
.key-figures-head h2{
  color:#f26722!important;
  text-shadow:0 3px 0 rgba(0,0,0,.12)!important;
}
.key-figures-head h3{
  color:#ffffff!important;
  margin-top:8px!important;
}
.key-figures-head p{
  margin:20px auto 0!important;
  color:#e7f0ff!important;
  max-width:920px!important;
}

/* Responsive strict */
@media(max-width:1280px){
  .site-header .top-shell{grid-template-columns:270px minmax(0,1fr)54px!important;gap:16px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:235px!important;max-width:235px!important;}
  .site-header .main-nav{gap:16px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .patronage-welcome-inner{grid-template-columns:1fr!important;}
  .institution-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:980px){
  .site-header{padding:10px 12px!important;}
  .site-header .top-shell{grid-template-columns:1fr 52px!important;min-height:74px!important;}
  .site-header .brand{max-width:300px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:220px!important;}
  .site-header .main-nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;display:none!important;flex-direction:column!important;background:#fff!important;border:1px solid #e1e9f5!important;border-radius:18px!important;padding:14px!important;box-shadow:0 18px 44px rgba(6,26,67,.18)!important;}
  .site-header .main-nav.is-open{display:flex!important;}
  .site-header .main-nav a{justify-content:center!important;width:100%!important;min-height:42px!important;}
  .premium-modal .modal-card{grid-template-columns:1fr!important;width:min(760px,96vw)!important;}
  .premium-modal .modal-visual{min-height:270px!important;}
  .premium-modal .modal-form-panel{max-height:62vh!important;}
  .patronage-identity-content{grid-template-columns:1fr!important;}
  .patronage-president-photo{height:280px!important;}
  .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .key-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:640px){
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:188px!important;}
  .patronage-welcome{padding:26px 14px 12px!important;}
  .patronage-identity-card,.president-message-card{border-radius:22px!important;}
  .patronage-identity-card{padding:20px!important;}
  .president-message-card{padding:24px 20px!important;}
  .institution-grid,.key-grid{grid-template-columns:1fr!important;}
  .institution-logo-box{min-height:130px!important;}
  .institution-logo-box img{max-height:126px!important;}
  .premium-modal .modal-card{width:97vw!important;margin:1.5vh auto!important;max-height:97vh!important;}
  .premium-modal .modal-form-panel{padding:24px 18px!important;max-height:64vh!important;}
  .premium-modal .form-grid{grid-template-columns:1fr!important;}
  .premium-modal .modal-logo{width:210px!important;}
}



/* =========================================================
   S2IA V19 — Chiffres clés + Portage défilants + Popups non coupés
   ========================================================= */

/* Popups : correction des coupures en haut */
.premium-modal{
  overflow-y:auto!important;
  padding:18px 0!important;
}
.premium-modal .modal-card{
  margin:0 auto!important;
  max-height:calc(100vh - 36px)!important;
}
.premium-modal .modal-form-panel{
  max-height:calc(100vh - 36px)!important;
  overflow-y:auto!important;
}
.premium-modal .modal-visual{
  min-height:calc(100vh - 36px)!important;
}
.premium-modal .modal-logo{
  margin-top:0!important;
}

/* Chiffres clés : style maquette avec défilement sur une seule ligne */
.key-figures.key-strip-section{
  padding:38px 0 46px!important;
  background:#ffffff!important;
}
.key-strip-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 16px!important;
  background:#ffffff!important;
  color:#061a43!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
.key-strip-head{
  text-align:center!important;
  margin:0 auto 22px!important;
  padding:0 20px!important;
}
.key-strip-head h2{
  margin:0!important;
  color:#0d4da8!important;
  font-size:clamp(28px,3vw,46px)!important;
  font-weight:950!important;
  line-height:1.05!important;
}
.key-strip-head h3{
  margin:8px 0 0!important;
  color:#061a43!important;
  font-size:clamp(28px,3vw,46px)!important;
  font-weight:950!important;
  line-height:1.05!important;
}
.key-strip-scroll{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  gap:26px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  padding:0 28px 18px!important;
  scrollbar-width:thin!important;
  scrollbar-color:#0d4da8 #eef4ff!important;
}
.key-strip-scroll::-webkit-scrollbar{height:10px!important;}
.key-strip-scroll::-webkit-scrollbar-track{background:#eef4ff!important;border-radius:999px!important;}
.key-strip-scroll::-webkit-scrollbar-thumb{background:#0d4da8!important;border-radius:999px!important;}
.key-strip-card{
  flex:0 0 205px!important;
  min-height:220px!important;
  scroll-snap-align:start!important;
  padding:20px 14px 18px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  border:3px solid #e8eef8!important;
  box-shadow:0 16px 38px rgba(6,26,67,.10)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.key-strip-card:nth-child(4n+1){border-color:#cbdcf3!important;}
.key-strip-card:nth-child(4n+2){border-color:#cfe5c9!important;}
.key-strip-card:nth-child(4n+3){border-color:#ffe0c7!important;}
.key-strip-card:nth-child(4n+4){border-color:#ffedc1!important;}
.key-strip-icon{
  width:68px!important;
  height:68px!important;
  margin:0 auto 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.key-strip-icon img{
  max-width:68px!important;
  max-height:68px!important;
  object-fit:contain!important;
}
.key-strip-card strong{
  display:block!important;
  color:#0d4da8!important;
  font-size:clamp(25px,2.2vw,40px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  margin:0 0 8px!important;
}
.key-strip-card:nth-child(4n+2) strong{color:#2e8b36!important;}
.key-strip-card:nth-child(4n+3) strong{color:#f26722!important;}
.key-strip-card:nth-child(4n+4) strong{color:#f2b500!important;}
.key-strip-card span{
  display:block!important;
  color:#0d4da8!important;
  font-size:15px!important;
  line-height:1.22!important;
  font-weight:900!important;
}

/* Portage institutionnel : identique au style chiffres clés, défilant une seule ligne */
.institutional-vignettes{
  padding:34px 0 42px!important;
  background:#ffffff!important;
}
.institutional-vignettes-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 16px!important;
  background:#ffffff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.institutional-vignettes-inner:before{display:none!important;}
.institutional-vignettes h2{
  margin:0 0 22px!important;
  text-align:center!important;
  color:#0d4da8!important;
  font-size:clamp(28px,3vw,46px)!important;
  line-height:1.05!important;
  font-weight:950!important;
}
.institution-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:26px!important;
  align-items:stretch!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  padding:0 28px 18px!important;
  scrollbar-width:thin!important;
  scrollbar-color:#2e8b36 #eef4ff!important;
}
.institution-grid::-webkit-scrollbar{height:10px!important;}
.institution-grid::-webkit-scrollbar-track{background:#eef4ff!important;border-radius:999px!important;}
.institution-grid::-webkit-scrollbar-thumb{background:#2e8b36!important;border-radius:999px!important;}
.institution-card{
  flex:0 0 245px!important;
  min-height:185px!important;
  padding:16px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  border:3px solid #e5eef8!important;
  box-shadow:0 16px 38px rgba(6,26,67,.10)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  scroll-snap-align:start!important;
}
.institution-card h3{display:none!important;}
.institution-logo-box{
  width:100%!important;
  min-height:145px!important;
  background:#ffffff!important;
  border-radius:14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.institution-logo-box img{
  max-width:100%!important;
  max-height:138px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}

/* Neutraliser l'ancien rendu bleu des chiffres clés */
.key-figures-inner,
.key-grid,
.key-card,
.key-icon{
  all:unset;
}
.key-figures-inner *{
  box-sizing:border-box;
}

@media(max-width:980px){
  .premium-modal{padding:12px 0!important;}
  .premium-modal .modal-card{max-height:calc(100vh - 24px)!important;}
  .premium-modal .modal-visual{min-height:280px!important;}
  .premium-modal .modal-form-panel{max-height:calc(100vh - 304px)!important;}
  .key-strip-card{flex-basis:190px!important;}
  .institution-card{flex-basis:230px!important;}
}
@media(max-width:640px){
  .premium-modal .modal-form-panel{max-height:62vh!important;}
  .key-strip-scroll,.institution-grid{gap:16px!important;padding-left:16px!important;padding-right:16px!important;}
  .key-strip-card{flex-basis:178px!important;min-height:205px!important;}
  .institution-card{flex-basis:214px!important;min-height:170px!important;}
}



/* =========================================================
   S2IA V20 — Présentation + Chiffres clés en damier avec flèches
   ========================================================= */

/* Texte de présentation du salon */
.s2ia-presentation{
  padding:54px 5vw 48px!important;
  background:
    radial-gradient(circle at 8% 10%,rgba(13,77,168,.07),transparent 26%),
    radial-gradient(circle at 92% 8%,rgba(242,103,34,.06),transparent 24%),
    #ffffff!important;
}
.s2ia-presentation-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
}
.presentation-heading{
  text-align:center!important;
  margin:0 auto 30px!important;
  max-width:1040px!important;
}
.presentation-heading span{
  display:inline-flex!important;
  margin-bottom:12px!important;
  padding:8px 16px!important;
  border-radius:999px!important;
  background:#eef5ff!important;
  color:#0d4da8!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.10em!important;
  font-size:13px!important;
}
.presentation-heading h2{
  margin:0!important;
  color:#061a43!important;
  font-size:clamp(34px,4vw,62px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
}
.presentation-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)!important;
  gap:22px!important;
  align-items:stretch!important;
}
.presentation-card{
  background:#ffffff!important;
  border:1px solid #e3edf8!important;
  border-radius:26px!important;
  padding:28px 30px!important;
  box-shadow:0 18px 46px rgba(6,26,67,.09)!important;
  position:relative!important;
  overflow:hidden!important;
}
.presentation-card:before{
  content:''!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:7px!important;
  background:linear-gradient(180deg,#0d4da8 0%,#f26722 42%,#2e8b36 100%)!important;
}
.presentation-main{
  grid-row:span 2!important;
}
.presentation-card h3{
  margin:0 0 15px!important;
  color:#0d4da8!important;
  font-size:clamp(22px,2vw,32px)!important;
  line-height:1.15!important;
  font-weight:950!important;
}
.presentation-card p,
.presentation-card li{
  color:#263b61!important;
  font-size:16.5px!important;
  line-height:1.68!important;
  font-weight:700!important;
}
.presentation-card p{
  margin:0 0 14px!important;
}
.presentation-card ul,
.presentation-card ol{
  margin:10px 0 0!important;
  padding-left:22px!important;
}
.presentation-card li{
  margin:7px 0!important;
}
.presentation-lead{
  color:#061a43!important;
  font-weight:950!important;
}

/* Chiffres clés : zone centrée, damier, flèches de défilement */
.key-figures.key-damier-section{
  padding:50px 5vw 72px!important;
  background:#ffffff!important;
}
.key-damier-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  padding:36px 34px 40px!important;
  border-radius:34px!important;
  background:
    radial-gradient(circle at 10% 10%,rgba(255,255,255,.18),transparent 26%),
    radial-gradient(circle at 90% 12%,rgba(242,103,34,.22),transparent 24%),
    linear-gradient(135deg,#0d4da8 0%,#073f91 48%,#062f78 100%)!important;
  box-shadow:0 30px 80px rgba(13,77,168,.28)!important;
  position:relative!important;
  overflow:hidden!important;
}
.key-damier-inner:before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background-image:
    linear-gradient(rgba(255,255,255,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px)!important;
  background-size:38px 38px!important;
  opacity:.45!important;
  pointer-events:none!important;
}
.key-damier-head{
  position:relative!important;
  z-index:1!important;
  text-align:center!important;
  margin:0 auto 30px!important;
}
.key-damier-head h2,
.key-damier-head h3{
  margin:0!important;
  font-size:clamp(38px,4.4vw,72px)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
}
.key-damier-head h2{
  color:#f26722!important;
  text-shadow:0 3px 0 rgba(0,0,0,.12)!important;
}
.key-damier-head h3{
  color:#ffffff!important;
  margin-top:8px!important;
}
.damier-nav-wrap{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) 54px!important;
  gap:18px!important;
  align-items:center!important;
}
.key-damier-viewport{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-rows:repeat(2, minmax(176px, 1fr))!important;
  grid-auto-columns:minmax(230px, 230px)!important;
  gap:20px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-behavior:smooth!important;
  scroll-snap-type:x mandatory!important;
  padding:8px 4px 18px!important;
  scrollbar-width:thin!important;
  scrollbar-color:#f26722 rgba(255,255,255,.2)!important;
}
.key-damier-viewport::-webkit-scrollbar{height:10px!important;}
.key-damier-viewport::-webkit-scrollbar-track{background:rgba(255,255,255,.20)!important;border-radius:999px!important;}
.key-damier-viewport::-webkit-scrollbar-thumb{background:#f26722!important;border-radius:999px!important;}
.key-damier-card{
  scroll-snap-align:start!important;
  min-height:176px!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:2px solid rgba(255,255,255,.78)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.18)!important;
  padding:18px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.key-damier-card:nth-child(odd){
  transform:translateY(0)!important;
}
.key-damier-card:nth-child(even){
  transform:translateY(8px)!important;
}
.key-damier-icon{
  width:60px!important;
  height:60px!important;
  margin:0 auto 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.key-damier-icon img{
  max-width:60px!important;
  max-height:60px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
.key-damier-card strong{
  display:block!important;
  font-size:clamp(24px,2.1vw,38px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  margin:0 0 6px!important;
  color:#0d4da8!important;
}
.key-damier-card:nth-child(3n+2) strong{color:#2e8b36!important;}
.key-damier-card:nth-child(3n+3) strong{color:#f26722!important;}
.key-damier-card span{
  display:block!important;
  color:#0d4da8!important;
  font-size:14px!important;
  line-height:1.22!important;
  font-weight:950!important;
}
.damier-arrow{
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
  border:0!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  font-size:38px!important;
  line-height:1!important;
  font-weight:900!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
  transition:transform .2s ease, background .2s ease, color .2s ease!important;
}
.damier-arrow:hover{
  transform:scale(1.06)!important;
  background:#f26722!important;
  color:#ffffff!important;
}

/* Neutraliser l'ancien affichage des chiffres clés en ligne */
.key-strip-section,
.key-strip-inner,
.key-strip-scroll,
.key-strip-card{
  all:unset;
}

/* Responsive */
@media(max-width:1100px){
  .presentation-grid{grid-template-columns:1fr!important;}
  .presentation-main{grid-row:auto!important;}
  .damier-nav-wrap{grid-template-columns:46px minmax(0,1fr) 46px!important;gap:10px!important;}
  .damier-arrow{width:46px!important;height:46px!important;font-size:32px!important;}
  .key-damier-viewport{grid-auto-columns:minmax(210px,210px)!important;}
}
@media(max-width:680px){
  .s2ia-presentation{padding:38px 16px 34px!important;}
  .presentation-card{padding:24px 22px!important;}
  .key-figures.key-damier-section{padding:34px 14px 52px!important;}
  .key-damier-inner{padding:28px 16px 34px!important;border-radius:24px!important;}
  .key-damier-head h2,.key-damier-head h3{font-size:34px!important;}
  .damier-nav-wrap{grid-template-columns:1fr!important;}
  .damier-arrow{display:none!important;}
  .key-damier-viewport{grid-template-rows:repeat(2, minmax(158px, 1fr))!important;grid-auto-columns:minmax(185px,185px)!important;}
}



/* =========================================================
   S2IA V21 — Harmonisation des titres, présentation premium,
   portage institutionnel, patronage et chiffres clés
   ========================================================= */

/* Titres centraux noirs et harmonisés */
.section-title,
.patronage-main-title,
.institutional-vignettes h2,
.presentation-heading h2,
.key-damier-head h2,
.key-damier-head h3{
  text-align:center!important;
  color:#090909!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
}

/* Haut patronage : titre centré, noir, agrandi ; carte compacte */
.patronage-welcome{
  padding:38px 5vw 22px!important;
  background:#fff!important;
}
.patronage-main-title{
  margin:0 auto 24px!important;
  font-size:clamp(30px,3.2vw,54px)!important;
  line-height:1.08!important;
}
.patronage-welcome-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(420px,.92fr) minmax(420px,1.08fr)!important;
  gap:22px!important;
  align-items:stretch!important;
}
.patronage-identity-card,
.president-message-card{
  background:#fff!important;
  border:1px solid #e4edf8!important;
  border-radius:28px!important;
  box-shadow:0 18px 46px rgba(6,26,67,.09)!important;
  overflow:hidden!important;
}
.patronage-identity-card{
  padding:24px!important;
}
.patronage-identity-content{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 205px!important;
  gap:18px!important;
  align-items:center!important;
}
.patronage-identity-text h3{
  margin:0!important;
  color:#090909!important;
  font-size:clamp(22px,2.1vw,34px)!important;
  line-height:1.12!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  white-space:normal!important;
}
.patronage-identity-text h3 span{
  display:inline!important;
  color:#090909!important;
  white-space:nowrap!important;
}
.patronage-identity-text p{
  margin:12px 0 0!important;
  color:#1d2c44!important;
  font-size:clamp(15px,1.15vw,20px)!important;
  line-height:1.35!important;
  font-weight:850!important;
}
.patronage-identity-text img,
.patronage-emblem-wrap,
.patronage-emblem-pro{
  display:none!important;
}
.patronage-president-photo{
  margin:0!important;
  width:205px!important;
  height:220px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#f8fbff!important;
  position:relative!important;
}
.patronage-president-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.president-message-card{
  padding:28px 34px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.president-message-card span{
  display:inline-flex!important;
  margin:0 auto 12px!important;
  color:#090909!important;
  background:transparent!important;
  padding:0!important;
  border-radius:0!important;
  font-size:clamp(20px,1.9vw,32px)!important;
  line-height:1.1!important;
  font-weight:950!important;
  text-transform:none!important;
  letter-spacing:-.02em!important;
}
.president-message-card h3{
  margin:0 0 16px!important;
  color:#ee7ea7!important;
  font-size:clamp(22px,2.1vw,36px)!important;
  line-height:1.16!important;
  font-weight:950!important;
  text-align:center!important;
}
.president-message-card p{
  margin:0!important;
  color:#202020!important;
  font-size:clamp(17px,1.25vw,22px)!important;
  line-height:1.7!important;
  font-weight:750!important;
  text-align:center!important;
}

/* Portage institutionnel : titre noir, taille réduite, logos harmonisés */
.institutional-vignettes{
  padding:32px 5vw 46px!important;
  background:#fff!important;
}
.institutional-vignettes-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  background:#fff!important;
  border:1px solid #e7eef8!important;
  border-radius:28px!important;
  box-shadow:0 16px 42px rgba(6,26,67,.08)!important;
  padding:30px 30px 36px!important;
  overflow:hidden!important;
}
.institutional-vignettes-inner:before{display:none!important;}
.institutional-vignettes h2{
  margin:0 0 24px!important;
  font-size:clamp(30px,2.8vw,46px)!important;
  line-height:1.08!important;
  color:#090909!important;
}
.institution-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:center!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 4px 16px!important;
  scroll-snap-type:x proximity!important;
}
.institution-card{
  flex:0 0 245px!important;
  min-height:176px!important;
  border-radius:18px!important;
  padding:14px!important;
  background:#fff!important;
  border:2px solid #e4edf8!important;
  box-shadow:0 12px 30px rgba(6,26,67,.08)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.institution-logo-box{
  width:100%!important;
  height:142px!important;
  min-height:142px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:#fff!important;
  border-radius:14px!important;
}
.institution-logo-box img{
  max-width:96%!important;
  max-height:132px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
.institution-institution-logo-primature .institution-logo-box img{
  max-width:78%!important;
  max-height:108px!important;
}

/* Présentation stratégique : titre équilibré + couleurs demandées */
.s2ia-presentation{
  padding:58px 5vw 54px!important;
  background:
    radial-gradient(circle at 5% 4%,rgba(13,77,168,.06),transparent 22%),
    radial-gradient(circle at 96% 0%,rgba(242,103,34,.06),transparent 24%),
    #ffffff!important;
}
.s2ia-presentation-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
}
.presentation-heading{
  text-align:center!important;
  max-width:1200px!important;
  margin:0 auto 34px!important;
}
.presentation-heading span{
  color:#0d4da8!important;
  background:#eef5ff!important;
  border-radius:999px!important;
  padding:8px 16px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  font-size:13px!important;
}
.presentation-heading h2{
  margin:18px 0 0!important;
  font-size:clamp(34px,3.2vw,56px)!important;
  line-height:1.12!important;
}
.presentation-heading h2 strong{
  color:#ff0000!important;
  font-weight:950!important;
}
.presentation-heading h2 em{
  color:#ee7ea7!important;
  font-style:normal!important;
  font-weight:950!important;
}
.presentation-wide-list{
  display:grid!important;
  gap:26px!important;
}
.presentation-wide-card{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(360px,.42fr) minmax(0,.58fr)!important;
  align-items:stretch!important;
  background:#fff!important;
  border:1px solid #e4edf8!important;
  border-radius:30px!important;
  overflow:hidden!important;
  box-shadow:0 20px 52px rgba(6,26,67,.10)!important;
}
.presentation-wide-card.reverse{
  grid-template-columns:minmax(0,.58fr) minmax(360px,.42fr)!important;
}
.presentation-wide-card.reverse .presentation-illustration{order:2!important;}
.presentation-wide-card.reverse .presentation-copy{order:1!important;}
.presentation-illustration{
  margin:0!important;
  min-height:330px!important;
  background:#f5f9ff!important;
  overflow:hidden!important;
}
.presentation-illustration img{
  width:100%!important;
  height:100%!important;
  min-height:330px!important;
  object-fit:cover!important;
  object-position:center!important;
}
.presentation-copy{
  padding:36px 40px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.presentation-copy h3{
  margin:0 0 18px!important;
  color:#0d4da8!important;
  font-size:clamp(26px,2.3vw,42px)!important;
  line-height:1.12!important;
  font-weight:950!important;
}
.presentation-copy p,
.presentation-copy li{
  color:#1b2c4b!important;
  font-size:17px!important;
  line-height:1.72!important;
  font-weight:730!important;
}
.presentation-copy p{margin:0 0 14px!important;}
.presentation-copy ul,
.presentation-copy ol{margin:8px 0 0!important;padding-left:23px!important;}
.presentation-copy li{margin:7px 0!important;}
.presentation-lead{font-weight:950!important;color:#061a43!important;}

/* Chiffres clés : taille standard, même format, fond vert éclatant full screen */
.key-figures.key-damier-section{
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:48px 5vw 64px!important;
  background:#2e8b36!important;
}
.key-damier-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  padding:34px 34px 38px!important;
  background:
    radial-gradient(circle at 15% 10%,rgba(255,255,255,.17),transparent 24%),
    radial-gradient(circle at 88% 14%,rgba(242,103,34,.16),transparent 24%),
    linear-gradient(135deg,#2e8b36 0%,#21802f 55%,#146323 100%)!important;
  border-radius:30px!important;
  box-shadow:0 26px 70px rgba(8,68,22,.30)!important;
}
.key-damier-head h2,
.key-damier-head h3{
  font-size:clamp(30px,2.9vw,48px)!important;
  line-height:1.08!important;
  color:#090909!important;
  font-weight:950!important;
}
.key-damier-head h3{margin-top:8px!important;}
.key-damier-viewport{
  grid-template-rows:repeat(2,minmax(156px,1fr))!important;
  grid-auto-columns:minmax(215px,215px)!important;
}
.key-damier-card{
  min-height:156px!important;
  border-radius:20px!important;
}
.key-damier-card strong{
  font-size:clamp(23px,1.9vw,34px)!important;
}
.key-damier-card span{
  font-size:14px!important;
}

/* Admin title naming */
.admin-sidebar a[href$="key_figures.php"]{font-size:0!important;}
.admin-sidebar a[href$="key_figures.php"]::after{
  content:'Chiffres clés & marqueurs';
  font-size:18px!important;
}

/* Responsive */
@media(max-width:1120px){
  .patronage-welcome-inner,
  .presentation-wide-card,
  .presentation-wide-card.reverse{
    grid-template-columns:1fr!important;
  }
  .presentation-wide-card.reverse .presentation-illustration,
  .presentation-wide-card.reverse .presentation-copy{order:initial!important;}
  .patronage-identity-content{
    grid-template-columns:minmax(0,1fr) 185px!important;
  }
  .patronage-president-photo{width:185px!important;height:210px!important;}
}
@media(max-width:760px){
  .patronage-welcome{padding:32px 16px 16px!important;}
  .patronage-main-title{font-size:28px!important;}
  .patronage-identity-content{grid-template-columns:1fr!important;}
  .patronage-president-photo{width:100%!important;height:260px!important;}
  .president-message-card{padding:24px 20px!important;}
  .presentation-copy{padding:28px 22px!important;}
  .presentation-illustration,.presentation-illustration img{min-height:240px!important;}
  .presentation-heading h2{font-size:32px!important;}
  .institution-card{flex-basis:220px!important;}
  .key-damier-viewport{grid-auto-columns:minmax(180px,180px)!important;}
}

/* =====================================================
   V21 PREMIUM CONTINUE — corrections strictes demandées
   ===================================================== */

/* Header / logo */
.site-header .top-shell{
  grid-template-columns: 420px minmax(0,1fr) 58px !important;
}
.site-header .brand{
  justify-content:flex-start !important;
  padding: 10px 20px !important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact{
  width: 330px !important;
  max-width: 330px !important;
  max-height: 90px !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left center !important;
}

/* Haut patronage */
.patronage-main-title{
  font-size: clamp(32px, 2.8vw, 46px) !important;
  line-height: 1.15 !important;
}
.president-message-card{
  align-items: stretch !important;
}
.president-message-card > span{
  display: none !important;
}
.president-message-card h3{
  margin: 0 0 14px !important;
  color: #0b2f63 !important;
  font-size: clamp(24px, 1.8vw, 32px) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  text-align: left !important;
}
.president-message-card p{
  margin: 0 !important;
  color: #22385f !important;
  font-family: Verdana, Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.9 !important;
  text-align: justify !important;
  text-align-last: auto !important;
}
.patronage-identity-text h3{
  font-size: clamp(28px, 2.2vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: center !important;
}
.patronage-identity-text .president-function,
.patronage-identity-text .president-country,
.patronage-identity-text p{
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  text-align: center !important;
}
.patronage-president-photo{
  width: min(100%, 250px) !important;
}

/* Portage institutionnel */
.institutional-vignettes{
  background: transparent !important;
  padding: 24px 4vw 44px !important;
}
.institutional-vignettes-inner{
  background: #082450 !important;
  border-radius: 28px !important;
  border: 0 !important;
  box-shadow: 0 16px 40px rgba(4, 16, 42, 0.18) !important;
  padding: 30px 24px 32px !important;
}
.institutional-vignettes-inner:before{display:none !important;}
.institutional-vignettes h2{
  color: #ffffff !important;
  font-size: clamp(30px, 2.6vw, 44px) !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  margin-bottom: 22px !important;
}
.institution-grid{
  gap: 16px !important;
  align-items: stretch !important;
}
.institution-card{
  background: #ffffff !important;
  border: 0 !important;
  min-height: 230px !important;
  padding: 18px 14px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
.institution-logo-box{
  min-height: 130px !important;
  background: transparent !important;
  border-radius: 0 !important;
}
.institution-logo-box img{
  width: 148px !important;
  height: 108px !important;
  max-width: 148px !important;
  max-height: 108px !important;
  object-fit: contain !important;
}
.institution-card h3{
  display: block !important;
  margin: 10px 0 0 !important;
  color: #071b38 !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  text-align: center !important;
}

/* Présentation stratégique */
.presentation-heading span{
  color: #000000 !important;
  font-size: clamp(24px, 2vw, 36px) !important;
}
.presentation-heading h2{
  color: #111111 !important;
  font-size: clamp(40px, 4.2vw, 68px) !important;
  line-height: 1.08 !important;
}
.presentation-heading h2 strong{
  color: #ff2b2b !important;
  font-weight: 900 !important;
}
.presentation-heading h2 em{
  color: #000000 !important;
  font-style: normal !important;
  font-weight: 800 !important;
}

/* Chiffres clés */
.key-damier-head h2{
  color: #ffffff !important;
  font-size: clamp(34px, 3vw, 52px) !important;
  margin-bottom: 0 !important;
}
.key-damier-head h3{display:none !important;}

/* Admin comfort */
.admin-form textarea{
  width: 100%;
  min-height: 120px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid #d3dceb;
  font: inherit;
  resize: vertical;
}
.admin-form .form-grid .full{
  grid-column: 1 / -1;
}

@media (max-width: 1180px){
  .site-header .top-shell{grid-template-columns: 340px minmax(0,1fr) 56px !important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:280px !important;max-width:280px !important;}
}
@media (max-width: 980px){
  .site-header .top-shell{grid-template-columns: 1fr 54px !important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:250px !important;max-width:250px !important;}
  .institution-grid{grid-template-columns: repeat(2, minmax(0,1fr)) !important;}
}
@media (max-width: 640px){
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:220px !important;max-width:220px !important;}
  .institution-grid{grid-template-columns: 1fr !important;}
  .institution-card{min-height: 210px !important;}
}

/* =====================================================
   V21 STRICT USER PATCH — menu, admin-editable sections, visual strips
   ===================================================== */

/* Top menu compact, one line, white background, black text */
.site-header{
  background:#ffffff!important;
  border-bottom:1px solid #e7eef8!important;
  box-shadow:0 10px 30px rgba(6,26,67,.08)!important;
  padding:8px 22px!important;
}
.site-header .top-shell{
  max-width:1780px!important;
  min-height:82px!important;
  padding:8px 20px!important;
  display:grid!important;
  grid-template-columns:360px minmax(0,1fr)56px!important;
  gap:18px!important;
  align-items:center!important;
  background:#ffffff!important;
  border:1px solid #dbe7f5!important;
  border-radius:24px!important;
  box-shadow:0 14px 34px rgba(6,26,67,.08)!important;
}
.site-header .brand{
  min-height:64px!important;
  padding:6px 12px!important;
  justify-content:flex-start!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid rgba(46,139,54,.18)!important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact{
  width:330px!important;
  max-width:330px!important;
  height:auto!important;
  max-height:72px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.site-header .main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
}
.site-header .main-nav a{
  color:#000!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  border-radius:0!important;
  padding:0 2px 5px!important;
  min-height:38px!important;
  font-size:16px!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a.is-active{
  color:#c3171d!important;
}
.site-header .main-nav a:after{
  background:#c3171d!important;
  height:3px!important;
  bottom:0!important;
}
.site-header .nav-toggle{
  width:48px!important;
  height:48px!important;
  border-radius:14px!important;
  background:#061a43!important;
}
.site-header .nav-toggle span{background:#fff!important;}

/* Patronage requested fixes */
.patronage-main-title{
  font-size:clamp(28px,2.45vw,42px)!important;
  color:#000!important;
  text-align:center!important;
  font-weight:800!important;
}
.president-message-card > span{display:none!important;}
.president-message-card h3{
  color:#061a43!important;
  font-size:clamp(25px,1.8vw,34px)!important;
  font-weight:800!important;
  text-align:left!important;
  margin-bottom:16px!important;
}
.president-message-card p{
  color:#22385f!important;
  font-family:Verdana, Arial, sans-serif!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.9!important;
  text-align:justify!important;
}

/* Portage institutionnel: fond unique bleu marine, image présidentielle répliquée + textes réécrits */
.institutional-vignettes{
  padding:30px 5vw 48px!important;
  background:#ffffff!important;
}
.institutional-vignettes-inner{
  background:#061a43!important;
  border:0!important;
  box-shadow:0 22px 50px rgba(6,26,67,.18)!important;
  border-radius:30px!important;
  padding:32px 28px 34px!important;
}
.institutional-vignettes-inner:before{display:none!important;}
.institutional-vignettes h2{
  color:#fff!important;
  font-size:clamp(30px,2.8vw,48px)!important;
  font-weight:900!important;
  margin-bottom:26px!important;
}
.institution-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
}
.institution-card{
  min-height:260px!important;
  background:#fff!important;
  border-radius:22px!important;
  border:0!important;
  padding:18px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.institution-logo-box{
  width:100%!important;
  min-height:128px!important;
  margin-bottom:12px!important;
}
.institution-logo-box img{
  width:155px!important;
  height:112px!important;
  object-fit:contain!important;
}
.institution-card h3{
  display:block!important;
  color:#061a43!important;
  font-size:17px!important;
  line-height:1.4!important;
  font-weight:500!important;
  text-align:center!important;
  margin:0!important;
}

/* Presentation title: one line; red for rendez-vous mondial and Afrique industrielle; rest black */
.presentation-heading h2{
  white-space:nowrap!important;
  font-size:clamp(34px,3.55vw,62px)!important;
  line-height:1.08!important;
  color:#000!important;
}
.presentation-heading h2 strong{
  color:#f1091d!important;
  font-weight:950!important;
}
.presentation-heading h2 em,
.presentation-heading .presentation-black-prefix,
.presentation-heading .presentation-black-suffix{
  color:#000!important;
  font-style:normal!important;
}
.presentation-copy p,
.presentation-copy li{
  font-weight:400!important;
}

/* Chiffres clés: visual carousel conforming to provided style */
.key-figures.key-damier-section{
  background:#fff!important;
  padding:42px 0 52px!important;
}
.key-damier-inner{
  width:min(100%,1840px)!important;
  margin:0 auto!important;
  background:#ffffff!important;
  border-radius:22px!important;
  padding:0 58px!important;
  box-shadow:none!important;
}
.key-damier-head{
  text-align:center!important;
  margin:0 0 20px!important;
}
.key-damier-head h2{
  color:#061a43!important;
  font-size:clamp(30px,2.6vw,46px)!important;
  font-weight:900!important;
}
.key-damier-head h3{display:none!important;}
.damier-nav-wrap{
  position:relative!important;
  padding:0 54px!important;
}
.damier-arrow,
.strip-arrow{
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  border:0!important;
  background:#13783b!important;
  color:#fff!important;
  font-size:30px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
  cursor:pointer!important;
  z-index:6!important;
}
.damier-arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;}
.damier-prev{left:0!important;}
.damier-next{right:0!important;}
.key-damier-viewport{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  padding:0 0 8px!important;
}
.key-damier-viewport::-webkit-scrollbar{display:none!important;}
.key-damier-card.key-photo-card{
  flex:0 0 190px!important;
  height:330px!important;
  min-height:330px!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.86)),var(--card-bg)!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
  border:0!important;
  clip-path:polygon(8% 0,100% 0,92% 100%,0 100%)!important;
  position:relative!important;
  scroll-snap-align:start!important;
}
.key-card-overlay{
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:16px!important;
  color:#fff!important;
  z-index:2!important;
}
.key-card-overlay strong{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:54px!important;
  height:34px!important;
  padding:0 12px!important;
  margin:0 0 10px!important;
  border-radius:999px!important;
  background:#13783b!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:900!important;
}
.key-card-overlay span{
  display:block!important;
  color:#fff!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-shadow:0 2px 8px rgba(0,0,0,.5)!important;
}

/* Secteurs industriels exposants: same spirit as provided image */
.visual-strip-section{
  background:#fff!important;
  padding:30px 0 56px!important;
}
.visual-strip-head{text-align:center!important;margin-bottom:20px!important;}
.visual-strip-head h2,
.chambers-inner h2{
  margin:0!important;
  color:#061a43!important;
  font-size:clamp(30px,2.6vw,46px)!important;
  font-weight:900!important;
}
.visual-strip-wrap,
.chambers-wrap{
  width:min(100%,1840px)!important;
  margin:0 auto!important;
  position:relative!important;
  padding:0 54px!important;
}
.visual-strip-track{
  display:flex!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  padding:0 0 8px!important;
}
.visual-strip-track::-webkit-scrollbar{display:none!important;}
.strip-arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;}
.strip-prev,.chambers-prev{left:6px!important;}
.strip-next,.chambers-next{right:6px!important;}
.visual-sector-card{
  flex:0 0 174px!important;
  height:330px!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.88)),var(--sector-bg)!important;
  background-size:cover!important;
  background-position:center!important;
  clip-path:polygon(8% 0,100% 0,92% 100%,0 100%)!important;
  position:relative!important;
  scroll-snap-align:start!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
.visual-sector-card strong{
  position:absolute!important;
  left:18px!important;
  right:14px!important;
  bottom:54px!important;
  color:#fff!important;
  font-size:14px!important;
  line-height:1.28!important;
  font-weight:900!important;
  text-shadow:0 2px 8px rgba(0,0,0,.52)!important;
}
.visual-sector-card span{
  position:absolute!important;
  left:18px!important;
  bottom:18px!important;
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#13783b!important;
  color:#fff!important;
  font-weight:900!important;
}

/* Chambres de commerce: variant style */
.chambers-section{
  padding:38px 5vw 60px!important;
  background:#061a43!important;
}
.chambers-inner{width:min(100%,1760px)!important;margin:0 auto!important;}
.chambers-inner h2{color:#fff!important;text-align:center!important;margin-bottom:24px!important;}
.chambers-wrap{padding:0 54px!important;}
.chambers-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-rows:repeat(2,minmax(120px,auto))!important;
  grid-auto-columns:minmax(300px,340px)!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  scroll-snap-type:x proximity!important;
}
.chambers-track::-webkit-scrollbar{display:none!important;}
.chamber-card{
  min-height:120px!important;
  border-radius:20px!important;
  padding:18px 18px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  display:flex!important;
  gap:14px!important;
  align-items:flex-start!important;
}
.chamber-card span{
  flex:0 0 30px!important;
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#13783b!important;
  color:#fff!important;
  font-weight:900!important;
}
.chamber-card strong{
  color:#fff!important;
  font-size:15px!important;
  line-height:1.42!important;
  font-weight:700!important;
}

/* Admin textarea comfort and previews */
.admin-form textarea{
  width:100%!important;
  min-height:110px!important;
  padding:12px 14px!important;
  border:1px solid #d3dceb!important;
  border-radius:14px!important;
  font:inherit!important;
  resize:vertical!important;
}
.table-icon.wide{width:76px!important;height:50px!important;object-fit:cover!important;}

@media(max-width:1280px){
  .site-header .top-shell{grid-template-columns:300px minmax(0,1fr)54px!important;gap:10px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:270px!important;max-width:270px!important;}
  .site-header .main-nav{gap:10px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .institution-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:980px){
  .site-header .top-shell{grid-template-columns:1fr 54px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:240px!important;max-width:240px!important;}
  .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .presentation-heading h2{white-space:normal!important;}
  .chambers-track{grid-template-rows:repeat(2,minmax(115px,auto))!important;grid-auto-columns:minmax(280px,300px)!important;}
}
@media(max-width:640px){
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:210px!important;max-width:210px!important;}
  .institution-grid{grid-template-columns:1fr!important;}
  .visual-sector-card,.key-damier-card.key-photo-card{flex-basis:160px!important;height:300px!important;min-height:300px!important;}
  .damier-nav-wrap,.visual-strip-wrap,.chambers-wrap{padding:0 46px!important;}
  .damier-arrow,.strip-arrow{width:36px!important;height:36px!important;font-size:24px!important;}
}

/* Final key-title correction: no black-on-green */
.key-damier-head{
  width:max-content!important;
  max-width:92%!important;
  margin:0 auto 20px!important;
  padding:10px 34px!important;
  border-radius:999px!important;
  background:#13783b!important;
}
.key-damier-head h2{
  color:#ffffff!important;
  margin:0!important;
}


/* =========================================================
   S2IA V21 PRO PATCH — responsive, admin-ready sections
   ========================================================= */
:root{
  --s2ia-blue:#0d4da8;
  --s2ia-navy:#071f46;
  --s2ia-green:#2e9f42;
  --s2ia-light-green:#dff7df;
  --s2ia-orange:#f26722;
  --s2ia-red:#ef1224;
}

/* Top menu compact, white background, black text, aligned with logo + hamburger */
.site-header{
  background:#ffffff!important;
  border-bottom:1px solid #e4edf7!important;
  box-shadow:0 10px 28px rgba(6,26,67,.08)!important;
}
.site-header .top-shell{
  width:min(100%,1780px)!important;
  grid-template-columns:300px minmax(0,1fr)58px!important;
  gap:18px!important;
  min-height:78px!important;
  padding:8px 20px!important;
  background:#ffffff!important;
  border:1px solid #dce7f5!important;
  border-radius:26px!important;
  box-shadow:0 12px 32px rgba(6,26,67,.08)!important;
  overflow:visible!important;
}
.site-header .brand{
  min-height:60px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  justify-content:flex-start!important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact{
  width:270px!important;
  max-width:270px!important;
  max-height:66px!important;
  height:auto!important;
  object-fit:contain!important;
}
.site-header .main-nav{
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:20px!important;
  min-width:0!important;
}
.site-header .main-nav a{
  white-space:nowrap!important;
  color:#000!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.005em!important;
  min-height:38px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a.is-active{
  color:var(--s2ia-red)!important;
}
.site-header .main-nav a:after{
  height:3px!important;
  bottom:-6px!important;
  background:var(--s2ia-red)!important;
}
.site-header .nav-toggle{
  width:50px!important;
  height:50px!important;
  background:var(--s2ia-navy)!important;
  border-radius:14px!important;
}
.site-header .nav-toggle span{background:#fff!important;}

/* Harmonisation générale des grands titres */
.section-title,
.patronage-main-title,
.institutional-vignettes h2,
.presentation-heading span,
.key-damier-head h2,
.visual-strip-head h2,
.chambers-inner h2{
  text-align:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  line-height:1.12!important;
  letter-spacing:-.015em!important;
}

/* Présentation stratégique : pas de débordement, style correct */
.presentation-heading{
  max-width:1520px!important;
  padding:0 20px!important;
  overflow:hidden!important;
}
.presentation-heading span{
  display:block!important;
  margin:0 auto 18px!important;
  color:#000!important;
  background:transparent!important;
  font-size:clamp(26px,2.25vw,42px)!important;
  font-weight:900!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
}
.presentation-heading h2{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:baseline!important;
  gap:.28em!important;
  margin:0 auto!important;
  max-width:100%!important;
  color:#000!important;
  font-size:clamp(32px,4.1vw,68px)!important;
  line-height:1.05!important;
  font-weight:900!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.presentation-heading h2 strong,
.presentation-heading h2 .title-red{
  color:var(--s2ia-red)!important;
  font-weight:950!important;
}
.presentation-heading h2 em{
  color:#000!important;
  font-style:normal!important;
  font-weight:900!important;
}
.presentation-heading h2 em .afrique-red,
.presentation-heading h2 .afrique-red{
  color:var(--s2ia-red)!important;
}

/* Haut patronage */
.patronage-main-title{
  font-size:clamp(28px,2.6vw,44px)!important;
  color:#000!important;
}
.president-message-card > span{display:none!important;}
.president-message-card h3{
  margin:0 0 14px!important;
  color:#0b2f63!important;
  font-size:clamp(24px,1.7vw,32px)!important;
  font-weight:800!important;
  text-align:left!important;
}
.president-message-card p{
  font-family:Verdana,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.85!important;
  font-weight:400!important;
  text-align:justify!important;
  color:#213a62!important;
}

/* Portage institutionnel propre */
.institutional-vignettes{
  padding:34px 5vw 48px!important;
  background:#ffffff!important;
}
.institutional-vignettes-inner{
  width:min(100%,1560px)!important;
  margin:0 auto!important;
  padding:32px 30px 36px!important;
  background:var(--s2ia-navy)!important;
  border-radius:30px!important;
  border:0!important;
  box-shadow:0 20px 48px rgba(6,26,67,.16)!important;
  overflow:hidden!important;
}
.institutional-vignettes-inner:before{
  display:none!important;
}
.institutional-vignettes h2{
  margin:0 0 26px!important;
  color:#fff!important;
  font-size:clamp(30px,2.8vw,48px)!important;
  font-weight:900!important;
}
.institution-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
}
.institution-card{
  min-height:245px!important;
  padding:18px 14px!important;
  background:#fff!important;
  border:0!important;
  border-radius:22px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 12px 26px rgba(0,0,0,.10)!important;
}
.institution-logo-box{
  min-height:112px!important;
  margin-bottom:12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
}
.institution-logo-box img{
  width:130px!important;
  height:96px!important;
  max-width:130px!important;
  max-height:96px!important;
  object-fit:contain!important;
}
.institution-card h3{
  display:block!important;
  margin:0!important;
  color:#0b1d3a!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:500!important;
  text-align:center!important;
}

/* Chiffres clés : propre, lisible, pas de zone vide */
.key-figures.key-damier-section{
  padding:42px 5vw 54px!important;
  background:linear-gradient(135deg,#2fae48 0%,#1f8d35 100%)!important;
}
.key-damier-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.key-damier-head h2{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:320px!important;
  margin:0 auto 24px!important;
  padding:12px 34px!important;
  border-radius:999px!important;
  background:#0b7a32!important;
  color:#fff!important;
  font-size:clamp(32px,2.7vw,50px)!important;
  font-weight:950!important;
  text-shadow:0 3px 0 rgba(0,0,0,.20)!important;
}
.damier-nav-wrap{
  position:relative!important;
  padding:0 82px!important;
}
.damier-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  border:0!important;
  background:#fff!important;
  color:#0d7b36!important;
  font-size:42px!important;
  font-weight:900!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
  z-index:5!important;
}
.damier-prev{left:8px!important;}
.damier-next{right:8px!important;}
.key-damier-viewport{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  padding:8px 0 12px!important;
}
.key-damier-viewport::-webkit-scrollbar{display:none!important;}
.key-damier-card{
  flex:0 0 210px!important;
  min-height:190px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.12)!important;
  padding:20px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  scroll-snap-align:start!important;
}
.key-damier-icon{
  width:66px!important;
  height:66px!important;
  margin:0 auto 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.key-damier-icon img{
  width:58px!important;
  height:58px!important;
  object-fit:contain!important;
}
.key-damier-card strong{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--s2ia-blue)!important;
  font-size:clamp(28px,2vw,38px)!important;
  line-height:1.05!important;
  font-weight:950!important;
}
.key-damier-card span{
  display:block!important;
  color:#07306c!important;
  font-size:16px!important;
  line-height:1.18!important;
  font-weight:800!important;
}

/* Secteurs industriels : titre rouge, fond vert clair, 2 lignes de 7 */
.visual-strip-section.sectors-strip{
  padding:52px 4vw 62px!important;
  background:linear-gradient(135deg,#dff9df 0%,#c7f2cf 48%,#eefded 100%)!important;
}
.visual-strip-head h2{
  margin:0 0 28px!important;
  color:var(--s2ia-red)!important;
  font-size:clamp(34px,3.1vw,56px)!important;
  font-weight:950!important;
}
.visual-strip-wrap{
  position:relative!important;
  width:min(100%,1600px)!important;
  margin:0 auto!important;
  padding:0 72px!important;
}
.visual-strip-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-rows:repeat(2, minmax(180px, 1fr))!important;
  grid-auto-columns:calc((100% - 108px) / 7)!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:6px 0 12px!important;
}
.visual-strip-track::-webkit-scrollbar{display:none!important;}
.visual-sector-card{
  min-height:180px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(46,139,54,.22)!important;
  box-shadow:0 16px 32px rgba(6,26,67,.08)!important;
  padding:20px 14px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  scroll-snap-align:start!important;
  position:relative!important;
  overflow:hidden!important;
}
.visual-sector-card:before{display:none!important;}
.visual-sector-card .sector-picto{
  width:82px!important;
  height:82px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-bottom:12px!important;
}
.visual-sector-card .sector-picto img{
  width:76px!important;
  height:76px!important;
  object-fit:contain!important;
}
.visual-sector-card strong{
  color:#062a5d!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:850!important;
  max-width:100%!important;
}
.visual-sector-card span{
  position:absolute!important;
  top:10px!important;
  right:12px!important;
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  background:#15813b!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:900!important;
}
.strip-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:54px!important;
  height:54px!important;
  border:0!important;
  border-radius:50%!important;
  background:#0b7a32!important;
  color:#fff!important;
  font-size:38px!important;
  font-weight:900!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
  z-index:5!important;
}
.strip-prev{left:0!important;}
.strip-next{right:0!important;}

/* Chambres de commerce : fond blanc avec design, images modifiables */
.chambers-section{
  padding:62px 5vw 70px!important;
  background:
    radial-gradient(circle at 10% 10%,rgba(13,77,168,.08),transparent 24%),
    radial-gradient(circle at 90% 0%,rgba(242,103,34,.08),transparent 24%),
    linear-gradient(180deg,#fff 0%,#f7fbff 100%)!important;
  color:#071f46!important;
}
.chambers-inner{
  width:min(100%,1560px)!important;
  margin:0 auto!important;
  background:#fff!important;
  border:1px solid #dfe8f5!important;
  border-radius:32px!important;
  box-shadow:0 18px 46px rgba(6,26,67,.08)!important;
  padding:38px 30px 42px!important;
  position:relative!important;
  overflow:hidden!important;
}
.chambers-inner:before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background-image:
    linear-gradient(rgba(13,77,168,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(13,77,168,.04) 1px,transparent 1px)!important;
  background-size:42px 42px!important;
  pointer-events:none!important;
}
.chambers-inner h2{
  position:relative!important;
  margin:0 0 30px!important;
  color:#071f46!important;
  font-size:clamp(34px,3vw,56px)!important;
  font-weight:950!important;
  text-align:center!important;
}
.chambers-wrap{
  position:relative!important;
  padding:0 72px!important;
}
.chambers-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-rows:repeat(2, minmax(190px,1fr))!important;
  grid-auto-columns:340px!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:4px 0 12px!important;
}
.chambers-track::-webkit-scrollbar{display:none!important;}
.chamber-card{
  scroll-snap-align:start!important;
  min-height:190px!important;
  background:#fff!important;
  border:1px solid #dfe8f5!important;
  border-radius:22px!important;
  box-shadow:0 14px 32px rgba(6,26,67,.08)!important;
  padding:18px!important;
  display:grid!important;
  grid-template-columns:84px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:center!important;
}
.chamber-card > span{display:none!important;}
.chamber-logo{
  width:84px!important;
  height:84px!important;
  border-radius:18px!important;
  background:#f3f8ff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.chamber-logo img{
  width:76px!important;
  height:58px!important;
  object-fit:contain!important;
}
.chamber-card strong{
  color:#0a2f67!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

/* Responsive */
@media(max-width:1280px){
  .site-header .top-shell{grid-template-columns:260px minmax(0,1fr)54px!important;gap:12px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:235px!important;max-width:235px!important;}
  .site-header .main-nav{gap:12px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .institution-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .visual-strip-track{grid-auto-columns:calc((100% - 54px) / 4)!important;}
}
@media(max-width:980px){
  .site-header .top-shell{grid-template-columns:1fr 52px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact{width:220px!important;max-width:220px!important;}
  .site-header .main-nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;display:none!important;flex-direction:column!important;background:#fff!important;border:1px solid #dfe8f5!important;border-radius:18px!important;padding:14px!important;box-shadow:0 18px 44px rgba(6,26,67,.18)!important;}
  .site-header .main-nav.is-open{display:flex!important;}
  .site-header .main-nav a{width:100%!important;justify-content:center!important;min-height:42px!important;}
  .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .visual-strip-wrap,.chambers-wrap{padding:0 54px!important;}
  .visual-strip-track{grid-auto-columns:calc((100% - 18px) / 2)!important;}
  .chambers-track{grid-auto-columns:300px!important;}
}
@media(max-width:640px){
  .institution-grid{grid-template-columns:1fr!important;}
  .visual-strip-track{grid-template-rows:repeat(2, minmax(170px,1fr))!important;grid-auto-columns:230px!important;}
  .visual-strip-wrap,.chambers-wrap{padding:0 46px!important;}
  .strip-arrow{width:42px!important;height:42px!important;font-size:30px!important;}
  .damier-nav-wrap{padding:0 52px!important;}
  .damier-arrow{width:42px!important;height:42px!important;font-size:30px!important;}
  .key-damier-card{flex-basis:180px!important;min-height:170px!important;}
  .chambers-track{grid-template-rows:repeat(2,minmax(180px,1fr))!important;grid-auto-columns:260px!important;}
  .chamber-card{grid-template-columns:1fr!important;text-align:center!important;}
  .chamber-logo{margin:0 auto!important;}
}

/* Final overflow/titles normalization */
.presentation-heading .presentation-black-prefix,
.presentation-heading .presentation-black-suffix{
  display:inline!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border-radius:0!important;
  color:#000!important;
}
.presentation-heading h2 strong{
  display:inline!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border-radius:0!important;
  color:var(--s2ia-red)!important;
}
body{overflow-x:hidden!important;}
img{max-width:100%;}


/* =========================================================
   S2IA V21 FINAL RETOUCHE — captures secteurs/chambres/chiffres
   ========================================================= */
body{overflow-x:hidden!important;}
img{max-width:100%;}

/* Harmonisation des titres */
.institutional-vignettes h2,
.presentation-heading span,
.key-damier-head h2,
.visual-strip-head h2,
.chambers-inner h2{
  font-family:Arial,Helvetica,sans-serif!important;
  text-align:center!important;
  line-height:1.12!important;
  letter-spacing:-.02em!important;
}

/* Chiffres clés : plus de vide, cartes alignées et lisibles */
.key-figures.key-damier-section{
  padding:44px 5vw 54px!important;
  background:linear-gradient(135deg,#2ea948 0%,#1f8d35 100%)!important;
  min-height:auto!important;
}
.key-damier-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.key-damier-inner:before{display:none!important;}
.key-damier-head{
  margin:0 0 26px!important;
  text-align:center!important;
}
.key-damier-head h2{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:320px!important;
  margin:0 auto!important;
  padding:12px 34px!important;
  border-radius:999px!important;
  background:#0b7a32!important;
  color:#ffffff!important;
  font-size:clamp(30px,2.7vw,48px)!important;
  font-weight:950!important;
  text-shadow:0 3px 0 rgba(0,0,0,.18)!important;
}
.key-damier-head h3{display:none!important;}
.damier-nav-wrap{
  position:relative!important;
  display:block!important;
  padding:0 76px!important;
}
.damier-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  border:0!important;
  background:#ffffff!important;
  color:#0b7a32!important;
  font-size:42px!important;
  font-weight:900!important;
  z-index:10!important;
  box-shadow:0 14px 28px rgba(0,0,0,.16)!important;
}
.damier-prev{left:0!important;}
.damier-next{right:0!important;}
.key-damier-viewport{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:18px!important;
  overflow:visible!important;
  padding:6px 0 8px!important;
  scroll-snap-type:none!important;
  transform:none!important;
}
.key-damier-card{
  min-height:186px!important;
  width:auto!important;
  min-width:0!important;
  flex:none!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid rgba(255,255,255,.70)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.12)!important;
  padding:18px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  position:relative!important;
  overflow:hidden!important;
  transform:none!important;
}
.key-damier-card:before{display:none!important;}
.key-damier-icon{
  width:66px!important;
  height:66px!important;
  margin:0 auto 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.key-damier-icon img{
  width:58px!important;
  height:58px!important;
  object-fit:contain!important;
}
.key-damier-card strong{
  display:block!important;
  margin:0 0 8px!important;
  color:#0d4da8!important;
  font-size:clamp(25px,1.9vw,36px)!important;
  line-height:1.05!important;
  font-weight:950!important;
}
.key-damier-card span{
  display:block!important;
  color:#07306c!important;
  font-size:15px!important;
  line-height:1.18!important;
  font-weight:850!important;
}

/* Secteurs : 2 lignes de 7, sans cartes inclinées ni coupées */
.visual-strip-section.sectors-strip{
  padding:52px 4vw 62px!important;
  background:linear-gradient(135deg,#ddf8de 0%,#c8f1cf 48%,#effded 100%)!important;
  overflow:hidden!important;
}
.visual-strip-head h2{
  margin:0 0 30px!important;
  color:#ef1224!important;
  font-size:clamp(34px,3.4vw,60px)!important;
  font-weight:950!important;
}
.visual-strip-wrap{
  position:relative!important;
  width:min(100%,1640px)!important;
  margin:0 auto!important;
  padding:0 72px!important;
}
.visual-strip-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:4px 0 10px!important;
}
.visual-strip-track::-webkit-scrollbar{display:none!important;}
.sector-page{
  flex:0 0 100%!important;
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(190px,1fr))!important;
  gap:18px!important;
  scroll-snap-align:start!important;
  padding:0 4px!important;
}
.visual-sector-card{
  min-height:190px!important;
  width:auto!important;
  transform:none!important;
  rotate:0deg!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid rgba(46,139,54,.22)!important;
  box-shadow:0 14px 30px rgba(6,26,67,.08)!important;
  padding:20px 12px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  position:relative!important;
  overflow:hidden!important;
}
.visual-sector-card:before{display:none!important;}
.visual-sector-card .sector-picto{
  width:82px!important;
  height:82px!important;
  margin:0 auto 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.visual-sector-card .sector-picto img{
  width:76px!important;
  height:76px!important;
  object-fit:contain!important;
}
.visual-sector-card strong{
  color:#062a5d!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:850!important;
  text-shadow:none!important;
}
.visual-sector-card span{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  background:#11823b!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:950!important;
}
.strip-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:54px!important;
  height:54px!important;
  border:0!important;
  border-radius:50%!important;
  background:#0b7a32!important;
  color:#fff!important;
  font-size:38px!important;
  font-weight:900!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
  z-index:10!important;
}
.strip-prev{left:0!important;}
.strip-next{right:0!important;}

/* Chambres : fond blanc design, cartes complètes, sans coupure */
.chambers-section{
  padding:62px 5vw 74px!important;
  background:
    radial-gradient(circle at 8% 8%,rgba(46,139,54,.10),transparent 25%),
    radial-gradient(circle at 92% 0%,rgba(242,103,34,.08),transparent 23%),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)!important;
  color:#071f46!important;
  overflow:hidden!important;
}
.chambers-inner{
  width:min(100%,1600px)!important;
  margin:0 auto!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  border-radius:30px!important;
  box-shadow:0 18px 46px rgba(6,26,67,.08)!important;
  padding:38px 30px 42px!important;
  position:relative!important;
  overflow:hidden!important;
}
.chambers-inner:before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background-image:
    linear-gradient(rgba(13,77,168,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(13,77,168,.04) 1px,transparent 1px)!important;
  background-size:42px 42px!important;
  pointer-events:none!important;
}
.chambers-inner h2{
  position:relative!important;
  z-index:1!important;
  margin:0 auto 30px!important;
  max-width:1260px!important;
  color:#071f46!important;
  font-size:clamp(30px,3vw,52px)!important;
  font-weight:950!important;
  text-align:center!important;
}
.chambers-wrap{
  position:relative!important;
  z-index:1!important;
  padding:0 70px!important;
}
.chambers-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:4px 0 10px!important;
}
.chambers-track::-webkit-scrollbar{display:none!important;}
.chambers-page{
  flex:0 0 100%!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(170px,1fr))!important;
  gap:18px!important;
  scroll-snap-align:start!important;
  padding:0 4px!important;
}
.chamber-card{
  min-height:170px!important;
  width:auto!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  box-shadow:0 14px 32px rgba(6,26,67,.08)!important;
  padding:18px!important;
  display:grid!important;
  grid-template-columns:86px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:center!important;
  color:#071f46!important;
  overflow:hidden!important;
}
.chamber-card > span{display:none!important;}
.chamber-logo{
  width:86px!important;
  height:86px!important;
  border-radius:18px!important;
  background:#f3f8ff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.chamber-logo img{
  width:78px!important;
  height:60px!important;
  object-fit:contain!important;
}
.chamber-card strong{
  color:#0a2f67!important;
  font-size:16px!important;
  line-height:1.34!important;
  font-weight:850!important;
}

/* Responsive corrections */
@media(max-width:1280px){
  .key-damier-viewport{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .sector-page{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(180px,1fr))!important;}
  .chambers-page{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  .damier-nav-wrap,
  .visual-strip-wrap,
  .chambers-wrap{padding:0 52px!important;}
  .key-damier-viewport{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .sector-page{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .chambers-page{grid-template-columns:1fr!important;}
}
@media(max-width:560px){
  .key-damier-viewport{grid-template-columns:1fr!important;}
  .sector-page{grid-template-columns:1fr!important;}
  .damier-nav-wrap,
  .visual-strip-wrap,
  .chambers-wrap{padding:0 42px!important;}
  .damier-arrow,
  .strip-arrow{width:40px!important;height:40px!important;font-size:28px!important;}
  .chamber-card{grid-template-columns:1fr!important;text-align:center!important;}
  .chamber-logo{margin:0 auto!important;}
}

/* =========================================================
   V21 FINAL — correction précise des titres, chiffres, secteurs, chambres
   ========================================================= */

/* Style commun inspiré du titre Portage Institutionnel */
.institutional-vignettes h2,
.presentation-heading h2,
.key-damier-head h2,
.visual-strip-head h2,
.chambers-inner h2{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:fit-content!important;
  max-width:calc(100% - 32px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:14px 34px!important;
  border-radius:0!important;
  background:#082450!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(30px,3vw,54px)!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  text-align:center!important;
  box-shadow:0 12px 28px rgba(8,36,80,.18)!important;
}
.presentation-heading h2,
.presentation-heading h2 span,
.presentation-heading h2 strong,
.presentation-heading h2 em,
.presentation-heading .presentation-black-prefix,
.presentation-heading .presentation-black-suffix{
  color:#ffffff!important;
  background:transparent!important;
  text-shadow:none!important;
  font-style:normal!important;
  font-weight:950!important;
}
.presentation-heading > span,
.presentation-heading span:not(.presentation-black-prefix):not(.presentation-black-suffix):not(.afrique-red):not(.title-red){
  display:none!important;
}
.presentation-heading{
  margin:0 auto 30px!important;
  padding:0 12px!important;
  overflow:visible!important;
}
.presentation-heading h2{
  white-space:normal!important;
  flex-wrap:wrap!important;
  gap:.25em!important;
}

/* Titres des 3 blocs de présentation : sans numéros, lisibles */
.presentation-copy h3{
  color:#082450!important;
  font-size:clamp(30px,2.4vw,44px)!important;
  line-height:1.18!important;
  font-weight:900!important;
  margin:0 0 18px!important;
}
.presentation-copy p,
.presentation-copy li{
  color:#213a62!important;
  font-size:clamp(18px,1.35vw,24px)!important;
  line-height:1.82!important;
  font-weight:400!important;
}
.presentation-copy .presentation-lead{font-weight:400!important;}

/* Chiffres clés : pas de slide, 2 lignes centrées, champ réduit */
.key-figures.key-damier-section{
  padding:46px 5vw 56px!important;
  background:#ffffff!important;
  min-height:auto!important;
}
.key-damier-inner{
  width:min(100%,1160px)!important;
  margin:0 auto!important;
  padding:34px 34px 38px!important;
  background:linear-gradient(135deg,#2faa49 0%,#218c35 100%)!important;
  border-radius:30px!important;
  box-shadow:0 20px 52px rgba(31,141,53,.22)!important;
  overflow:visible!important;
}
.key-damier-inner:before{display:none!important;}
.key-damier-head{margin:0 0 28px!important;text-align:center!important;}
.key-damier-head h2{margin-top:0!important;margin-bottom:0!important;}
.key-damier-head h3,.damier-arrow{display:none!important;}
.key-damier-viewport{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:20px!important;
  max-width:980px!important;
  margin:0 auto!important;
  overflow:visible!important;
  padding:0!important;
  scroll-snap-type:none!important;
  transform:none!important;
}
.key-damier-card{
  flex:0 1 220px!important;
  width:220px!important;
  min-height:210px!important;
  border-radius:24px!important;
  background:#ffffff!important;
  border:0!important;
  box-shadow:0 14px 32px rgba(0,0,0,.13)!important;
  padding:22px 16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  transform:none!important;
}
.key-damier-card:before{display:none!important;}
.key-damier-icon{
  width:96px!important;
  height:96px!important;
  margin:0 auto 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.key-damier-icon img{
  width:88px!important;
  height:88px!important;
  object-fit:contain!important;
}
.key-damier-card strong{
  margin:0 0 8px!important;
  color:#0d4da8!important;
  font-size:clamp(31px,2.4vw,46px)!important;
  line-height:1.05!important;
  font-weight:950!important;
}
.key-damier-card span{
  color:#082450!important;
  font-size:18px!important;
  line-height:1.25!important;
  font-weight:850!important;
}

/* Secteurs industriels : pas de flèches, 5 carrés par ligne, image haut texte bas */
.visual-strip-section.sectors-strip{
  padding:52px 5vw 66px!important;
  background:linear-gradient(135deg,#dcf8df 0%,#c8f3cf 55%,#eefded 100%)!important;
  overflow:hidden!important;
}
.visual-strip-head h2{
  color:#ffffff!important;
  margin-bottom:34px!important;
}
.visual-strip-wrap{width:min(100%,1460px)!important;margin:0 auto!important;padding:0!important;}
.visual-strip-track{display:block!important;overflow:visible!important;padding:0!important;}
.sector-page{display:contents!important;}
.visual-sector-grid,
.visual-strip-track{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:22px!important;
}
.visual-sector-card{
  aspect-ratio:1/1!important;
  min-height:auto!important;
  width:auto!important;
  border-radius:26px!important;
  background:#ffffff!important;
  border:1px solid rgba(46,139,54,.25)!important;
  box-shadow:0 16px 34px rgba(6,26,67,.09)!important;
  padding:22px 16px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  transform:none!important;
  rotate:0deg!important;
  overflow:hidden!important;
}
.visual-sector-card:before{display:none!important;}
.visual-sector-card .sector-picto{
  width:108px!important;
  height:108px!important;
  margin:0 auto 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.visual-sector-card .sector-picto img{
  width:98px!important;
  height:98px!important;
  object-fit:contain!important;
}
.visual-sector-card strong{
  color:#082450!important;
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:850!important;
  text-shadow:none!important;
}
.visual-sector-card span{
  position:absolute!important;
  top:12px!important;
  left:12px!important;
  width:32px!important;
  height:32px!important;
  border-radius:50%!important;
  background:#15813b!important;
  color:#ffffff!important;
  font-size:13px!important;
  font-weight:950!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.visual-strip-section .strip-arrow{display:none!important;}

/* Chambres : titre réduit, full screen gris foncé, cartes noires avec image haut / texte bas */
.chambers-section{
  width:100%!important;
  padding:54px 4vw 70px!important;
  background:#2f343c!important;
  color:#ffffff!important;
  overflow:hidden!important;
}
.chambers-inner{
  width:100%!important;
  max-width:1760px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.chambers-inner:before{display:none!important;}
.chambers-inner h2{
  white-space:nowrap!important;
  max-width:100%!important;
  font-size:clamp(24px,2.25vw,38px)!important;
  margin-bottom:34px!important;
  padding:12px 24px!important;
}
.chambers-wrap{padding:0!important;}
.chambers-track{display:block!important;overflow:visible!important;padding:0!important;}
.chambers-page{display:contents!important;}
.chambers-grid,
.chambers-track{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:22px!important;
}
.chamber-card{
  min-height:230px!important;
  background:#05070b!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:24px!important;
  box-shadow:0 16px 38px rgba(0,0,0,.20)!important;
  padding:22px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  color:#ffffff!important;
  overflow:hidden!important;
}
.chamber-card > span{display:none!important;}
.chamber-logo{
  width:112px!important;
  height:86px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 auto 18px!important;
  overflow:hidden!important;
}
.chamber-logo img{
  width:96px!important;
  height:66px!important;
  object-fit:contain!important;
}
.chamber-card strong{
  color:#ffffff!important;
  font-size:16px!important;
  line-height:1.38!important;
  font-weight:700!important;
}
.chambers-section .strip-arrow{display:none!important;}

/* Responsive */
@media(max-width:1280px){
  .visual-sector-grid,.visual-strip-track{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .chambers-grid,.chambers-track{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:920px){
  .visual-sector-grid,.visual-strip-track{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .chambers-grid,.chambers-track{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .chambers-inner h2{white-space:normal!important;}
}
@media(max-width:560px){
  .key-damier-card{flex-basis:100%!important;width:100%!important;}
  .visual-sector-grid,.visual-strip-track{grid-template-columns:1fr!important;}
  .chambers-grid,.chambers-track{grid-template-columns:1fr!important;}
  .visual-sector-card{aspect-ratio:auto!important;min-height:230px!important;}
}

/* V21 final micro-correction : titre Chiffres clés aligné sur le style Portage Institutionnel */
.key-damier-head h2{
  background:#082450!important;
  color:#ffffff!important;
  border-radius:0!important;
}

/* =========================================================
   S2IA — RESTITUTION FIDÈLE PORTAGE / CHIFFRES / SECTEURS
   ========================================================= */

/* Portage institutionnel : comme la référence, bleu profond + titre bandeau + cartes blanches horizontales */
.institutional-vignettes{
  background:#1258ad!important;
  padding:54px 5vw 78px!important;
  overflow:hidden!important;
}
.institutional-vignettes-inner{
  width:min(100%,1680px)!important;
  margin:0 auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.institutional-vignettes-inner:before{display:none!important;}
.institutional-vignettes h2{
  display:inline-flex!important;
  align-items:center!important;
  gap:24px!important;
  margin:0 0 38px!important;
  padding:26px 44px!important;
  background:#071f46!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(42px,4.3vw,72px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.institutional-vignettes h2:after{
  content:''!important;
  display:block!important;
  width:220px!important;
  height:5px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#0d4da8 0%,#f26722 45%,#f2c14b 70%,#2e8b36 100%)!important;
}
.institution-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
.institution-card{
  min-height:118px!important;
  padding:16px 20px!important;
  border-radius:26px!important;
  background:#ffffff!important;
  border:0!important;
  box-shadow:0 18px 40px rgba(3,15,45,.18)!important;
  display:grid!important;
  grid-template-columns:94px minmax(0,1fr)!important;
  align-items:center!important;
  gap:16px!important;
  text-align:left!important;
}
.institution-logo-box{
  width:94px!important;
  height:84px!important;
  min-height:84px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
}
.institution-logo-box img{
  width:88px!important;
  height:72px!important;
  max-width:88px!important;
  max-height:72px!important;
  object-fit:contain!important;
  object-position:center!important;
}
.institution-card h3{
  display:block!important;
  margin:0!important;
  color:#061f46!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(15px,1.12vw,22px)!important;
  line-height:1.22!important;
  font-weight:900!important;
  text-align:left!important;
}

/* Chiffres clés : photo d’illustration au-dessus + bande bleu marine conforme à la référence */
.s2ia-key-figures-block{
  background:#ffffff!important;
  padding:58px 0 0!important;
}
.key-figures-photo{
  width:min(92vw,1680px)!important;
  margin:0 auto 34px!important;
  height:390px!important;
  border-radius:32px!important;
  overflow:hidden!important;
  box-shadow:0 24px 58px rgba(6,26,67,.14)!important;
}
.key-figures-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
.figures-strip-reference{
  background:#061f42!important;
  padding:22px 4vw 26px!important;
  color:#ffffff!important;
}
.figures-strip-heading{
  width:min(100%,1480px)!important;
  margin:0 auto 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:30px!important;
  text-transform:uppercase!important;
}
.figures-strip-heading span{
  display:block!important;
  width:170px!important;
  height:3px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#2e8b36 0%,#f2c14b 45%,#f26722 100%)!important;
}
.figures-strip-heading strong{
  color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(17px,1.25vw,24px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
.figures-reference-row{
  width:min(100%,1680px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:0!important;
}
.figure-reference-item{
  min-height:118px!important;
  padding:4px 16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-right:1px solid rgba(255,255,255,.45)!important;
}
.figure-reference-item:last-child{border-right:0!important;}
.figure-reference-icon{
  width:36px!important;
  height:36px!important;
  margin:0 0 6px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.figure-reference-icon img{
  width:34px!important;
  height:34px!important;
  object-fit:contain!important;
}
.figure-reference-item strong{
  display:block!important;
  margin:0 0 4px!important;
  color:#4dbc36!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(28px,2.3vw,48px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}
.figure-reference-item.is-orange strong,
.figure-reference-item:nth-child(8) strong{
  color:#ff6b18!important;
}
.figure-reference-item small{
  display:block!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(12px,.9vw,16px)!important;
  line-height:1.16!important;
  font-weight:700!important;
}

/* Secteurs industriels exposants : ligne de cartes image haut + bande texte bas, comme la référence */
.s2ia-sectors-reference{
  padding:58px 3.8vw 70px!important;
  background:#ffffff!important;
  overflow:hidden!important;
}
.s2ia-sectors-reference h2{
  margin:0 auto 30px!important;
  color:#061f46!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(30px,3.4vw,58px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  text-align:center!important;
  letter-spacing:-.03em!important;
}
.sectors-reference-wrap{
  width:min(100%,1740px)!important;
  margin:0 auto!important;
  position:relative!important;
  padding:0 60px!important;
}
.sectors-reference-track{
  display:flex!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  padding:4px 2px 16px!important;
}
.sectors-reference-track::-webkit-scrollbar{display:none!important;}
.sector-reference-card{
  flex:0 0 148px!important;
  min-height:188px!important;
  border-radius:12px!important;
  border:2px solid #e0e6ee!important;
  background:#fff!important;
  box-shadow:0 10px 22px rgba(6,26,67,.10)!important;
  overflow:hidden!important;
  scroll-snap-align:start!important;
}
.sector-reference-card figure{
  margin:0!important;
  height:128px!important;
  background:#eef3f8!important;
  overflow:hidden!important;
}
.sector-reference-card figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.sector-reference-title{
  min-height:58px!important;
  padding:8px 8px 9px!important;
  color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:13px!important;
  line-height:1.12!important;
  font-weight:850!important;
  text-align:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.sector-reference-card.tone-1 .sector-reference-title{background:#2e8b36!important;}
.sector-reference-card.tone-2 .sector-reference-title{background:#f26722!important;}
.sector-reference-card.tone-3 .sector-reference-title{background:#0d4da8!important;}
.sector-reference-card.tone-4 .sector-reference-title{background:#9a5f1f!important;}
.sectors-ref-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  border:0!important;
  background:#0f873d!important;
  color:#ffffff!important;
  font-size:34px!important;
  line-height:1!important;
  font-weight:950!important;
  z-index:5!important;
  box-shadow:0 12px 26px rgba(0,0,0,.18)!important;
  cursor:pointer!important;
}
.sectors-ref-prev{left:0!important;}
.sectors-ref-next{right:0!important;}

/* Popups : fonctionnement + présentation stable */
.form-feedback{
  margin:0 0 18px!important;
  padding:14px 16px!important;
  border-radius:16px!important;
  font-weight:850!important;
  line-height:1.45!important;
}
.form-feedback.is-loading{background:#eef5ff!important;color:#0d4da8!important;border:1px solid #cfe0f6!important;}
.form-feedback.is-success{background:#e9f9ee!important;color:#117935!important;border:1px solid #bdebc9!important;}
.form-feedback.is-error{background:#fff0ec!important;color:#c7321f!important;border:1px solid #ffd0c4!important;}
.modal-submit:disabled{opacity:.72!important;cursor:wait!important;}
.premium-modal.is-open{display:grid!important;place-items:center!important;}
.premium-modal .modal-card{max-height:92vh!important;overflow:hidden!important;}
.premium-modal .modal-form-panel{overflow-y:auto!important;}

/* Responsive */
@media(max-width:1360px){
  .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .figures-reference-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;}
  .figure-reference-item{border:1px solid rgba(255,255,255,.16)!important;border-radius:14px!important;background:rgba(255,255,255,.035)!important;}
}
@media(max-width:780px){
  .institutional-vignettes h2{width:100%!important;font-size:38px!important;justify-content:center!important;}
  .institutional-vignettes h2:after{display:none!important;}
  .institution-grid{grid-template-columns:1fr!important;}
  .figures-reference-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .figures-strip-heading span{display:none!important;}
  .key-figures-photo{height:290px!important;}
  .sectors-reference-wrap{padding:0 46px!important;}
  .sector-reference-card{flex-basis:138px!important;}
  .sectors-ref-arrow{width:40px!important;height:40px!important;font-size:28px!important;}
}
@media(max-width:520px){
  .institution-card{grid-template-columns:72px minmax(0,1fr)!important;gap:10px!important;}
  .institution-logo-box{width:72px!important;height:64px!important;min-height:64px!important;}
  .institution-logo-box img{width:68px!important;height:56px!important;}
  .figures-reference-row{grid-template-columns:1fr!important;}
}


/* =========================================================
   S2IA — REPRISE PROPRE DEMANDÉE : Chiffres clés + Portage
   ========================================================= */

/* Suppression visuelle des anciennes zones non utilisées */
.s2ia-key-figures-block,
.s2ia-sectors-reference,
.s2ia-key-figures-strip,
.s2ia-sectors-premium{
  display:none!important;
}

/* Chiffres clés : fond noir, titre blanc, 8 vignettes en 4 x 2 */
.s2ia-keyfig-black{
  background:
    radial-gradient(circle at 12% 0%, rgba(46,139,54,.16), transparent 24%),
    radial-gradient(circle at 88% 0%, rgba(242,103,34,.14), transparent 26%),
    linear-gradient(135deg,#05070b 0%,#111820 48%,#07090d 100%)!important;
  padding:62px 5vw 72px!important;
  color:#fff!important;
  overflow:hidden!important;
}
.s2ia-keyfig-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
}
.s2ia-section-title-dark{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:28px!important;
  margin:0 auto 42px!important;
  text-align:center!important;
}
.s2ia-section-title-dark span{
  display:block!important;
  width:min(18vw,210px)!important;
  height:4px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#2e8b36 0%,#f2b500 45%,#f26722 100%)!important;
}
.s2ia-section-title-dark h2{
  margin:0!important;
  color:#ffffff!important;
  font-size:clamp(34px,3vw,58px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  text-shadow:0 8px 20px rgba(0,0,0,.38)!important;
}
.keyfig-grid-premium{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
.keyfig-premium-card{
  min-height:238px!important;
  border-radius:30px!important;
  background:#ffffff!important;
  color:#000!important;
  padding:26px 20px 24px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  box-shadow:0 24px 60px rgba(0,0,0,.28)!important;
  border:1px solid rgba(255,255,255,.65)!important;
  position:relative!important;
  overflow:hidden!important;
}
.keyfig-premium-card:before{
  content:''!important;
  position:absolute!important;
  inset:0 0 auto 0!important;
  height:8px!important;
  background:linear-gradient(90deg,#0d4da8 0%,#f26722 50%,#2e8b36 100%)!important;
}
.keyfig-premium-icon{
  width:92px!important;
  height:92px!important;
  margin:0 auto 18px!important;
  border-radius:24px!important;
  background:#f3f7fb!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:inset 0 0 0 1px #e0e8f3!important;
}
.keyfig-premium-icon img{
  width:70px!important;
  height:70px!important;
  object-fit:contain!important;
}
.keyfig-premium-card strong{
  display:block!important;
  margin:0 0 10px!important;
  color:#000!important;
  font-size:clamp(34px,2.8vw,54px)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}
.keyfig-premium-card p{
  margin:0!important;
  color:#000!important;
  font-size:clamp(16px,1.2vw,22px)!important;
  line-height:1.28!important;
  font-weight:800!important;
}

/* Portage institutionnel : fond gris clair + format pilule comme la référence */
.institutional-clean-section{
  background:#e9e9e9!important;
  padding:64px 5vw 76px!important;
}
.institutional-clean-inner{
  width:min(100%,1540px)!important;
  margin:0 auto!important;
}
.institutional-clean-title{
  margin:0 auto 34px!important;
  text-align:center!important;
}
.institutional-clean-title h2{
  margin:0!important;
  color:#0a1d3f!important;
  font-size:clamp(34px,3vw,58px)!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.institution-pill-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;
}
.institution-pill-card{
  min-height:132px!important;
  background:#ffffff!important;
  border-radius:28px!important;
  padding:18px 28px!important;
  display:grid!important;
  grid-template-columns:128px minmax(0,1fr)!important;
  gap:24px!important;
  align-items:center!important;
  box-shadow:0 18px 40px rgba(6,26,67,.10)!important;
  border:1px solid #dbe5f3!important;
}
.institution-pill-card:nth-child(5){
  grid-column:1 / -1!important;
  width:min(100%,760px)!important;
  margin:0 auto!important;
}
.institution-pill-logo{
  width:128px!important;
  height:92px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.institution-pill-logo img{
  width:116px!important;
  height:86px!important;
  max-width:116px!important;
  max-height:86px!important;
  object-fit:contain!important;
}
.institution-pill-text{
  min-width:0!important;
  text-align:left!important;
}
.institution-pill-text h3{
  margin:0!important;
  color:#000!important;
  font-size:clamp(21px,1.55vw,30px)!important;
  line-height:1.18!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}

/* Responsivité */
@media(max-width:1180px){
  .keyfig-grid-premium{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .institution-pill-grid{
    grid-template-columns:1fr!important;
  }
  .institution-pill-card:nth-child(5){
    width:100%!important;
  }
}
@media(max-width:640px){
  .s2ia-keyfig-black,
  .institutional-clean-section{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .s2ia-section-title-dark{
    gap:14px!important;
  }
  .s2ia-section-title-dark span{
    width:70px!important;
  }
  .keyfig-grid-premium{
    grid-template-columns:1fr!important;
  }
  .keyfig-premium-card{
    min-height:210px!important;
  }
  .institution-pill-card{
    grid-template-columns:1fr!important;
    text-align:center!important;
    padding:24px 20px!important;
  }
  .institution-pill-logo{
    margin:0 auto!important;
  }
  .institution-pill-text{
    text-align:center!important;
  }
}


/* =========================================================
   S2IA — Ajustements demandés : tailles + admin complet
   ========================================================= */

/* Réduction des trois titres demandés */
.patronage-main-title,
.institutional-clean-title h2{
  font-size:clamp(26px,2.15vw,38px)!important;
  line-height:1.14!important;
  font-weight:850!important;
}
.patronage-identity-text h3{
  font-size:clamp(24px,2vw,34px)!important;
  line-height:1.16!important;
  font-weight:850!important;
}
.patronage-identity-text .president-function,
.patronage-identity-text .president-country{
  font-size:clamp(17px,1.25vw,22px)!important;
  line-height:1.35!important;
  font-weight:500!important;
}

/* Texte d’accueil demandé : Verdana 17, plus grand, pas gras */
.president-message-card p{
  font-family:Verdana,Arial,sans-serif!important;
  font-size:17px!important;
  line-height:1.85!important;
  font-weight:400!important;
  text-align:justify!important;
  color:#233b65!important;
}

/* Chiffres clés : vignettes un peu réduites + image ou pictogramme dans Admin */
.s2ia-keyfig-black{
  padding:54px 5vw 62px!important;
}
.keyfig-grid-premium{
  gap:18px!important;
}
.keyfig-premium-card{
  min-height:210px!important;
  padding:22px 18px 20px!important;
  border-radius:26px!important;
}
.keyfig-premium-icon{
  width:78px!important;
  height:78px!important;
  margin-bottom:14px!important;
}
.keyfig-premium-icon img{
  width:62px!important;
  height:62px!important;
  object-fit:contain!important;
}
.keyfig-premium-card strong{
  font-size:clamp(28px,2.35vw,44px)!important;
}
.keyfig-premium-card p{
  font-size:clamp(15px,1.05vw,19px)!important;
}

/* Portage institutionnel : une seule ligne + pastilles */
.institutional-clean-section{
  background:#e9e9e9!important;
  padding:54px 4vw 62px!important;
}
.institutional-clean-inner{
  width:min(100%,1680px)!important;
}
.institution-carousel-wrap{
  position:relative!important;
}
.institution-pill-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:4px 2px 18px!important;
}
.institution-pill-grid::-webkit-scrollbar{
  display:none!important;
}
.institution-pill-card{
  flex:0 0 calc((100% - 72px) / 5)!important;
  min-height:132px!important;
  padding:18px 20px!important;
  display:grid!important;
  grid-template-columns:105px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:center!important;
  border-radius:26px!important;
  scroll-snap-align:start!important;
}
.institution-pill-card:nth-child(5){
  grid-column:auto!important;
  width:auto!important;
  margin:0!important;
}
.institution-pill-logo{
  width:105px!important;
  height:82px!important;
}
.institution-pill-logo img{
  width:100px!important;
  height:76px!important;
  max-width:100px!important;
  max-height:76px!important;
  object-fit:contain!important;
}
.institution-pill-text h3{
  font-size:clamp(17px,1.18vw,23px)!important;
  line-height:1.18!important;
  font-weight:850!important;
}
.institution-dots{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin-top:14px!important;
}
.institution-dot{
  width:12px!important;
  height:12px!important;
  border:0!important;
  border-radius:999px!important;
  background:#b8c2d2!important;
  cursor:pointer!important;
  padding:0!important;
  transition:.2s ease!important;
}
.institution-dot.is-active{
  width:34px!important;
  background:#0d4da8!important;
}

/* Admin preview images */
.table-icon{
  width:58px!important;
  height:58px!important;
  object-fit:contain!important;
  background:#fff!important;
  border:1px solid #e1e9f5!important;
  border-radius:14px!important;
  padding:6px!important;
}
.icon-preview{
  width:96px!important;
  height:96px!important;
  object-fit:contain!important;
  background:#fff!important;
  border:1px solid #e1e9f5!important;
  border-radius:16px!important;
  padding:8px!important;
}
.checkline{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:48px!important;
  color:#0a2a61!important;
  font-weight:900!important;
}
.checkline input{
  width:18px!important;
  height:18px!important;
}

@media(max-width:1280px){
  .institution-pill-card{
    flex-basis:calc((100% - 36px) / 3)!important;
  }
}
@media(max-width:860px){
  .institution-pill-card{
    flex-basis:calc((100% - 18px) / 2)!important;
  }
}
@media(max-width:560px){
  .institution-pill-card{
    flex-basis:100%!important;
    grid-template-columns:1fr!important;
    text-align:center!important;
  }
  .institution-pill-logo{
    margin:0 auto!important;
  }
}


/* =========================================================
   S2IA — Correction Portage institutionnel : texte sous logo
   ========================================================= */
.institution-pill-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:4px 2px 18px!important;
}
.institution-pill-grid::-webkit-scrollbar{
  display:none!important;
}
.institution-pill-card{
  flex:0 0 calc((100% - 72px) / 5)!important;
  min-height:240px!important;
  padding:24px 18px 22px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
  text-align:center!important;
  border-radius:28px!important;
}
.institution-pill-card:nth-child(5){
  grid-column:auto!important;
  width:auto!important;
  margin:0!important;
}
.institution-pill-logo{
  width:128px!important;
  height:92px!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.institution-pill-logo img{
  width:116px!important;
  height:86px!important;
  max-width:116px!important;
  max-height:86px!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.institution-pill-text{
  width:100%!important;
  min-width:0!important;
  text-align:center!important;
}
.institution-pill-text h3{
  margin:0!important;
  color:#000!important;
  font-size:clamp(16px,1.05vw,20px)!important;
  line-height:1.18!important;
  font-weight:850!important;
  text-align:center!important;
  letter-spacing:0!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
@media(max-width:1280px){
  .institution-pill-card{
    flex-basis:calc((100% - 36px) / 3)!important;
  }
}
@media(max-width:860px){
  .institution-pill-card{
    flex-basis:calc((100% - 18px) / 2)!important;
  }
}
@media(max-width:560px){
  .institution-pill-card{
    flex-basis:100%!important;
    min-height:220px!important;
  }
}


/* =========================================================
   S2IA — Portage institutionnel : logos agrandis et centrés
   ========================================================= */
.institution-pill-card{
  flex:0 0 calc((100% - 72px) / 5)!important;
  min-height:285px!important;
  padding:26px 18px 24px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  gap:0!important;
  border-radius:28px!important;
}
.institution-pill-logo{
  width:190px!important;
  height:142px!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
}
.institution-pill-logo img{
  width:178px!important;
  height:132px!important;
  max-width:178px!important;
  max-height:132px!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  margin:0 auto!important;
}
.institution-pill-text{
  width:100%!important;
  margin-top:auto!important;
  padding-top:18px!important;
  text-align:center!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
}
.institution-pill-text h3{
  width:100%!important;
  margin:0!important;
  color:#000!important;
  font-size:clamp(15px,1vw,19px)!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-align:center!important;
  letter-spacing:0!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
@media(max-width:1280px){
  .institution-pill-card{
    flex-basis:calc((100% - 36px) / 3)!important;
  }
}
@media(max-width:860px){
  .institution-pill-card{
    flex-basis:calc((100% - 18px) / 2)!important;
  }
}
@media(max-width:560px){
  .institution-pill-card{
    flex-basis:100%!important;
    min-height:265px!important;
  }
  .institution-pill-logo{
    width:175px!important;
    height:130px!important;
  }
  .institution-pill-logo img{
    width:165px!important;
    height:122px!important;
  }
}


/* =========================================================
   S2IA — Chiffres clés : images HD à la place des pictogrammes
   ========================================================= */
.keyfig-premium-card{
  min-height:285px!important;
  padding:0 0 22px!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
}
.keyfig-premium-card:before{
  z-index:3!important;
}
.keyfig-premium-icon{
  width:100%!important;
  height:128px!important;
  margin:0 0 18px!important;
  border-radius:0!important;
  background:#f3f7fb!important;
  box-shadow:none!important;
  overflow:hidden!important;
  display:block!important;
}
.keyfig-premium-icon img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
.keyfig-premium-card strong,
.keyfig-premium-card p{
  padding-left:18px!important;
  padding-right:18px!important;
}
@media(max-width:640px){
  .keyfig-premium-card{
    min-height:260px!important;
  }
  .keyfig-premium-icon{
    height:116px!important;
  }
}


/* =========================================================
   S2IA V26 — Présentation + secteurs + harmonisation titres
   ========================================================= */

/* Couleurs des valeurs chiffres clés tirées du logo */
.keyfig-color-1,
.keyfig-color-3,
.keyfig-color-6{
  color:#0d4da8!important;
}
.keyfig-color-2,
.keyfig-color-5,
.keyfig-color-8{
  color:#2e8b36!important;
}
.keyfig-color-4,
.keyfig-color-7{
  color:#f26722!important;
}

/* Titre Chiffres clés au même esprit que Haut Patronage / Portage */
.s2ia-section-title-dark h2{
  font-size:clamp(26px,2.15vw,38px)!important;
  line-height:1.14!important;
  font-weight:850!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-shadow:none!important;
}
.s2ia-section-title-dark{
  gap:22px!important;
  margin-bottom:30px!important;
}
.s2ia-section-title-dark span{
  width:min(13vw,150px)!important;
  height:3px!important;
}

/* Présentation du Salon */
.salon-presentation-section{
  background:#ffffff!important;
  padding:70px 4vw 78px!important;
  overflow:hidden!important;
}
.salon-presentation-inner{
  width:min(100%,1620px)!important;
  margin:0 auto!important;
}
.salon-presentation-head{
  text-align:center!important;
  margin:0 auto 34px!important;
}
.salon-presentation-head h2{
  margin:0 0 12px!important;
  color:#071f46!important;
  font-size:clamp(28px,2.6vw,46px)!important;
  line-height:1.08!important;
  font-weight:950!important;
}
.salon-presentation-head h3{
  margin:0!important;
  color:#f26722!important;
  font-size:clamp(24px,2.2vw,40px)!important;
  line-height:1.15!important;
  font-weight:900!important;
}
.salon-presentation-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.28fr) minmax(260px,.72fr) minmax(310px,.82fr)!important;
  gap:26px!important;
  align-items:stretch!important;
}
.salon-presentation-text,
.salon-presentation-logo,
.salon-audience-panel{
  border-radius:34px!important;
  box-shadow:0 22px 55px rgba(6,26,67,.10)!important;
}
.salon-presentation-text{
  background:#f8fbff!important;
  border:1px solid #dfe9f6!important;
  padding:34px 34px!important;
  display:flex!important;
  align-items:center!important;
}
.salon-presentation-text p{
  margin:0!important;
  color:#1f355d!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:16px!important;
  line-height:1.86!important;
  font-weight:400!important;
  text-align:justify!important;
}
.salon-presentation-logo{
  background:
    radial-gradient(circle at 20% 10%,rgba(242,103,34,.13),transparent 35%),
    radial-gradient(circle at 80% 85%,rgba(46,139,54,.13),transparent 36%),
    #ffffff!important;
  border:1px solid #dfe9f6!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:420px!important;
  padding:30px!important;
}
.salon-presentation-logo img{
  width:min(100%,390px)!important;
  max-height:280px!important;
  object-fit:contain!important;
  display:block!important;
}
.salon-audience-panel{
  display:grid!important;
  grid-template-rows:1fr 1fr!important;
  gap:22px!important;
  background:#071f46!important;
  padding:24px!important;
}
.audience-card{
  position:relative!important;
  border-radius:26px!important;
  padding:28px 26px 24px!important;
  color:#ffffff!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#0d4da8 0%,#092a61 100%)!important;
}
.audience-card:before{
  content:''!important;
  position:absolute!important;
  right:-42px!important;
  top:-42px!important;
  width:135px!important;
  height:135px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.11)!important;
}
.exhibitor-card{
  background:linear-gradient(135deg,#f26722 0%,#c94412 100%)!important;
}
.audience-card span{
  display:inline-flex!important;
  width:42px!important;
  height:42px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#ffffff!important;
  color:#071f46!important;
  font-size:16px!important;
  font-weight:950!important;
  margin-bottom:15px!important;
}
.audience-card h4{
  position:relative!important;
  margin:0 0 10px!important;
  color:#ffffff!important;
  font-size:clamp(24px,1.7vw,34px)!important;
  line-height:1.05!important;
  font-weight:950!important;
}
.audience-card p{
  position:relative!important;
  margin:0 0 18px!important;
  color:rgba(255,255,255,.92)!important;
  font-size:15px!important;
  line-height:1.5!important;
  font-weight:650!important;
}
.audience-btn{
  position:relative!important;
  border:0!important;
  border-radius:999px!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  font-size:15px!important;
  font-weight:950!important;
  padding:13px 20px!important;
  cursor:pointer!important;
  box-shadow:0 12px 24px rgba(0,0,0,.20)!important;
}
.audience-btn.secondary{
  color:#f26722!important;
}

/* Secteurs exposants : même esprit que les chiffres clés */
.s2ia-sector-black-grid{
  background:
    radial-gradient(circle at 8% 0%,rgba(13,77,168,.22),transparent 25%),
    radial-gradient(circle at 92% 0%,rgba(46,139,54,.18),transparent 25%),
    linear-gradient(135deg,#05070b 0%,#111820 48%,#07090d 100%)!important;
  padding:64px 5vw 76px!important;
}
.s2ia-sector-inner{
  width:min(100%,1580px)!important;
  margin:0 auto!important;
}
.sector-title-dark h2{
  color:#ffffff!important;
}
.sector-black-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:22px!important;
}
.sector-black-card{
  min-height:238px!important;
  border-radius:30px!important;
  background:#ffffff!important;
  color:#000!important;
  overflow:hidden!important;
  box-shadow:0 24px 60px rgba(0,0,0,.28)!important;
  border:1px solid rgba(255,255,255,.65)!important;
  position:relative!important;
}
.sector-black-card:before{
  content:''!important;
  position:absolute!important;
  inset:0 0 auto 0!important;
  height:8px!important;
  background:linear-gradient(90deg,#0d4da8 0%,#f26722 50%,#2e8b36 100%)!important;
  z-index:2!important;
}
.sector-black-visual{
  height:132px!important;
  width:100%!important;
  overflow:hidden!important;
  background:#f3f7fb!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.sector-black-card h3{
  margin:0!important;
  min-height:98px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px 18px!important;
  color:#000!important;
  font-size:clamp(16px,1.1vw,21px)!important;
  line-height:1.22!important;
  font-weight:850!important;
  text-align:center!important;
}

/* Responsive */
@media(max-width:1280px){
  .salon-presentation-grid{
    grid-template-columns:1fr!important;
  }
  .salon-presentation-logo{
    min-height:280px!important;
  }
  .salon-audience-panel{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto!important;
  }
  .sector-black-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:720px){
  .salon-audience-panel{
    grid-template-columns:1fr!important;
  }
  .sector-black-grid{
    grid-template-columns:1fr!important;
  }
  .salon-presentation-text{
    padding:24px 20px!important;
  }
}


/* =========================================================
   S2IA V27 — Présentation : logo supprimé, texte étendu, champs réduits
   ========================================================= */
.salon-presentation-grid{
  grid-template-columns:minmax(0,2.25fr) minmax(300px,.75fr)!important;
  gap:28px!important;
  align-items:start!important;
}
.salon-presentation-text{
  min-height:auto!important;
  padding:36px 40px!important;
}
.salon-presentation-text p{
  font-family:Verdana,Arial,sans-serif!important;
  font-size:17px!important;
  line-height:1.82!important;
  font-weight:400!important;
  text-align:justify!important;
}
.salon-presentation-logo{
  display:none!important;
}
.salon-audience-panel{
  align-self:start!important;
  display:grid!important;
  grid-template-rows:auto auto auto!important;
  gap:16px!important;
  padding:18px!important;
}
.audience-card{
  min-height:auto!important;
  padding:18px 18px 17px!important;
  border-radius:22px!important;
}
.audience-card span{
  width:34px!important;
  height:34px!important;
  font-size:14px!important;
  margin-bottom:10px!important;
}
.audience-card h4{
  font-size:clamp(20px,1.32vw,26px)!important;
  line-height:1.08!important;
  margin-bottom:8px!important;
}
.audience-card p{
  font-size:14px!important;
  line-height:1.42!important;
  margin-bottom:13px!important;
}
.audience-btn{
  padding:10px 16px!important;
  font-size:14px!important;
}
.salon-audience-extra{
  background:#ffffff!important;
  color:#071f46!important;
  border-radius:22px!important;
  padding:18px!important;
  border:1px solid rgba(255,255,255,.45)!important;
  box-shadow:0 12px 26px rgba(0,0,0,.18)!important;
}
.salon-audience-extra h4{
  margin:0 0 8px!important;
  color:#0d4da8!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:950!important;
}
.salon-audience-extra p{
  margin:0!important;
  color:#243b63!important;
  font-size:14px!important;
  line-height:1.48!important;
  font-weight:650!important;
}
@media(max-width:1280px){
  .salon-presentation-grid{
    grid-template-columns:1fr!important;
  }
  .salon-audience-panel{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto auto!important;
  }
  .salon-audience-extra{
    grid-column:1 / -1!important;
  }
}
@media(max-width:720px){
  .salon-audience-panel{
    grid-template-columns:1fr!important;
  }
  .salon-audience-extra{
    grid-column:auto!important;
  }
  .salon-presentation-text{
    padding:26px 22px!important;
  }
}

/* =========================================================
   S2IA V28 CLEAN — Responsive + popups + sections demandées
   Base : V27 validée, corrections ciblées uniquement
   ========================================================= */
:root{--s2ia-blue:#0d4da8;--s2ia-navy:#061a43;--s2ia-orange:#f26722;--s2ia-green:#2e8b36;--s2ia-red:#ef1224;}
html,body{max-width:100%;overflow-x:hidden!important;}
img{max-width:100%;height:auto;}

/* 1 / 3 — Header responsive TV, grands écrans et desktop : espacements non collés */
.site-header{background:#fff!important;z-index:1100!important;}
.site-header .top-shell{
  width:min(100%,1760px)!important;
  min-height:86px!important;
  padding:10px clamp(18px,2.2vw,42px)!important;
  display:grid!important;
  grid-template-columns:minmax(250px,340px) minmax(0,1fr) 58px!important;
  align-items:center!important;
  gap:clamp(18px,2vw,38px)!important;
}
.site-header .brand{justify-content:flex-start!important;min-width:0!important;}
.site-header .brand img{width:clamp(230px,16vw,320px)!important;height:70px!important;object-fit:contain!important;}
.site-header .main-nav{display:flex!important;justify-content:center!important;align-items:center!important;flex-wrap:nowrap!important;gap:clamp(16px,1.35vw,30px)!important;min-width:0!important;}
.site-header .main-nav a{font-size:clamp(14px,.92vw,18px)!important;line-height:1.1!important;white-space:nowrap!important;color:#050505!important;background:transparent!important;box-shadow:none!important;padding:0!important;border-radius:0!important;}
.site-header .main-nav a:hover,.site-header .main-nav a.is-active{color:var(--s2ia-red)!important;background:transparent!important;}
.site-header .nav-toggle{justify-self:end!important;width:54px!important;height:54px!important;border-radius:16px!important;background:#050505!important;}
.site-header .nav-toggle span{width:27px!important;height:4px!important;}

/* Slider : éviter étirement sur TV et grands écrans */
.slider-stage{width:100vw!important;height:auto!important;aspect-ratio:1920/755!important;max-height:min(78vh,820px)!important;min-height:360px!important;margin:0 calc(50% - 50vw)!important;background:#fff!important;overflow:hidden!important;box-shadow:none!important;}
.slide img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;background:#fff!important;}
@media(min-width:1900px){.slider-stage{max-height:820px!important}.slide img{object-fit:contain!important}}

/* 5 — Actions + nouveau compteur alignés sur la même ligne en desktop */
.hero-actions{width:100%!important;max-width:none!important;margin:0!important;padding:16px 3vw!important;background:#050505!important;}
.hero-actions-inner{width:min(100%,1740px)!important;margin:0 auto!important;display:grid!important;grid-template-columns:minmax(230px,.9fr) minmax(180px,.75fr) minmax(210px,.9fr) minmax(280px,1.05fr) minmax(430px,1.45fr)!important;gap:14px!important;align-items:center!important;justify-content:center!important;}
.action-pill,.action-button{width:100%!important;min-height:64px!important;border-radius:22px!important;font-size:clamp(16px,1vw,21px)!important;font-weight:950!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
.action-pill{background:#fff!important;color:#06326f!important;border:0!important;box-shadow:0 14px 30px rgba(0,0,0,.18)!important;}
.action-pill svg{width:26px!important;height:26px!important;margin-right:10px!important;fill:var(--s2ia-orange)!important;}
.action-button.btn-primary{background:#0d4da8!important;color:#fff!important;}
.action-button.btn-secondary{background:#f26722!important;color:#fff!important;}
.event-countdown{width:100%!important;min-height:64px!important;border-radius:20px!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important;padding:9px 12px!important;box-shadow:0 14px 30px rgba(0,0,0,.20)!important;}
.countdown-title{display:block!important;color:#06326f!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:13px!important;font-weight:950!important;white-space:nowrap!important;}
.countdown-grid{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;}
.flip-tile{width:62px!important;height:58px!important;border-radius:12px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;color:#fff!important;box-shadow:0 9px 18px rgba(0,0,0,.18)!important;}
.flip-tile:nth-child(1){background:#18a999!important}.flip-tile:nth-child(2){background:#0d4da8!important}.flip-tile:nth-child(3){background:#f26722!important}.flip-tile:nth-child(4){background:#2e8b36!important}.flip-tile:nth-child(5){background:#061a43!important}
.flip-tile b{font-size:27px!important;line-height:.95!important;color:#fff!important;}.flip-tile small{font-size:10px!important;line-height:1!important;font-weight:950!important;color:#fff!important;text-transform:uppercase!important;}

/* 4 — couleurs des chiffres clés tirées du logo */
.keyfig-color-1,.keyfig-color-3,.keyfig-color-6{color:#0d4da8!important;}
.keyfig-color-2,.keyfig-color-5{color:#2e8b36!important;}
.keyfig-color-4,.keyfig-color-7,.keyfig-color-8{color:#f26722!important;}
.s2ia-section-title-dark h2{font-size:clamp(28px,2.15vw,38px)!important;letter-spacing:.02em!important;}

/* 6 — Secteurs : image pleine hauteur, texte collé au bas du champ */
.sector-black-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;}
.sector-black-card{height:300px!important;min-height:300px!important;border-radius:28px!important;background:#061a43!important;overflow:hidden!important;position:relative!important;box-shadow:0 24px 60px rgba(0,0,0,.28)!important;}
.sector-black-card:before{z-index:4!important;}
.sector-black-visual{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:#061a43!important;}
.sector-black-visual img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:saturate(1.08) contrast(1.04)!important;}
.sector-black-card:after{content:''!important;position:absolute!important;inset:0!important;background:linear-gradient(180deg,rgba(6,26,67,.02),rgba(6,26,67,.18) 45%,rgba(6,26,67,.92) 100%)!important;z-index:2!important;}
.sector-black-card h3{position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:3!important;min-height:auto!important;margin:0!important;padding:18px 14px 20px!important;color:#fff!important;background:linear-gradient(180deg,rgba(6,26,67,0),rgba(6,26,67,.98))!important;font-size:clamp(15px,1vw,19px)!important;text-shadow:0 6px 18px rgba(0,0,0,.58)!important;}

/* 7 — Trois blocs stratégiques */
.strategic-cards-section{padding:58px 4vw 62px!important;background:#fff!important;}
.strategic-cards-inner{width:min(100%,1660px)!important;margin:0 auto!important;}
.strategic-cards-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;}
.strategic-card{background:#fff!important;border:1px solid #dfe7f4!important;border-radius:24px!important;padding:34px 34px 30px!important;box-shadow:0 18px 42px rgba(6,26,67,.10)!important;min-height:350px!important;display:flex!important;flex-direction:column!important;}
.strategic-icon{width:72px!important;height:72px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:34px!important;font-weight:950!important;margin-bottom:20px!important;}.strategic-icon.green{background:#2e8b36!important}.strategic-icon.orange{background:#f26722!important}
.strategic-card h3{color:#050505!important;font-size:clamp(23px,1.55vw,32px)!important;line-height:1.15!important;text-transform:uppercase!important;letter-spacing:.01em!important;margin:0 0 22px!important;}.strategic-card p,.strategic-card li{font-size:17px!important;line-height:1.65!important;color:#2c374a!important;font-weight:600!important}.strategic-card ul{padding:0;margin:0 0 20px;list-style:none}.strategic-card li{position:relative;padding-left:28px;margin:8px 0}.strategic-card li:before{content:'✓';position:absolute;left:0;color:#2e8b36;font-weight:950}
.learn-more{margin-top:auto!important;border:0!important;background:transparent!important;font-size:17px!important;font-weight:950!important;cursor:pointer!important;padding:0!important;text-align:left!important}.learn-more.green{color:#2e8b36!important}.learn-more.orange{color:#f26722!important}.learn-more span{font-size:26px!important;vertical-align:-2px!important;margin-left:8px!important;}

/* 8 — Architecture globale */
.event-architecture-section{padding:46px 4vw 56px!important;background:#fff!important;}
.event-architecture-inner,.event-pillars-inner{width:min(100%,1760px)!important;margin:0 auto!important;}.section-line-title{display:flex!important;align-items:center!important;justify-content:center!important;gap:30px!important;margin:0 0 30px!important;text-align:center!important}.section-line-title h2{font-size:clamp(24px,2.1vw,42px)!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#071f46!important;font-weight:950!important}.section-line-title span{width:min(16vw,230px)!important;height:3px!important}.orange-line{background:#f26722!important}.green-line{background:#2e8b36!important}
.architecture-row{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:16px!important}.architecture-row article{min-height:118px!important;border:1px solid #dfe7f4!important;border-radius:18px!important;background:#fff!important;box-shadow:0 14px 32px rgba(6,26,67,.08)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:16px!important;padding:16px!important}.architecture-row span{width:58px!important;height:58px!important;border-radius:50%!important;background:#f3f6fa!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:28px!important;color:#0d4da8!important}.architecture-row strong{font-size:15px!important;line-height:1.25!important;color:#071f46!important;text-align:left!important;}

/* 9 — Les grands piliers */
.event-pillars-section{padding:46px 4vw 62px!important;background:#fff!important;}.pillars-row{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:18px!important}.pillars-row article{height:150px!important;border-radius:18px!important;overflow:hidden!important;position:relative!important;background-image:linear-gradient(180deg,rgba(6,26,67,.25),rgba(6,26,67,.78)),var(--pillar-img)!important;background-size:cover!important;background-position:center!important;box-shadow:0 15px 36px rgba(6,26,67,.18)!important;border:3px solid #eef3fa!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;text-align:center!important;padding:14px!important}.pillars-row span{width:48px!important;height:48px!important;border-radius:50%!important;background:#061a43!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:24px!important;margin-bottom:10px!important}.pillars-row strong{color:#fff!important;font-size:14px!important;line-height:1.18!important;text-transform:uppercase!important;text-shadow:0 4px 12px rgba(0,0,0,.55)!important;}

/* 10 — Footer comme référence */
.s2ia-footer-pro{background:#fff!important;color:#111!important;padding:42px 4vw 0!important;border-top:1px solid #dde7f4!important}.footer-pro-inner{width:min(100%,1740px)!important;margin:0 auto!important;display:grid!important;grid-template-columns:1.2fr 1.5fr 1.25fr 1.15fr!important;gap:50px!important;align-items:start!important}.footer-logo{width:270px!important;background:transparent!important;border-radius:0!important;padding:0!important}.footer-socials{display:flex!important;gap:14px!important;margin-top:20px!important}.footer-socials a{width:44px!important;height:44px!important;border-radius:50%!important;border:2px solid #111!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#111!important;font-weight:950!important;font-size:18px!important}.s2ia-footer-pro h3{margin:0 0 18px!important;color:#111!important;text-transform:uppercase!important;font-size:17px!important;letter-spacing:.04em!important}.footer-links-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px 36px!important}.s2ia-footer-pro a,.s2ia-footer-pro p{color:#333!important;font-size:16px!important;line-height:1.45!important}.footer-info-block p{margin:0 0 13px!important}.footer-info-block span{color:#f26722!important;margin-right:8px!important}.newsletter-form{display:grid!important;grid-template-columns:minmax(0,1fr)70px!important;gap:14px!important}.newsletter-form input{height:60px!important;border:2px solid #bfd1e6!important;border-radius:10px!important;padding:0 18px!important;font-size:16px!important}.newsletter-form button{height:60px!important;border:0!important;border-radius:10px!important;background:#2e8b36!important;color:#fff!important;font-size:30px!important;font-weight:950!important;cursor:pointer!important}.footer-pro-bottom{width:100vw!important;margin:28px calc(50% - 50vw) 0!important;padding:14px 4vw!important;border-top:1px solid #dde7f4!important;display:flex!important;justify-content:space-between!important;gap:20px!important;color:#566274!important;font-size:14px!important}.footer-pro-bottom a{font-size:14px!important;color:#566274!important;display:inline!important;}

/* 11 — Devenir panéliste */
.panelist-callout{background:#fff!important;color:#071f46!important}.panelist-callout h4{color:#0d4da8!important}.panelist-callout p{color:#243b63!important}.panelist-btn{background:#0d4da8!important;color:#fff!important;}

/* 12 — Sous-titre coloré */
.salon-subtitle-colored .subtitle-red{color:#ef1224!important}.salon-subtitle-colored .subtitle-blue{color:#0d4da8!important}.salon-subtitle-colored .subtitle-black{color:#050505!important}
.salon-presentation-head h3{font-size:clamp(26px,2.4vw,44px)!important;}

/* Popups : hauts non coupés, logos visibles, mobile / TV */
.premium-modal{overflow-y:auto!important;overscroll-behavior:contain!important;}.premium-modal.is-open{display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:clamp(16px,3vh,36px) 16px!important;}.premium-modal .modal-card{width:min(1360px,94vw)!important;max-height:none!important;margin:0 auto!important;border-radius:28px!important;overflow:hidden!important}.premium-modal .modal-form-panel{max-height:calc(100dvh - 72px)!important;overflow-y:auto!important;padding:34px 38px!important}.premium-modal .modal-logo{display:block!important;width:220px!important;height:auto!important;object-fit:contain!important;margin:0 auto 18px!important}.premium-modal .modal-form-panel h2{text-align:center!important}.premium-modal .modal-intro{text-align:center!important}.info-modal .info-modal-card{display:block!important;width:min(980px,94vw)!important;background:#fff!important;padding:48px!important;border-radius:28px!important;color:#172540!important}.info-modal-card h2{font-size:clamp(32px,3vw,54px)!important;margin-bottom:22px!important}.info-modal-card p,.info-modal-card li{font-size:18px!important;line-height:1.75!important;color:#24344f!important}

@media(max-width:1500px){.hero-actions-inner{grid-template-columns:repeat(4,minmax(0,1fr))!important}.event-countdown{grid-column:1/-1!important;width:min(720px,100%)!important;margin:0 auto!important}.architecture-row,.pillars-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}.footer-pro-inner{grid-template-columns:1fr 1fr!important}}
@media(max-width:1180px){.site-header .top-shell{grid-template-columns:260px minmax(0,1fr)54px!important}.site-header .main-nav{gap:14px!important}.site-header .main-nav a{font-size:14px!important}.strategic-cards-grid{grid-template-columns:1fr!important}.salon-presentation-grid{grid-template-columns:1fr!important}.sector-black-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:980px){.site-header .top-shell{grid-template-columns:1fr 54px!important;min-height:76px!important}.site-header .brand img{width:240px!important;height:60px!important}.site-header .main-nav{display:none!important;position:absolute!important;left:14px!important;right:14px!important;top:calc(100% + 8px)!important;flex-direction:column!important;background:#fff!important;border:1px solid #dfe7f4!important;border-radius:18px!important;padding:14px!important;box-shadow:0 22px 58px rgba(6,26,67,.18)!important}.site-header .main-nav.is-open{display:flex!important}.site-header .main-nav a{width:100%!important;min-height:46px!important;justify-content:center!important;font-size:16px!important}.premium-modal .modal-card{grid-template-columns:1fr!important;width:min(820px,96vw)!important}.premium-modal .modal-visual{min-height:260px!important;max-height:300px!important}.premium-modal .modal-form-panel{max-height:none!important;overflow:visible!important}.architecture-row,.pillars-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.footer-pro-inner{grid-template-columns:1fr!important}.footer-pro-bottom{display:grid!important;text-align:center!important;justify-content:center!important}}
@media(max-width:760px){.slider-stage{min-height:0!important;height:auto!important;aspect-ratio:1920/755!important}.hero-actions{padding:18px 16px!important}.hero-actions-inner{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}.action-pill,.action-button{min-height:68px!important;border-radius:24px!important;font-size:20px!important}.event-countdown{grid-column:auto!important;min-height:78px!important;display:grid!important;gap:8px!important}.countdown-title{text-align:center!important}.countdown-grid{flex-wrap:wrap!important}.flip-tile{width:58px!important;height:56px!important}.salon-presentation-text p{font-size:17px!important;line-height:1.75!important}.sector-black-grid{grid-template-columns:1fr!important}.sector-black-card{height:280px!important}.architecture-row,.pillars-row{grid-template-columns:1fr!important}.premium-modal.is-open{padding:10px 8px!important}.premium-modal .modal-card{width:100%!important;border-radius:22px!important}.premium-modal .modal-visual{min-height:210px!important;max-height:230px!important;padding:20px!important}.premium-modal .modal-form-panel{padding:22px 16px 26px!important}.premium-modal .modal-logo{width:190px!important}.premium-modal .modal-form-panel h2{font-size:28px!important}.premium-modal .form-grid{grid-template-columns:1fr!important}.premium-modal input,.premium-modal select,.premium-modal textarea{min-height:54px!important;font-size:16px!important;border-radius:16px!important}.premium-modal .modal-submit{min-height:60px!important;font-size:17px!important;border-radius:18px!important}.footer-links-grid{grid-template-columns:1fr!important}.newsletter-form{grid-template-columns:1fr 64px!important}.s2ia-footer-pro{padding-left:22px!important;padding-right:22px!important}}


/* =========================================================
   S2IA V29 — Correctifs ciblés demandés
   Slider restauré, compteur compact, secteurs éclaircis, footer amélioré
   ========================================================= */

/* 1) Slider : retour au comportement stable, sans étirement déformant */
.hero-slider{
  margin:0!important;
  padding:0!important;
  background:#ffffff!important;
  line-height:0!important;
}
.slider-stage{
  position:relative!important;
  width:100vw!important;
  height:min(786px, calc(100vw * 786 / 1999))!important;
  min-height:340px!important;
  max-height:786px!important;
  aspect-ratio:1999/786!important;
  margin:0 calc(50% - 50vw)!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:#ffffff!important;
  box-shadow:0 18px 52px rgba(6,26,67,.18)!important;
}
.slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:#ffffff!important;
  filter:none!important;
  opacity:1!important;
}
@media(min-width:1800px){
  .slider-stage{
    height:786px!important;
  }
}

/* 2) Top menu : espacement correct sur grands écrans et TV */
.top-shell{
  max-width:1880px!important;
  grid-template-columns:minmax(280px,380px) minmax(0,1fr) 64px!important;
  gap:24px!important;
  padding:7px 34px!important;
}
.main-nav{
  gap:clamp(12px,1vw,24px)!important;
  flex-wrap:nowrap!important;
}
.main-nav a{
  white-space:nowrap!important;
  padding:0 clamp(12px,.9vw,20px)!important;
  min-height:38px!important;
  font-size:clamp(14px,.9vw,17px)!important;
}
.brand{
  justify-content:flex-start!important;
}
.brand img{
  width:clamp(260px,17vw,340px)!important;
  height:68px!important;
}
@media(max-width:1320px){
  .main-nav{
    gap:10px!important;
    flex-wrap:wrap!important;
  }
  .main-nav a{
    font-size:13.5px!important;
    padding:0 12px!important;
  }
}
@media(max-width:860px){
  .top-shell{
    grid-template-columns:minmax(180px,1fr) 56px!important;
  }
  .main-nav{
    display:none!important;
  }
  .brand img{
    width:230px!important;
    height:62px!important;
  }
}

/* 3) Actions + nouveau compteur compact, sans texte “temps restant” */
.hero-actions{
  background:#050505!important;
  padding:18px 22px!important;
}
.hero-actions-inner{
  width:min(100%,1780px)!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  flex-wrap:wrap!important;
}
.countdown-title{
  display:none!important;
}
.event-countdown{
  min-height:56px!important;
  padding:8px 12px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 14px 30px rgba(0,0,0,.25)!important;
  flex:0 1 auto!important;
}
.countdown-grid{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}
.flip-tile{
  width:56px!important;
  height:52px!important;
  border-radius:14px!important;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.14),0 8px 16px rgba(0,0,0,.16)!important;
}
.flip-tile b{
  font-size:22px!important;
  line-height:1!important;
}
.flip-tile small{
  font-size:8px!important;
  margin-top:4px!important;
}
@media(max-width:760px){
  .hero-actions-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .action-pill,
  .action-button{
    width:100%!important;
    min-height:62px!important;
    border-radius:22px!important;
    font-size:19px!important;
  }
  .event-countdown{
    width:100%!important;
    min-height:76px!important;
  }
  .countdown-grid{
    gap:7px!important;
  }
  .flip-tile{
    width:58px!important;
    height:58px!important;
  }
}

/* 4) Sous-titre présentation : une seule ligne sur desktop */
.salon-subtitle-colored{
  white-space:nowrap!important;
  text-align:center!important;
  line-height:1.12!important;
  font-size:clamp(24px,2.1vw,36px)!important;
}
@media(max-width:1100px){
  .salon-subtitle-colored{
    white-space:normal!important;
  }
}

/* 5) Secteurs industriels : format conservé, visuel éclairci, texte en bas */
.s2ia-sector-black-grid{
  background:linear-gradient(135deg,#061a43 0%,#071f46 55%,#0b2d63 100%)!important;
}
.sector-black-grid{
  gap:24px!important;
}
.sector-black-card{
  min-height:258px!important;
  background:#ffffff!important;
  border-radius:24px!important;
  overflow:hidden!important;
  position:relative!important;
  box-shadow:0 20px 48px rgba(0,0,0,.22)!important;
}
.sector-black-card:before{
  height:6px!important;
  z-index:4!important;
}
.sector-black-visual{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  background:#ffffff!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:brightness(1.15) contrast(1.03) saturate(1.08)!important;
  opacity:1!important;
}
.sector-black-card:after{
  content:''!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:42%!important;
  background:linear-gradient(180deg,rgba(3,14,34,0) 0%,rgba(3,14,34,.58) 45%,rgba(3,14,34,.82) 100%)!important;
  z-index:1!important;
  pointer-events:none!important;
}
.sector-black-card h3{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:3!important;
  min-height:70px!important;
  padding:14px 18px 18px!important;
  color:#ffffff!important;
  text-shadow:0 4px 12px rgba(0,0,0,.65)!important;
  font-size:clamp(15px,1.05vw,20px)!important;
  line-height:1.17!important;
  font-weight:950!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
}

/* 6) Popups : correction haut coupé et logo visible, sans changer le contenu */
.premium-modal{
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}
.premium-modal.is-open{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:clamp(14px,2.4vh,30px) 16px!important;
}
.premium-modal .modal-card{
  margin:0 auto!important;
  max-height:none!important;
  width:min(1320px,94vw)!important;
  overflow:hidden!important;
}
.premium-modal .modal-form-panel{
  max-height:calc(100dvh - 52px)!important;
  overflow-y:auto!important;
  padding-top:34px!important;
}
.premium-modal .modal-logo{
  display:block!important;
  width:220px!important;
  max-width:72%!important;
  height:auto!important;
  object-fit:contain!important;
  margin:0 auto 16px!important;
}
@media(max-width:920px){
  .premium-modal.is-open{
    padding:10px 8px!important;
  }
  .premium-modal .modal-card{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    border-radius:22px!important;
  }
  .premium-modal .modal-visual{
    min-height:210px!important;
    max-height:250px!important;
  }
  .premium-modal .modal-form-panel{
    max-height:none!important;
    overflow:visible!important;
    padding:24px 16px 28px!important;
  }
  .premium-modal .modal-logo{
    width:200px!important;
  }
  .premium-form .form-grid{
    grid-template-columns:1fr!important;
  }
}

/* 7) Footer : meilleure présentation des liens rapides et infos pratiques */
.s2ia-footer-pro{
  background:#ffffff!important;
  color:#071f46!important;
  padding:44px 4vw 0!important;
}
.footer-pro-inner{
  width:min(100%,1740px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:1.15fr 1.65fr 1.35fr 1.15fr!important;
  gap:48px!important;
  align-items:start!important;
}
.s2ia-footer-pro h3{
  color:#000!important;
  font-size:18px!important;
  letter-spacing:.04em!important;
  margin-bottom:18px!important;
}
.footer-links-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px 48px!important;
}
.footer-links-grid a{
  color:#111!important;
  font-size:17px!important;
  line-height:1.25!important;
}
.footer-info-block p{
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  color:#111!important;
  font-size:17px!important;
  line-height:1.45!important;
  margin:0 0 16px!important;
}
.footer-info-block p span{
  color:#f26722!important;
  font-size:20px!important;
  line-height:1.1!important;
  text-align:center!important;
}
.footer-info-block a{
  color:#111!important;
  font-size:17px!important;
}
.newsletter-form{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)58px!important;
  gap:12px!important;
  align-items:center!important;
}
.newsletter-form input{
  min-height:52px!important;
  border-radius:12px!important;
  border:2px solid #c8d9ef!important;
  padding:0 18px!important;
  font-size:16px!important;
}
.newsletter-form button{
  min-height:52px!important;
  border-radius:12px!important;
  background:#2e8b36!important;
  color:#fff!important;
  border:0!important;
  font-size:24px!important;
}
.footer-pro-bottom{
  border-top:1px solid #dfe8f5!important;
  margin-top:32px!important;
  padding:16px 0!important;
}
@media(max-width:1100px){
  .footer-pro-inner{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:700px){
  .footer-pro-inner{
    grid-template-columns:1fr!important;
  }
  .footer-links-grid{
    grid-template-columns:1fr!important;
  }
}

.footer-info-block em{font-style:normal;color:#111!important;}


/* =========================================================
   S2IA V30 — Ajustements ciblés demandés par le client
   Boutons desktop plus fins, slider mobile restauré,
   secteurs plus clairs, footer resserré, titre réduit.
   ========================================================= */

/* 1) Barre d’actions : desktop compact sur une seule ligne */
.hero-actions{padding:14px 18px!important;background:#050505!important;}
.hero-actions-inner{width:min(100%,1760px)!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:nowrap!important;}
.action-pill,.action-button{min-height:42px!important;border-radius:16px!important;font-size:14px!important;font-weight:900!important;padding:0 18px!important;line-height:1!important;box-shadow:none!important;}
.action-phone{flex:0 0 340px!important;justify-content:center!important;}
.action-email{flex:0 0 360px!important;justify-content:center!important;}
.action-button[data-modal-open="registerModal"],.hero-actions .btn-primary.action-button{flex:0 0 220px!important;}
.action-button[data-modal-open="standModal"],.hero-actions .btn-secondary.action-button{flex:0 0 280px!important;}
.action-pill svg{width:22px!important;height:22px!important;}
.action-pill span,.action-button{white-space:nowrap!important;}
.event-countdown{flex:0 0 auto!important;min-height:56px!important;padding:8px 12px!important;border-radius:16px!important;background:#ededed!important;box-shadow:none!important;}
.countdown-grid{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;flex-wrap:nowrap!important;}
.flip-tile{width:70px!important;height:64px!important;border-radius:16px!important;box-shadow:0 6px 14px rgba(0,0,0,.12)!important;}
.flip-tile b{font-size:24px!important;}
.flip-tile small{font-size:11px!important;margin-top:4px!important;}
@media (max-width:1500px){
  .hero-actions-inner{flex-wrap:wrap!important;}
  .action-phone,.action-email,.hero-actions .btn-primary.action-button,.hero-actions .btn-secondary.action-button{flex:0 1 auto!important;}
}
@media (max-width:760px){
  .hero-actions{padding:12px 14px!important;}
  .hero-actions-inner{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;flex-wrap:wrap!important;}
  .action-pill,.action-button{width:100%!important;min-height:58px!important;border-radius:20px!important;font-size:18px!important;padding:0 16px!important;}
  .action-phone,.action-email,.hero-actions .btn-primary.action-button,.hero-actions .btn-secondary.action-button{flex:auto!important;}
  .event-countdown{width:100%!important;padding:10px 8px!important;}
  .countdown-grid{gap:6px!important;justify-content:center!important;}
  .flip-tile{width:54px!important;height:54px!important;border-radius:14px!important;}
  .flip-tile b{font-size:22px!important;}
  .flip-tile small{font-size:8px!important;}
}

/* 2) Slider : mobile restauré, image entière visible, flèches nettes */
.slider-stage{background:#fff!important;}
.slide img{background:#fff!important;object-position:center center!important;}
.slider-arrow{display:flex!important;align-items:center!important;justify-content:center!important;opacity:1!important;visibility:visible!important;background:rgba(255,255,255,.97)!important;color:#0d327a!important;border:1px solid rgba(13,50,122,.12)!important;box-shadow:0 10px 24px rgba(0,0,0,.16)!important;}
@media (max-width:760px){
  .slider-stage{width:100vw!important;height:auto!important;aspect-ratio:1999/786!important;min-height:210px!important;max-height:none!important;margin:0 calc(50% - 50vw)!important;overflow:hidden!important;}
  .slide img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;}
  .slider-arrow{width:38px!important;height:38px!important;font-size:28px!important;top:50%!important;}
  .slider-arrow.prev{left:10px!important;}
  .slider-arrow.next{right:10px!important;}
}

/* 3) Titre présentation : plus petit, sur une ligne, au-dessus du texte */
.salon-presentation-head{margin-bottom:18px!important;}
.salon-subtitle-colored{font-size:clamp(18px,1.55vw,28px)!important;line-height:1.2!important;white-space:nowrap!important;margin:2px 0 0!important;}
.salon-presentation-text{padding-top:0!important;}
@media (max-width:1180px){.salon-subtitle-colored{white-space:normal!important;}}

/* 4) Secteurs industriels : visuels clairs, sans film sombre, texte noir sur fond blanc */
.sector-black-card{background:#ffffff!important;box-shadow:0 18px 38px rgba(0,0,0,.16)!important;}
.sector-black-visual img{filter:brightness(1.18) contrast(1.04) saturate(1.06)!important;}
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-card h3{left:14px!important;right:14px!important;bottom:14px!important;min-height:auto!important;margin:0!important;padding:10px 14px!important;border-radius:14px!important;background:rgba(255,255,255,.94)!important;color:#111!important;text-shadow:none!important;box-shadow:0 8px 18px rgba(0,0,0,.08)!important;font-size:clamp(18px,1.1vw,22px)!important;line-height:1.15!important;font-weight:950!important;}
@media (max-width:760px){.sector-black-card h3{font-size:20px!important;padding:10px 12px!important;}}

/* 5) Footer : mobile / TV ajustés, liens rapides resserrés */
.footer-pro-inner{width:min(100%,1700px)!important;gap:28px!important;grid-template-columns:1.1fr 1.2fr 1.15fr 1.05fr!important;}
.footer-links-block{align-self:start!important;}
.footer-links-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px 20px!important;align-content:start!important;}
.footer-links-grid a{display:block!important;margin:0!important;padding:0!important;font-size:15px!important;line-height:1.3!important;}
.footer-info-block p{margin:0 0 10px!important;grid-template-columns:24px minmax(0,1fr)!important;gap:8px!important;font-size:15px!important;}
.footer-newsletter-block p,.s2ia-footer-pro p,.s2ia-footer-pro a{font-size:15px!important;line-height:1.35!important;}
.footer-pro-bottom{padding:14px 3vw!important;}
@media (min-width:1600px){.footer-pro-inner{grid-template-columns:1.1fr 1.1fr 1fr 1fr!important;gap:36px!important;}}
@media (max-width:980px){
  .footer-pro-inner{grid-template-columns:1fr!important;gap:18px!important;}
  .footer-links-grid{grid-template-columns:1fr 1fr!important;gap:8px 16px!important;}
  .footer-brand-block,.footer-links-block,.footer-info-block,.footer-newsletter-block{text-align:left!important;}
}
@media (max-width:760px){
  .s2ia-footer-pro{padding:28px 18px 0!important;}
  .footer-logo{width:210px!important;}
  .footer-socials{gap:10px!important;margin-top:14px!important;}
  .footer-socials a{width:40px!important;height:40px!important;}
  .footer-links-grid{grid-template-columns:1fr 1fr!important;gap:8px 14px!important;}
  .footer-links-grid a{font-size:14px!important;line-height:1.25!important;}
  .footer-info-block p{font-size:14px!important;line-height:1.35!important;}
  .newsletter-form{grid-template-columns:minmax(0,1fr)58px!important;gap:10px!important;}
  .newsletter-form input,.newsletter-form button{height:48px!important;}
  .footer-pro-bottom{display:grid!important;gap:8px!important;text-align:center!important;justify-content:center!important;padding:12px 18px!important;}
}


/* =========================================================
   S2IA V31 — RESTAURATION TOP MENU + BARRE ACTIONS
   ========================================================= */

/* TOP MENU : figé, aligné, logo restauré */
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:99999!important;
  width:100%!important;
  background:#fff!important;
  box-shadow:0 8px 28px rgba(6,26,67,.10)!important;
}
.site-header .top-shell{
  width:min(100%,1880px)!important;
  margin:0 auto!important;
  min-height:92px!important;
  padding:8px 32px!important;
  display:grid!important;
  grid-template-columns:360px minmax(0,1fr)64px!important;
  align-items:center!important;
  gap:26px!important;
}
.site-header .brand{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.site-header .brand img{
  width:330px!important;
  height:74px!important;
  max-width:330px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:drop-shadow(0 5px 14px rgba(0,0,0,.10))!important;
}
.site-header .main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(16px,1.25vw,30px)!important;
  flex-wrap:nowrap!important;
}
.site-header .main-nav a{
  background:transparent!important;
  color:#050505!important;
  box-shadow:none!important;
  border-radius:0!important;
  min-height:42px!important;
  padding:0!important;
  font-size:clamp(15px,.95vw,18px)!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  transition:color .2s ease!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus,
.site-header .main-nav a.is-active{
  color:#d71920!important;
  background:transparent!important;
  transform:none!important;
  box-shadow:none!important;
}
.nav-toggle{
  width:54px!important;
  height:54px!important;
  border-radius:16px!important;
  background:#071f46!important;
}

/* BARRE ACTIONS : boutons remis et alignés */
.hero-actions{
  width:100%!important;
  background:#050505!important;
  padding:18px 22px 22px!important;
  margin:0!important;
}
.hero-actions-inner{
  width:min(100%,1760px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(250px,330px) minmax(190px,230px) minmax(250px,300px) minmax(300px,390px)!important;
  grid-template-areas:
    "phone register stand email"
    ". countdown countdown ."!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
}
.action-phone{grid-area:phone!important;}
.hero-actions .btn-primary.action-button{grid-area:register!important;}
.hero-actions .btn-secondary.action-button{grid-area:stand!important;}
.action-email{grid-area:email!important;}
.event-countdown{grid-area:countdown!important;}

.action-pill,
.hero-actions .action-button{
  width:100%!important;
  min-height:62px!important;
  border-radius:22px!important;
  padding:0 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  font-size:18px!important;
  line-height:1.1!important;
  font-weight:950!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22)!important;
}
.action-pill{
  background:#fff!important;
  color:#071f46!important;
}
.action-pill svg{
  width:25px!important;
  height:25px!important;
  fill:#f26722!important;
}
.hero-actions .btn-primary.action-button{
  background:#0d4da8!important;
  color:#fff!important;
}
.hero-actions .btn-secondary.action-button{
  background:#f26722!important;
  color:#fff!important;
}
.event-countdown{
  width:min(100%,620px)!important;
  min-height:72px!important;
  padding:10px 18px!important;
  border-radius:22px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22)!important;
}
.countdown-title{display:none!important;}
.countdown-grid{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
}
.flip-tile{
  width:66px!important;
  height:58px!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
}
.flip-tile b{font-size:26px!important;line-height:1!important;}
.flip-tile small{font-size:9px!important;margin-top:4px!important;}

/* Slider : pas de déformation, flèches visibles */
.slider-stage{
  width:100vw!important;
  height:calc(100vw * 786 / 1999)!important;
  max-height:786px!important;
  min-height:0!important;
  margin:0 calc(50% - 50vw)!important;
  overflow:hidden!important;
  background:#fff!important;
}
.slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.slider-arrow{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:1!important;
  visibility:visible!important;
  background:rgba(255,255,255,.96)!important;
  color:#071f46!important;
}

/* Responsive contrôlé */
@media(max-width:1180px){
  .site-header .top-shell{
    grid-template-columns:300px minmax(0,1fr)56px!important;
    gap:16px!important;
    padding:8px 20px!important;
  }
  .site-header .brand img{
    width:285px!important;
    height:66px!important;
  }
  .site-header .main-nav{gap:14px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .hero-actions-inner{
    grid-template-columns:1fr 1fr!important;
    grid-template-areas:
      "phone email"
      "register stand"
      "countdown countdown"!important;
  }
}
@media(max-width:980px){
  .site-header .top-shell{
    grid-template-columns:1fr 54px!important;
    min-height:78px!important;
  }
  .site-header .brand img{
    width:250px!important;
    height:62px!important;
  }
  .site-header .main-nav{
    display:none!important;
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    top:calc(100% + 8px)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    background:#fff!important;
    border:1px solid #dfe7f4!important;
    border-radius:18px!important;
    padding:14px!important;
    box-shadow:0 22px 58px rgba(6,26,67,.18)!important;
  }
  .site-header .main-nav.is-open{display:flex!important;}
  .site-header .main-nav a{
    width:100%!important;
    min-height:46px!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:16px!important;
  }
}
@media(max-width:760px){
  .site-header .top-shell{padding:6px 14px!important;}
  .site-header .brand img{
    width:220px!important;
    height:56px!important;
  }
  .hero-actions{
    padding:16px 16px 20px!important;
  }
  .hero-actions-inner{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "phone"
      "register"
      "stand"
      "email"
      "countdown"!important;
    gap:14px!important;
  }
  .action-pill,
  .hero-actions .action-button{
    min-height:66px!important;
    border-radius:24px!important;
    font-size:20px!important;
  }
  .event-countdown{
    width:100%!important;
    min-height:76px!important;
  }
  .countdown-grid{
    gap:7px!important;
    flex-wrap:wrap!important;
  }
  .flip-tile{
    width:56px!important;
    height:56px!important;
  }
  .flip-tile b{font-size:23px!important;}
  .flip-tile small{font-size:8px!important;}
  .slider-stage{
    height:auto!important;
    aspect-ratio:1999/786!important;
  }
  .slide img{
    object-fit:contain!important;
    background:#fff!important;
  }
  .slider-arrow{
    width:38px!important;
    height:38px!important;
    font-size:28px!important;
  }
  .slider-arrow.prev{left:10px!important;}
  .slider-arrow.next{right:10px!important;}
}


/* =========================================================
   S2IA V32 — Correctifs stricts demandés
   - Compteur déplacé dans le top menu
   - Top menu fixe
   - Logo haut gauche agrandi
   - Barre actions restaurée sans compteur
   - Secteurs : texte sous image avec fond couleur
   ========================================================= */

/* Top menu fixe sur tous terminaux */
html{
  scroll-padding-top:112px!important;
}
body{
  padding-top:104px!important;
}
.site-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:999999!important;
  width:100%!important;
  background:#ffffff!important;
  box-shadow:0 10px 30px rgba(6,26,67,.12)!important;
}
.site-header .top-shell{
  width:min(100%,1900px)!important;
  margin:0 auto!important;
  min-height:104px!important;
  padding:8px 28px!important;
  display:grid!important;
  grid-template-columns:430px minmax(0,1fr)300px 60px!important;
  align-items:center!important;
  gap:20px!important;
}
.site-header .brand{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.site-header .brand img,
.site-header .header-logo-exact{
  width:410px!important;
  height:88px!important;
  max-width:410px!important;
  object-fit:contain!important;
  object-position:left center!important;
  display:block!important;
}
.site-header .main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(14px,1.05vw,24px)!important;
  flex-wrap:nowrap!important;
}
.site-header .main-nav a{
  background:transparent!important;
  color:#050505!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:42px!important;
  padding:0!important;
  font-size:clamp(14px,.9vw,17px)!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus,
.site-header .main-nav a.is-active{
  color:#d71920!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}

/* Compteur en haut à droite du top menu */
.site-header .header-countdown{
  width:290px!important;
  min-height:48px!important;
  padding:6px 8px!important;
  border-radius:16px!important;
  background:#ffffff!important;
  border:1px solid #e3eaf5!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 8px 22px rgba(6,26,67,.12)!important;
  justify-self:end!important;
  grid-column:auto!important;
  grid-area:auto!important;
}
.site-header .header-countdown .countdown-grid{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  flex-wrap:nowrap!important;
}
.site-header .header-countdown .flip-tile{
  width:48px!important;
  height:42px!important;
  min-width:48px!important;
  border-radius:11px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 5px 12px rgba(0,0,0,.12)!important;
}
.site-header .header-countdown .flip-tile b{
  font-size:18px!important;
  line-height:1!important;
}
.site-header .header-countdown .flip-tile small{
  font-size:7px!important;
  margin-top:2px!important;
  line-height:1!important;
}

/* Barre noire sous slider : restaurée sans compteur */
.hero-actions{
  width:100%!important;
  background:#050505!important;
  padding:18px 22px!important;
  margin:0!important;
}
.hero-actions-inner{
  width:min(100%,1660px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(270px,360px) minmax(210px,250px) minmax(270px,330px) minmax(320px,420px)!important;
  grid-template-areas:"phone register stand email"!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
}
.hero-actions .event-countdown{
  display:none!important;
}
.action-phone{grid-area:phone!important;}
.hero-actions .btn-primary.action-button{grid-area:register!important;}
.hero-actions .btn-secondary.action-button{grid-area:stand!important;}
.action-email{grid-area:email!important;}
.action-pill,
.hero-actions .action-button{
  width:100%!important;
  min-height:62px!important;
  border-radius:22px!important;
  padding:0 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  font-size:18px!important;
  font-weight:950!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22)!important;
}
.action-pill{
  background:#ffffff!important;
  color:#071f46!important;
}
.action-pill svg{
  width:25px!important;
  height:25px!important;
  fill:#f26722!important;
}
.hero-actions .btn-primary.action-button{
  background:#0d4da8!important;
  color:#ffffff!important;
}
.hero-actions .btn-secondary.action-button{
  background:#f26722!important;
  color:#ffffff!important;
}

/* Titre demandé : suppression effective du texte complémentaire */
.salon-subtitle-colored{
  white-space:normal!important;
  font-size:clamp(22px,1.8vw,34px)!important;
  line-height:1.18!important;
}

/* Secteurs industriels : texte sous l’image, fond couleur par carte */
.sector-black-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:300px!important;
  background:#ffffff!important;
  border-radius:24px!important;
  overflow:hidden!important;
  position:relative!important;
  box-shadow:0 18px 38px rgba(0,0,0,.18)!important;
}
.sector-black-card:after{
  display:none!important;
  content:none!important;
}
.sector-black-visual{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:220px!important;
  flex:0 0 220px!important;
  overflow:hidden!important;
  background:#ffffff!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:brightness(1.16) contrast(1.04) saturate(1.08)!important;
  opacity:1!important;
  display:block!important;
}
.sector-black-card h3{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  z-index:2!important;
  min-height:76px!important;
  margin:0!important;
  padding:15px 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  color:#ffffff!important;
  text-shadow:none!important;
  font-size:clamp(17px,1.1vw,22px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.sector-black-card:nth-child(4n+1) h3{background:#0d4da8!important;}
.sector-black-card:nth-child(4n+2) h3{background:#f26722!important;}
.sector-black-card:nth-child(4n+3) h3{background:#2e8b36!important;}
.sector-black-card:nth-child(4n+4) h3{background:#071f46!important;}

/* Responsive top menu fixe + compteur */
@media(max-width:1450px){
  body{padding-top:116px!important;}
  .site-header .top-shell{
    grid-template-columns:360px minmax(0,1fr)270px 58px!important;
    min-height:116px!important;
    gap:14px!important;
  }
  .site-header .brand img,
  .site-header .header-logo-exact{
    width:350px!important;
    height:78px!important;
  }
  .site-header .main-nav{
    gap:12px!important;
  }
  .site-header .main-nav a{
    font-size:13.5px!important;
  }
  .site-header .header-countdown{
    width:260px!important;
  }
  .site-header .header-countdown .flip-tile{
    width:42px!important;
    min-width:42px!important;
    height:40px!important;
  }
}
@media(max-width:1120px){
  body{padding-top:128px!important;}
  .site-header .top-shell{
    grid-template-columns:1fr 58px!important;
    grid-template-areas:
      "brand toggle"
      "countdown countdown"!important;
    min-height:128px!important;
    padding:8px 18px!important;
  }
  .site-header .brand{grid-area:brand!important;}
  .site-header .nav-toggle{grid-area:toggle!important;}
  .site-header .header-countdown{
    grid-area:countdown!important;
    justify-self:center!important;
    width:min(100%,330px)!important;
  }
  .site-header .main-nav{
    display:none!important;
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    top:calc(100% + 8px)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    background:#ffffff!important;
    border:1px solid #dfe7f4!important;
    border-radius:18px!important;
    padding:14px!important;
    box-shadow:0 22px 58px rgba(6,26,67,.18)!important;
  }
  .site-header .main-nav.is-open{display:flex!important;}
  .site-header .main-nav a{
    width:100%!important;
    min-height:46px!important;
    text-align:center!important;
    font-size:16px!important;
  }
  .hero-actions-inner{
    grid-template-columns:1fr 1fr!important;
    grid-template-areas:
      "phone email"
      "register stand"!important;
  }
}
@media(max-width:760px){
  body{padding-top:126px!important;}
  html{scroll-padding-top:126px!important;}
  .site-header .top-shell{
    min-height:126px!important;
    padding:7px 14px!important;
  }
  .site-header .brand img,
  .site-header .header-logo-exact{
    width:245px!important;
    height:62px!important;
  }
  .site-header .header-countdown{
    width:100%!important;
    max-width:330px!important;
    min-height:44px!important;
  }
  .site-header .header-countdown .flip-tile{
    width:48px!important;
    min-width:48px!important;
    height:40px!important;
  }
  .hero-actions{
    padding:16px 16px 20px!important;
  }
  .hero-actions-inner{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "phone"
      "register"
      "stand"
      "email"!important;
    gap:14px!important;
  }
  .action-pill,
  .hero-actions .action-button{
    min-height:66px!important;
    border-radius:24px!important;
    font-size:20px!important;
  }
  .sector-black-grid{
    grid-template-columns:1fr!important;
  }
  .sector-black-visual{
    height:210px!important;
    flex-basis:210px!important;
  }
}

/* =========================================================
   S2IA V33 — Correctif STRICTEMENT limité aux popups
   Objectif : popups centrés, haut non coupé, logo visible,
   contenu accessible sur desktop, TV, tablette et mobile.
   ========================================================= */
.premium-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2000000!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  padding:32px 20px!important;
  box-sizing:border-box!important;
}
.premium-modal.is-open,
.premium-modal[aria-hidden="false"]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.premium-modal .modal-backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
}
.premium-modal .modal-card{
  position:relative!important;
  z-index:1!important;
  width:min(1500px,94vw)!important;
  height:min(760px,calc(100dvh - 64px))!important;
  max-height:calc(100dvh - 64px)!important;
  min-height:0!important;
  margin:auto!important;
  display:grid!important;
  grid-template-columns:minmax(410px,44%) minmax(520px,56%)!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:#ffffff!important;
  box-shadow:0 30px 90px rgba(0,0,0,.38)!important;
}
.premium-modal .modal-close{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  z-index:5!important;
}
.premium-modal .modal-visual{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  padding:34px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.premium-modal .modal-visual img,
.premium-modal .stand-slide{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.premium-modal .modal-form-panel{
  height:100%!important;
  max-height:none!important;
  min-height:0!important;
  overflow-y:auto!important;
  padding:24px 38px 30px!important;
  box-sizing:border-box!important;
  scroll-padding-top:24px!important;
}
.premium-modal .modal-logo{
  display:block!important;
  width:190px!important;
  max-width:60%!important;
  height:auto!important;
  max-height:90px!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0 auto 12px!important;
}
.premium-modal .modal-form-panel h2{
  margin:0 0 10px!important;
  text-align:center!important;
  font-size:clamp(30px,2.7vw,44px)!important;
  line-height:1.08!important;
}
.premium-modal .modal-intro{
  margin:0 auto 16px!important;
  max-width:780px!important;
  text-align:center!important;
  font-size:16px!important;
  line-height:1.4!important;
}
.premium-modal .premium-form{
  padding:22px!important;
  border-radius:22px!important;
  box-sizing:border-box!important;
}
.premium-modal .form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.premium-modal .premium-form label{
  margin-bottom:12px!important;
}
.premium-modal .premium-form input,
.premium-modal .premium-form select{
  min-height:48px!important;
  height:48px!important;
  border-radius:15px!important;
  font-size:15px!important;
}
.premium-modal .premium-form textarea{
  min-height:88px!important;
  border-radius:15px!important;
  font-size:15px!important;
}
.premium-modal .modal-submit{
  min-height:52px!important;
  border-radius:16px!important;
  font-size:16px!important;
}
@media(max-height:760px) and (min-width:921px){
  .premium-modal{
    padding:18px 16px!important;
  }
  .premium-modal .modal-card{
    height:calc(100dvh - 36px)!important;
    max-height:calc(100dvh - 36px)!important;
  }
  .premium-modal .modal-form-panel{
    padding:18px 32px 24px!important;
  }
  .premium-modal .modal-logo{
    width:165px!important;
    max-height:76px!important;
    margin-bottom:8px!important;
  }
  .premium-modal .modal-form-panel h2{
    font-size:clamp(28px,2.3vw,38px)!important;
    margin-bottom:8px!important;
  }
  .premium-modal .modal-intro{
    font-size:15px!important;
    margin-bottom:12px!important;
  }
  .premium-modal .premium-form{
    padding:18px!important;
  }
  .premium-modal .premium-form input,
  .premium-modal .premium-form select{
    min-height:44px!important;
    height:44px!important;
  }
  .premium-modal .premium-form textarea{
    min-height:76px!important;
  }
}
@media(max-width:920px){
  .premium-modal{
    padding:12px 10px!important;
  }
  .premium-modal.is-open,
  .premium-modal[aria-hidden="false"]{
    align-items:flex-start!important;
  }
  .premium-modal .modal-card{
    width:min(760px,100%)!important;
    height:auto!important;
    max-height:calc(100dvh - 24px)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }
  .premium-modal .modal-visual{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
    padding:20px!important;
  }
  .premium-modal .modal-form-panel{
    height:auto!important;
    max-height:calc(100dvh - 246px)!important;
    overflow-y:auto!important;
    padding:22px 16px 26px!important;
  }
  .premium-modal .modal-logo{
    width:178px!important;
    max-height:76px!important;
    margin:0 auto 12px!important;
  }
  .premium-modal .modal-form-panel h2{
    font-size:26px!important;
  }
  .premium-modal .modal-intro{
    font-size:15px!important;
  }
  .premium-modal .form-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .premium-modal .premium-form{
    padding:18px!important;
  }
}
@media(max-width:520px){
  .premium-modal{
    padding:8px!important;
  }
  .premium-modal .modal-card{
    max-height:calc(100dvh - 16px)!important;
    border-radius:18px!important;
  }
  .premium-modal .modal-visual{
    height:170px!important;
    min-height:170px!important;
    max-height:170px!important;
    padding:16px!important;
  }
  .premium-modal .modal-visual h3{
    font-size:20px!important;
    line-height:1.12!important;
  }
  .premium-modal .modal-visual p,
  .premium-modal .modal-visual li{
    font-size:12.5px!important;
    line-height:1.32!important;
  }
  .premium-modal .modal-form-panel{
    max-height:calc(100dvh - 186px)!important;
    padding:18px 12px 22px!important;
  }
  .premium-modal .modal-logo{
    width:155px!important;
    max-height:66px!important;
  }
  .premium-modal .modal-form-panel h2{
    font-size:23px!important;
  }
  .premium-modal .modal-intro{
    font-size:13.5px!important;
    margin-bottom:12px!important;
  }
  .premium-modal .premium-form{
    padding:14px!important;
  }
  .premium-modal .premium-form input,
  .premium-modal .premium-form select{
    min-height:46px!important;
    height:46px!important;
  }
  .premium-modal .premium-form textarea{
    min-height:78px!important;
  }
}


/* =========================================================
   S2IA V34 — Sections partenaires et programmes
   ========================================================= */

.compact-strip-title{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  margin:0 auto 18px!important;
  color:#0d4da8!important;
  text-align:center!important;
}
.compact-strip-title h2{
  margin:0!important;
  color:#0d4da8!important;
  font-size:clamp(22px,1.55vw,34px)!important;
  line-height:1.12!important;
  font-weight:950!important;
}
.compact-strip-title.center-only:before,
.compact-strip-title.center-only:after{
  content:''!important;
  display:block!important;
  width:min(12vw,150px)!important;
  height:3px!important;
  border-radius:999px!important;
}
.compact-strip-title.center-only:before{background:#f26722!important;}
.compact-strip-title.center-only:after{background:#2e8b36!important;}
.strip-arrow{
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  border:1px solid #dbe7f7!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  font-size:32px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  box-shadow:0 8px 18px rgba(6,26,67,.10)!important;
}

/* Partenaires diplomatiques */
.diplomatic-partners-section{
  background:#ffffff!important;
  padding:28px 3vw 30px!important;
  border-top:1px solid #eef3fb!important;
  border-bottom:1px solid #eef3fb!important;
}
.s2ia-strip-inner{
  width:min(100%,1720px)!important;
  margin:0 auto!important;
}
.diplomatic-track{
  display:flex!important;
  align-items:center!important;
  gap:24px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:8px 10px 12px!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
}
.diplomatic-track::-webkit-scrollbar{display:none!important;}
.diplomatic-card{
  flex:0 0 112px!important;
  min-height:112px!important;
  scroll-snap-align:start!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  text-align:center!important;
}
.diplomatic-card img{
  width:62px!important;
  height:62px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  box-shadow:0 8px 18px rgba(6,26,67,.10)!important;
}
.flag-badge{
  width:66px!important;
  height:66px!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:44px!important;
  background:#f8fbff!important;
  box-shadow:0 8px 20px rgba(6,26,67,.10)!important;
}
.diplomatic-card strong{
  color:#243b63!important;
  font-size:13px!important;
  line-height:1.1!important;
  font-weight:800!important;
}

/* Thématiques & programme */
.program-themes-section{
  background:#ffffff!important;
  padding:34px 4vw 42px!important;
}
.program-themes-inner{
  width:min(100%,1680px)!important;
  margin:0 auto!important;
}
.program-theme-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:18px!important;
}
.program-theme-card{
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid #e0e8f5!important;
  border-radius:16px!important;
  box-shadow:0 12px 26px rgba(6,26,67,.08)!important;
}
.program-theme-image{
  width:100%!important;
  height:108px!important;
  background:#edf4fb!important;
  overflow:hidden!important;
}
.program-theme-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.program-theme-body{
  min-height:78px!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  padding:12px 14px!important;
}
.program-theme-body span{
  width:40px!important;
  height:40px!important;
  border-radius:12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f7fbff!important;
  color:#f26722!important;
  font-size:24px!important;
  border:1px solid #e1eaf7!important;
}
.program-theme-body h3{
  margin:0!important;
  color:#0d4da8!important;
  font-size:16px!important;
  line-height:1.08!important;
  font-weight:950!important;
}
.program-theme-body p{
  margin:3px 0 0!important;
  color:#384d70!important;
  font-size:13px!important;
  line-height:1.12!important;
  font-weight:700!important;
}

/* Cloud logos : institutions économiques / partenaires */
.partner-logo-cloud-section{
  background:#ffffff!important;
  padding:34px 4vw 38px!important;
  border-top:1px solid #eef3fb!important;
}
.partner-logo-cloud-inner{
  width:min(100%,1660px)!important;
  margin:0 auto!important;
}
.logo-cloud-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:30px!important;
  flex-wrap:wrap!important;
}
.logo-cloud-card{
  min-width:160px!important;
  height:86px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:10px 14px!important;
  background:#ffffff!important;
  border-radius:16px!important;
  border:1px solid #e3ebf6!important;
  box-shadow:0 10px 22px rgba(6,26,67,.06)!important;
}
.logo-cloud-card img{
  width:150px!important;
  height:64px!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}
.logo-cloud-card strong{
  color:#0d4da8!important;
  font-size:16px!important;
  font-weight:900!important;
  text-align:center!important;
}
.event-finance-section{
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)!important;
  padding-top:38px!important;
}
.finance-row{
  gap:24px 34px!important;
}
.finance-card{
  min-width:150px!important;
}

@media(max-width:1280px){
  .program-theme-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .compact-strip-title{
    gap:10px!important;
  }
  .compact-strip-title h2{
    font-size:23px!important;
  }
  .strip-arrow{
    width:34px!important;
    height:34px!important;
  }
  .diplomatic-track{
    gap:16px!important;
  }
  .diplomatic-card{
    flex-basis:92px!important;
  }
  .flag-badge{
    width:58px!important;
    height:58px!important;
    font-size:38px!important;
  }
  .program-theme-grid{
    grid-template-columns:1fr!important;
  }
  .program-theme-image{
    height:150px!important;
  }
  .logo-cloud-row{
    gap:16px!important;
  }
  .logo-cloud-card{
    width:calc(50% - 10px)!important;
    min-width:0!important;
  }
}

/* =========================================================
   S2IA V35 — Ajustements ciblés demandés
   ========================================================= */

/* 1-3. Header : menu plus lisible, logo plus grand, compteur légèrement agrandi */
.site-header .top-shell{
  grid-template-columns:480px minmax(0,1fr)330px 64px!important;
  min-height:116px!important;
  padding:9px 30px!important;
}
.site-header .brand img,
.site-header .header-logo-exact{
  width:455px!important;
  height:96px!important;
  max-width:455px!important;
}
.site-header .main-nav a{
  font-size:clamp(17px,1.06vw,21px)!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
}
.site-header .main-nav{
  gap:clamp(18px,1.35vw,32px)!important;
}
.site-header .header-countdown{
  width:320px!important;
  min-height:56px!important;
  padding:7px 9px!important;
}
.site-header .header-countdown .flip-tile{
  width:54px!important;
  min-width:54px!important;
  height:48px!important;
}
.site-header .header-countdown .flip-tile b{font-size:21px!important;}
.site-header .header-countdown .flip-tile small{font-size:8px!important;}

/* Titre commun au format Portage Institutionnel */
.compact-strip-title h2,
.partner-logo-cloud-section .compact-strip-title h2,
.event-finance-section .compact-strip-title h2,
.event-pillars-section .section-line-title h2,
.event-architecture-section .section-line-title h2{
  margin:0!important;
  color:#0a1d3f!important;
  font-size:clamp(34px,3vw,58px)!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}
.compact-strip-title.center-only:before,
.compact-strip-title.center-only:after,
.section-line-title span{
  width:min(12vw,170px)!important;
  height:4px!important;
  border-radius:999px!important;
}

/* 4. Partenaires diplomatiques : logos pays plus grands + flèches + pastilles */
.diplomatic-partners-section{
  padding:54px 3.5vw 56px!important;
  background:#ffffff!important;
}
.diplomatic-partners-section .compact-strip-title{
  margin-bottom:24px!important;
}
.diplomatic-track{
  gap:34px!important;
  padding:12px 12px 14px!important;
}
.diplomatic-card{
  flex:0 0 145px!important;
  min-height:154px!important;
  gap:12px!important;
}
.diplomatic-card img,
.flag-badge{
  width:92px!important;
  height:92px!important;
  font-size:60px!important;
  border:7px solid #ffffff!important;
  box-shadow:0 14px 34px rgba(6,26,67,.14)!important;
}
.diplomatic-card strong{
  color:#0a1d3f!important;
  font-size:16px!important;
  line-height:1.15!important;
  font-weight:850!important;
}
.diplomatic-dots{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin-top:8px!important;
}
.diplomatic-dot{
  width:11px!important;
  height:11px!important;
  border-radius:999px!important;
  border:0!important;
  background:#c9d7e8!important;
  cursor:pointer!important;
  transition:all .22s ease!important;
}
.diplomatic-dot.is-active{
  width:34px!important;
  background:#0d4da8!important;
}
.diplomatic-partners-section .strip-arrow{
  width:46px!important;
  height:46px!important;
  font-size:38px!important;
  color:#0d4da8!important;
}

/* 5. Secteurs industriels : image à gauche, texte vertical/colonne à droite sur fond blanc */
.s2ia-sector-black-grid{
  background:linear-gradient(135deg,#071f46 0%,#092f63 55%,#051a39 100%)!important;
  padding:68px 4vw 78px!important;
}
.sector-black-grid{
  width:min(100%,1680px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:24px!important;
}
.sector-black-card{
  min-height:180px!important;
  height:180px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)118px!important;
  background:#ffffff!important;
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:0 22px 52px rgba(0,0,0,.28)!important;
  border:1px solid rgba(255,255,255,.45)!important;
  position:relative!important;
}
.sector-black-card:before{height:5px!important;z-index:5!important;}
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  position:relative!important;
  inset:auto!important;
  height:100%!important;
  width:100%!important;
  flex:auto!important;
  overflow:hidden!important;
  background:#fff!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:brightness(1.13) contrast(1.05) saturate(1.08)!important;
  display:block!important;
}
.sector-black-card h3{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  min-height:100%!important;
  margin:0!important;
  padding:14px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#ffffff!important;
  color:#000000!important;
  text-shadow:none!important;
  box-shadow:inset 6px 0 0 var(--sector-color,#0d4da8)!important;
  font-size:clamp(15px,1vw,19px)!important;
  line-height:1.16!important;
  font-weight:950!important;
  text-align:center!important;
  writing-mode:vertical-rl!important;
  transform:rotate(180deg)!important;
}
.sector-black-card:nth-child(4n+1){--sector-color:#0d4da8;}
.sector-black-card:nth-child(4n+2){--sector-color:#f26722;}
.sector-black-card:nth-child(4n+3){--sector-color:#2e8b36;}
.sector-black-card:nth-child(4n+4){--sector-color:#071f46;}

/* 6 & 8. Institutions économiques / partenaires financiers : champs et logos agrandis */
.partner-logo-cloud-section{
  padding:58px 4vw 62px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)!important;
}
.partner-logo-cloud-inner{
  width:min(100%,1740px)!important;
}
.logo-cloud-row{
  gap:26px!important;
  align-items:stretch!important;
}
.logo-cloud-card{
  min-width:250px!important;
  height:142px!important;
  padding:16px 22px!important;
  border-radius:24px!important;
  border:1px solid #dbe6f4!important;
  box-shadow:0 18px 40px rgba(6,26,67,.10)!important;
}
.logo-cloud-card img{
  width:220px!important;
  height:106px!important;
  object-fit:contain!important;
}
.logo-cloud-card strong{
  font-size:20px!important;
  color:#071f46!important;
}
.finance-card{
  min-width:230px!important;
}

/* 7. Architecture globale : cartes agrandies avec vraies images */
.event-architecture-section{
  padding:62px 4vw 70px!important;
  background:#ffffff!important;
}
.event-architecture-inner,
.event-pillars-inner{
  width:min(100%,1760px)!important;
}
.event-architecture-section .section-line-title{
  margin-bottom:34px!important;
}
.architecture-row{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px!important;
}
.architecture-row article{
  min-height:240px!important;
  display:grid!important;
  grid-template-columns:190px minmax(0,1fr)!important;
  gap:22px!important;
  align-items:center!important;
  justify-content:stretch!important;
  padding:18px!important;
  border-radius:28px!important;
  background:#ffffff!important;
  border:1px solid #dce8f6!important;
  box-shadow:0 20px 46px rgba(6,26,67,.10)!important;
}
.architecture-row figure{
  width:190px!important;
  height:178px!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#eef4fb!important;
}
.architecture-row figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.architecture-row span{display:none!important;}
.architecture-row strong{
  font-size:clamp(22px,1.45vw,30px)!important;
  line-height:1.18!important;
  text-align:left!important;
  color:#071f46!important;
  font-weight:950!important;
}

/* 9. Grands piliers : cartes plus ergonomiques et lisibles */
.event-pillars-section{
  padding:62px 4vw 76px!important;
  background:#ffffff!important;
}
.event-pillars-section .section-line-title{
  margin-bottom:34px!important;
}
.pillars-row{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px!important;
}
.pillars-row article{
  height:260px!important;
  border-radius:28px!important;
  border:0!important;
  box-shadow:0 22px 52px rgba(6,26,67,.18)!important;
  background-image:linear-gradient(180deg,rgba(6,26,67,.04) 0%,rgba(6,26,67,.28) 42%,rgba(6,26,67,.86) 100%),var(--pillar-img)!important;
  padding:22px!important;
  justify-content:flex-end!important;
}
.pillars-row span{
  width:62px!important;
  height:62px!important;
  font-size:28px!important;
  background:rgba(255,255,255,.95)!important;
  color:#0d4da8!important;
  box-shadow:0 14px 28px rgba(0,0,0,.18)!important;
}
.pillars-row strong{
  font-size:clamp(18px,1.15vw,24px)!important;
  line-height:1.18!important;
  color:#ffffff!important;
  text-shadow:0 5px 16px rgba(0,0,0,.65)!important;
}

/* 10. Mobile : textes plus grands, images plus nettes, ergonomie améliorée */
@media(max-width:1450px){
  .site-header .top-shell{
    grid-template-columns:390px minmax(0,1fr)300px 60px!important;
  }
  .site-header .brand img,
  .site-header .header-logo-exact{
    width:370px!important;
    height:82px!important;
  }
  .site-header .main-nav a{font-size:15px!important;}
  .sector-black-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:1180px){
  .architecture-row,.pillars-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .program-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .logo-cloud-card{min-width:220px!important;}
  .sector-black-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  body{font-size:17px!important;}
  .site-header .brand img,
  .site-header .header-logo-exact{
    width:265px!important;
    height:66px!important;
  }
  .site-header .main-nav a{font-size:18px!important;}
  .site-header .header-countdown{max-width:360px!important;}
  .site-header .header-countdown .flip-tile{
    width:54px!important;min-width:54px!important;height:44px!important;
  }
  .site-header .header-countdown .flip-tile b{font-size:20px!important;}
  .compact-strip-title h2,
  .partner-logo-cloud-section .compact-strip-title h2,
  .event-finance-section .compact-strip-title h2,
  .event-pillars-section .section-line-title h2,
  .event-architecture-section .section-line-title h2{
    font-size:clamp(29px,8vw,40px)!important;
  }
  .diplomatic-track{gap:20px!important;}
  .diplomatic-card{flex-basis:116px!important;min-height:138px!important;}
  .diplomatic-card img,.flag-badge{width:82px!important;height:82px!important;font-size:52px!important;}
  .diplomatic-card strong{font-size:15px!important;}
  .sector-black-grid{grid-template-columns:1fr!important;}
  .sector-black-card{height:172px!important;grid-template-columns:minmax(0,1fr)104px!important;border-radius:20px!important;}
  .sector-black-card h3{font-size:18px!important;padding:12px 9px!important;}
  .program-theme-grid{grid-template-columns:1fr!important;}
  .program-theme-image{height:185px!important;}
  .program-theme-body h3{font-size:20px!important;}
  .program-theme-body p{font-size:16px!important;}
  .logo-cloud-row{gap:16px!important;}
  .logo-cloud-card{width:100%!important;height:136px!important;min-width:0!important;}
  .logo-cloud-card img{width:230px!important;height:100px!important;}
  .architecture-row,.pillars-row{grid-template-columns:1fr!important;}
  .architecture-row article{grid-template-columns:1fr!important;min-height:auto!important;}
  .architecture-row figure{width:100%!important;height:190px!important;}
  .architecture-row strong{text-align:center!important;font-size:24px!important;}
  .pillars-row article{height:250px!important;}
  .pillars-row strong{font-size:22px!important;}
}


/* =========================================================
   S2IA V36 — Correctifs ciblés demandés
   Header, titres, secteurs, institutions, architecture et piliers
   ========================================================= */

/* Header : logo haut gauche au format du footer, menu rapproché et sans superposition avec le compteur */
.site-header .top-shell{
  width:min(100%,1900px)!important;
  min-height:104px!important;
  padding:8px 24px!important;
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)270px 58px!important;
  align-items:center!important;
  gap:14px!important;
}
.site-header .brand{justify-content:flex-start!important;}
.site-header .brand img,
.site-header .brand img.header-logo-exact,
.site-header .header-logo-exact{
  width:270px!important;
  max-width:270px!important;
  height:auto!important;
  min-height:82px!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:#ffffff!important;
  border-radius:18px!important;
  padding:8px!important;
}
.site-header .main-nav{
  justify-content:flex-start!important;
  gap:clamp(10px,.9vw,20px)!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
}
.site-header .main-nav a{
  font-size:clamp(15px,.92vw,18px)!important;
  font-weight:950!important;
  white-space:nowrap!important;
  letter-spacing:-.015em!important;
}
.site-header .header-countdown{
  width:260px!important;
  min-height:52px!important;
  padding:6px 7px!important;
  justify-self:end!important;
}
.site-header .header-countdown .countdown-grid{gap:5px!important;}
.site-header .header-countdown .flip-tile{
  width:46px!important;
  min-width:46px!important;
  height:44px!important;
  border-radius:12px!important;
}
.site-header .header-countdown .flip-tile b{font-size:19px!important;}
.site-header .header-countdown .flip-tile small{font-size:7px!important;}
@media(max-width:1450px){
  .site-header .top-shell{grid-template-columns:270px minmax(0,1fr)248px 54px!important;gap:10px!important;}
  .site-header .brand img,.site-header .brand img.header-logo-exact,.site-header .header-logo-exact{width:248px!important;max-width:248px!important;min-height:76px!important;}
  .site-header .main-nav{gap:10px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .site-header .header-countdown{width:242px!important;}
  .site-header .header-countdown .flip-tile{width:42px!important;min-width:42px!important;height:40px!important;}
}
@media(max-width:1120px){
  .site-header .top-shell{grid-template-columns:1fr 56px!important;grid-template-areas:"brand toggle" "countdown countdown"!important;min-height:128px!important;}
  .site-header .brand{grid-area:brand!important;}
  .site-header .nav-toggle{grid-area:toggle!important;}
  .site-header .header-countdown{grid-area:countdown!important;justify-self:center!important;width:min(100%,320px)!important;}
  .site-header .main-nav{display:none!important;}
  .site-header .main-nav.is-open{display:flex!important;}
}
@media(max-width:760px){
  .site-header .brand img,.site-header .brand img.header-logo-exact,.site-header .header-logo-exact{width:230px!important;max-width:230px!important;min-height:62px!important;}
}

/* Tous les titres listés alignés sur le style de Secteurs industriels exposants */
.compact-strip-title h2,
.salon-presentation-head h2,
.program-themes-section .compact-strip-title h2,
.partner-logo-cloud-section .compact-strip-title h2,
.event-finance-section .compact-strip-title h2,
.event-pillars-section .section-line-title h2,
.event-architecture-section .section-line-title h2,
.diplomatic-partners-section .compact-strip-title h2{
  font-family:inherit!important;
  font-size:clamp(34px,3vw,58px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  text-shadow:0 8px 20px rgba(0,0,0,.18)!important;
}
.salon-presentation-head h2,
.compact-strip-title h2,
.partner-logo-cloud-section .compact-strip-title h2,
.event-architecture-section .section-line-title h2,
.event-pillars-section .section-line-title h2{
  color:#071f46!important;
}
.s2ia-section-title-dark h2,
.sector-title-dark h2{color:#ffffff!important;}
.section-line-title span,
.compact-strip-title.center-only:before,
.compact-strip-title.center-only:after{height:4px!important;}

/* Partenaires diplomatiques : drapeaux plus grands + flèches/pastilles visibles */
.diplomatic-card{flex:0 0 150px!important;min-height:158px!important;}
.diplomatic-card img,.flag-badge{width:96px!important;height:96px!important;font-size:62px!important;}
.diplomatic-dots{display:flex!important;justify-content:center!important;gap:8px!important;margin-top:12px!important;}
.diplomatic-dot{width:12px!important;height:12px!important;border-radius:50%!important;background:#c5d4e8!important;border:0!important;}
.diplomatic-dot.is-active{width:34px!important;border-radius:999px!important;background:#0d4da8!important;}

/* Secteurs industriels : image couvrant tout le champ, texte horizontal en bas, blanc avec ombre/contour */
.s2ia-sector-black-grid{background:#071f46!important;padding:68px 4vw 78px!important;}
.sector-black-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:28px!important;width:min(100%,1680px)!important;margin:0 auto!important;}
.sector-black-card{
  position:relative!important;
  display:block!important;
  height:238px!important;
  min-height:238px!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 22px 52px rgba(0,0,0,.26)!important;
  border:1px solid rgba(255,255,255,.60)!important;
}
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:#ffffff!important;}
.sector-black-visual img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:brightness(1.12) contrast(1.04) saturate(1.08)!important;display:block!important;}
.sector-black-card h3{
  position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;
  min-height:72px!important;
  margin:0!important;
  padding:14px 18px 18px!important;
  display:flex!important;align-items:flex-end!important;justify-content:center!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.56) 100%)!important;
  color:#ffffff!important;
  -webkit-text-stroke:.45px rgba(0,0,0,.75)!important;
  text-shadow:0 3px 2px rgba(0,0,0,.95),0 9px 20px rgba(0,0,0,.75)!important;
  font-size:clamp(18px,1.25vw,25px)!important;
  line-height:1.12!important;
  font-weight:950!important;
  text-align:center!important;
  writing-mode:horizontal-tb!important;
  transform:none!important;
  box-shadow:none!important;
  border-radius:0!important;
}

/* Institutions économiques : cartes plus grandes avec images d’illustration modifiables */
.economic-logo-section{background:linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%)!important;padding:62px 4vw 68px!important;}
.economic-image-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important;width:min(100%,1540px)!important;margin:0 auto!important;}
.economic-image-card{height:230px!important;min-width:0!important;border-radius:24px!important;overflow:hidden!important;position:relative!important;padding:0!important;background:#ffffff!important;border:1px solid #dbe7f4!important;box-shadow:0 20px 46px rgba(6,26,67,.12)!important;}
.economic-image-card img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:brightness(1.08) contrast(1.03)!important;}
.economic-image-card strong{position:absolute!important;left:16px!important;right:16px!important;bottom:14px!important;background:rgba(255,255,255,.94)!important;color:#071f46!important;border-radius:14px!important;padding:10px 14px!important;text-align:center!important;font-size:20px!important;line-height:1.15!important;font-weight:950!important;box-shadow:0 8px 18px rgba(0,0,0,.10)!important;}

/* Architecture globale : même esprit que Secteurs industriels */
.event-architecture-section{background:#ffffff!important;padding:64px 4vw 72px!important;}
.architecture-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;width:min(100%,1600px)!important;margin:0 auto!important;}
.architecture-row article{position:relative!important;display:block!important;height:240px!important;min-height:240px!important;padding:0!important;border-radius:24px!important;overflow:hidden!important;background:#ffffff!important;border:1px solid #dbe7f4!important;box-shadow:0 20px 46px rgba(6,26,67,.14)!important;}
.architecture-row figure{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;border-radius:0!important;overflow:hidden!important;background:#ffffff!important;}
.architecture-row figure img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:brightness(1.08) contrast(1.04)!important;display:block!important;}
.architecture-row strong{position:absolute!important;left:0!important;right:0!important;bottom:0!important;min-height:70px!important;padding:14px 18px 18px!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.58))!important;color:#ffffff!important;text-align:center!important;font-size:clamp(19px,1.25vw,25px)!important;line-height:1.15!important;font-weight:950!important;text-shadow:0 4px 3px rgba(0,0,0,.95),0 10px 20px rgba(0,0,0,.75)!important;-webkit-text-stroke:.4px rgba(0,0,0,.70)!important;}

/* Partenaires Event & institutions financières : champs agrandis, images/photos, flèches + pastilles */
.event-finance-section{background:#ffffff!important;padding:64px 4vw 72px!important;}
.finance-title-with-arrows{gap:20px!important;}
.event-finance-section .strip-arrow{width:46px!important;height:46px!important;font-size:38px!important;flex:0 0 46px!important;}
.finance-row{display:flex!important;align-items:stretch!important;justify-content:flex-start!important;gap:26px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;padding:8px 8px 16px!important;flex-wrap:nowrap!important;}
.finance-row::-webkit-scrollbar{display:none!important;}
.finance-image-card{flex:0 0 300px!important;height:218px!important;min-width:300px!important;position:relative!important;overflow:hidden!important;border-radius:24px!important;padding:0!important;border:1px solid #dbe7f4!important;background:#ffffff!important;box-shadow:0 18px 40px rgba(6,26,67,.12)!important;scroll-snap-align:start!important;}
.finance-image-card img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:brightness(1.08) contrast(1.03)!important;}
.finance-image-card strong{position:absolute!important;left:14px!important;right:14px!important;bottom:14px!important;background:rgba(255,255,255,.95)!important;color:#071f46!important;border-radius:14px!important;padding:10px 12px!important;text-align:center!important;font-size:18px!important;line-height:1.15!important;font-weight:950!important;box-shadow:0 8px 18px rgba(0,0,0,.10)!important;}
.event-finance-dots{display:flex!important;justify-content:center!important;gap:8px!important;margin-top:14px!important;}
.event-finance-dot{width:12px!important;height:12px!important;border-radius:50%!important;border:0!important;background:#c5d4e8!important;cursor:pointer!important;}
.event-finance-dot.is-active{width:34px!important;border-radius:999px!important;background:#0d4da8!important;}

/* Grands piliers : images naturelles, pas de film, texte noir sur fond blanc */
.event-pillars-section{background:#ffffff!important;padding:64px 4vw 76px!important;}
.pillars-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;width:min(100%,1600px)!important;margin:0 auto!important;}
.pillars-row article{position:relative!important;height:270px!important;border-radius:24px!important;overflow:hidden!important;padding:0!important;display:block!important;background-image:var(--pillar-img)!important;background-size:cover!important;background-position:center!important;box-shadow:0 20px 46px rgba(6,26,67,.14)!important;border:1px solid #dbe7f4!important;}
.pillars-row article:before,.pillars-row article:after{display:none!important;content:none!important;}
.pillars-row span{position:absolute!important;left:18px!important;top:18px!important;width:54px!important;height:54px!important;border-radius:14px!important;background:#ffffff!important;color:#0d4da8!important;box-shadow:0 8px 18px rgba(0,0,0,.12)!important;font-size:24px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.pillars-row strong{position:absolute!important;left:14px!important;right:14px!important;bottom:14px!important;background:#ffffff!important;color:#111!important;border-radius:16px!important;padding:12px 14px!important;font-size:18px!important;line-height:1.18!important;font-weight:850!important;text-shadow:none!important;text-align:center!important;box-shadow:0 10px 22px rgba(0,0,0,.12)!important;}

/* Mobile : textes et images plus lisibles */
@media(max-width:1180px){
  .sector-black-grid,.architecture-row,.pillars-row,.economic-image-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .compact-strip-title h2,.salon-presentation-head h2,.program-themes-section .compact-strip-title h2,.partner-logo-cloud-section .compact-strip-title h2,.event-finance-section .compact-strip-title h2,.event-pillars-section .section-line-title h2,.event-architecture-section .section-line-title h2{font-size:clamp(30px,8.2vw,42px)!important;line-height:1.08!important;}
  .sector-black-grid,.architecture-row,.pillars-row,.economic-image-row{grid-template-columns:1fr!important;}
  .sector-black-card,.architecture-row article{height:260px!important;}
  .sector-black-card h3,.architecture-row strong{font-size:22px!important;min-height:76px!important;}
  .economic-image-card{height:240px!important;}
  .finance-image-card{flex-basis:86vw!important;min-width:86vw!important;height:230px!important;}
  .pillars-row article{height:260px!important;}
  .pillars-row strong{font-size:18px!important;}
}


/* =========================================================
   S2IA V37 — Correctifs stricts demandés
   Logo 374x150, titres uniformes, textes hors images,
   flèches/pastilles économiques, meilleure ergonomie menu
   ========================================================= */

/* 1 — Header : logo haut gauche exact 374x150, menu espacé */
body{padding-top:166px!important;}
html{scroll-padding-top:166px!important;}
.site-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:999999!important;
  background:#ffffff!important;
}
.site-header .top-shell{
  width:min(100%,1920px)!important;
  min-height:166px!important;
  padding:8px 34px!important;
  display:grid!important;
  grid-template-columns:410px minmax(660px,1fr)290px 62px!important;
  align-items:center!important;
  gap:28px!important;
}
.site-header .brand{
  width:410px!important;
  min-width:410px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.site-header .brand img,
.site-header .brand img.header-logo-exact,
.site-header .header-logo-exact{
  width:374px!important;
  height:150px!important;
  max-width:374px!important;
  max-height:150px!important;
  min-height:150px!important;
  object-fit:contain!important;
  object-position:left center!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 7px 16px rgba(0,0,0,.10))!important;
}
.site-header .main-nav{
  justify-content:flex-start!important;
  gap:clamp(18px,1.35vw,34px)!important;
  padding-left:10px!important;
  padding-right:18px!important;
  flex-wrap:nowrap!important;
}
.site-header .main-nav a{
  font-size:clamp(15px,1vw,19px)!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
}
.site-header .header-countdown{
  justify-self:end!important;
  width:280px!important;
  min-height:56px!important;
}
.site-header .header-countdown .countdown-grid{gap:5px!important;}
.site-header .header-countdown .flip-tile{
  width:48px!important;
  min-width:48px!important;
  height:44px!important;
}
.site-header .header-countdown .flip-tile b{font-size:19px!important;}
.site-header .header-countdown .flip-tile small{font-size:7px!important;}

@media(max-width:1540px){
  body{padding-top:132px!important;}
  html{scroll-padding-top:132px!important;}
  .site-header .top-shell{
    min-height:132px!important;
    grid-template-columns:330px minmax(520px,1fr)260px 58px!important;
    gap:18px!important;
    padding:8px 24px!important;
  }
  .site-header .brand,
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:310px!important;
    min-width:310px!important;
    max-width:310px!important;
    height:116px!important;
    max-height:116px!important;
    min-height:116px!important;
  }
  .site-header .main-nav{gap:14px!important;padding-left:6px!important;}
  .site-header .main-nav a{font-size:14px!important;}
  .site-header .header-countdown{width:250px!important;}
  .site-header .header-countdown .flip-tile{width:43px!important;min-width:43px!important;height:40px!important;}
}
@media(max-width:1120px){
  body{padding-top:138px!important;}
  html{scroll-padding-top:138px!important;}
  .site-header .top-shell{
    grid-template-columns:1fr 58px!important;
    grid-template-areas:"brand toggle" "countdown countdown"!important;
    min-height:138px!important;
    padding:8px 18px!important;
  }
  .site-header .brand{grid-area:brand!important;width:auto!important;min-width:0!important;}
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:280px!important;
    min-width:0!important;
    height:96px!important;
    min-height:96px!important;
    max-height:96px!important;
  }
  .site-header .header-countdown{
    grid-area:countdown!important;
    justify-self:center!important;
    width:min(100%,330px)!important;
  }
  .site-header .nav-toggle{grid-area:toggle!important;}
}
@media(max-width:760px){
  body{padding-top:126px!important;}
  html{scroll-padding-top:126px!important;}
  .site-header .top-shell{min-height:126px!important;padding:7px 14px!important;}
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:238px!important;
    height:74px!important;
    min-height:74px!important;
  }
}

/* 2 — Uniformisation de tous les grands titres, une ligne desktop */
.patronage-main-title,
.s2ia-section-title-dark h2,
.institutional-clean-title h2,
.compact-strip-title h2,
.salon-presentation-head h2,
.section-line-title h2,
.sector-title-dark h2{
  color:#071f46!important;
  font-family:Inter,Arial,Verdana,sans-serif!important;
  font-weight:950!important;
  font-size:clamp(28px,2.55vw,48px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  text-transform:none!important;
  white-space:nowrap!important;
  text-shadow:0 12px 28px rgba(6,26,67,.10)!important;
}
.s2ia-section-title-dark,
.compact-strip-title,
.section-line-title,
.sector-title-dark{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(16px,2.3vw,42px)!important;
  margin-bottom:30px!important;
}
.s2ia-section-title-dark span,
.section-line-title span,
.sector-title-dark span,
.compact-strip-title.center-only:before,
.compact-strip-title.center-only:after{
  width:min(11vw,180px)!important;
  height:4px!important;
  border-radius:999px!important;
}
.s2ia-section-title-dark span:first-child,
.section-line-title .orange-line,
.sector-title-dark span:first-child,
.compact-strip-title.center-only:before{background:#f26722!important;}
.s2ia-section-title-dark span:last-child,
.section-line-title .green-line,
.sector-title-dark span:last-child,
.compact-strip-title.center-only:after{background:#2e8b36!important;}
@media(max-width:1180px){
  .patronage-main-title,
  .s2ia-section-title-dark h2,
  .institutional-clean-title h2,
  .compact-strip-title h2,
  .salon-presentation-head h2,
  .section-line-title h2,
  .sector-title-dark h2{
    white-space:normal!important;
    font-size:clamp(26px,5vw,38px)!important;
  }
}

/* 3 — Partenaires diplomatiques : drapeaux plus grands, flèches/pastilles propres */
.diplomatic-partners-section{padding:38px 3vw 42px!important;}
.diplomatic-track{gap:30px!important;padding:12px 10px 16px!important;}
.diplomatic-card{flex:0 0 132px!important;min-height:142px!important;}
.diplomatic-card img,
.flag-badge{
  width:82px!important;
  height:82px!important;
  min-width:82px!important;
  border-radius:50%!important;
}
.flag-badge{font-size:54px!important;}
.diplomatic-card strong{
  font-size:15px!important;
  color:#071f46!important;
  font-weight:850!important;
}
.diplomatic-dots,
.economic-dots,
.event-finance-dots{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:16px!important;
}
.diplomatic-dot,
.economic-dot,
.event-finance-dot{
  width:10px!important;
  height:10px!important;
  border-radius:50%!important;
  border:0!important;
  background:#c9d7ea!important;
  cursor:pointer!important;
}
.diplomatic-dot.is-active,
.economic-dot.is-active,
.event-finance-dot.is-active{
  width:28px!important;
  border-radius:999px!important;
  background:#f26722!important;
}

/* 4 — Secteurs industriels : image haut format large + texte hors image en bas */
.s2ia-sector-black-grid{
  background:#071f46!important;
  padding:60px 4vw 70px!important;
}
.sector-black-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
}
.sector-black-card{
  min-height:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.sector-black-card:before,
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.95/1!important;
  flex:0 0 auto!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 16px 34px rgba(0,0,0,.22)!important;
  border:1px solid rgba(255,255,255,.55)!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.06)!important;
}
.sector-black-card h3{
  position:static!important;
  background:transparent!important;
  color:#ffffff!important;
  min-height:auto!important;
  margin:0!important;
  padding:0 8px!important;
  display:block!important;
  text-align:center!important;
  font-size:clamp(17px,1.15vw,21px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  text-shadow:
    0 2px 0 rgba(0,0,0,.80),
    0 5px 14px rgba(0,0,0,.90)!important;
  box-shadow:none!important;
}
@media(max-width:1180px){.sector-black-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:700px){.sector-black-grid{grid-template-columns:1fr!important;}}

/* 5 — Institutions économiques : texte hors image + flèches + pastilles */
.economic-logo-section{background:#ffffff!important;padding:54px 3vw 58px!important;}
.economic-title-with-arrows.center-only:before,
.economic-title-with-arrows.center-only:after{display:none!important;}
.economic-image-row{
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  justify-content:flex-start!important;
  gap:28px!important;
  padding:8px 8px 14px!important;
  scrollbar-width:none!important;
}
.economic-image-row::-webkit-scrollbar{display:none!important;}
.economic-image-card{
  flex:0 0 360px!important;
  min-width:360px!important;
  height:auto!important;
  min-height:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  scroll-snap-align:start!important;
}
.economic-image-card img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid #dce7f5!important;
  box-shadow:0 16px 34px rgba(6,26,67,.10)!important;
}
.economic-image-card strong{
  display:block!important;
  color:#071f46!important;
  background:transparent!important;
  text-align:center!important;
  font-size:clamp(17px,1.15vw,22px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  padding:0 4px!important;
}

/* 6 — Architecture : texte hors image en bas, texte noir */
.event-architecture-section{background:#ffffff!important;padding:58px 4vw 64px!important;}
.architecture-row{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
}
.architecture-row article{
  min-height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:12px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}
.architecture-row figure{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.9/1!important;
  margin:0!important;
  border-radius:18px!important;
  overflow:hidden!important;
  box-shadow:0 16px 34px rgba(6,26,67,.14)!important;
  border:1px solid #dfe8f5!important;
}
.architecture-row figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.05)!important;
}
.architecture-row strong{
  display:block!important;
  color:#090909!important;
  background:transparent!important;
  text-align:center!important;
  font-size:clamp(18px,1.2vw,23px)!important;
  line-height:1.18!important;
  font-weight:850!important;
  text-shadow:none!important;
  padding:0 6px!important;
}
@media(max-width:980px){.architecture-row{grid-template-columns:1fr!important;}}

/* 7 — Partenaires Event : image libre + texte sous l’image, flèches/pastilles */
.event-finance-section{background:#f7fbff!important;padding:58px 3vw 64px!important;}
.finance-title-with-arrows.center-only:before,
.finance-title-with-arrows.center-only:after{display:none!important;}
.finance-row{
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  justify-content:flex-start!important;
  gap:28px!important;
  padding:8px 8px 14px!important;
  scrollbar-width:none!important;
}
.finance-row::-webkit-scrollbar{display:none!important;}
.finance-image-card,
.finance-card{
  flex:0 0 340px!important;
  min-width:340px!important;
  height:auto!important;
  min-height:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  scroll-snap-align:start!important;
}
.finance-image-card img,
.finance-card img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid #dce7f5!important;
  box-shadow:0 16px 34px rgba(6,26,67,.10)!important;
}
.finance-image-card strong,
.finance-card strong{
  display:block!important;
  color:#071f46!important;
  background:transparent!important;
  text-align:center!important;
  font-size:clamp(16px,1.1vw,21px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  padding:0 4px!important;
}

/* 8 — Grands piliers : images naturelles + texte en noir sur fond blanc */
.event-pillars-section{background:#ffffff!important;padding:60px 4vw 72px!important;}
.pillars-row{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
}
.pillars-row article{
  position:relative!important;
  height:auto!important;
  min-height:auto!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  box-shadow:0 18px 38px rgba(6,26,67,.12)!important;
  display:flex!important;
  flex-direction:column!important;
}
.pillars-row article:before{
  content:''!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.4/1!important;
  background-image:var(--pillar-img)!important;
  background-size:cover!important;
  background-position:center!important;
  filter:none!important;
  opacity:1!important;
}
.pillars-row article:after{display:none!important;content:none!important;}
.pillars-row article span{display:none!important;}
.pillars-row article strong{
  position:static!important;
  background:#ffffff!important;
  color:#111111!important;
  text-shadow:none!important;
  width:100%!important;
  min-height:78px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:16px 18px!important;
  font-size:clamp(17px,1.1vw,22px)!important;
  line-height:1.2!important;
  font-weight:850!important;
}
@media(max-width:980px){.pillars-row{grid-template-columns:1fr!important;}}

/* Mobile : conserver la lisibilité */
@media(max-width:760px){
  .diplomatic-card{flex-basis:116px!important;}
  .diplomatic-card img,.flag-badge{width:72px!important;height:72px!important;}
  .program-theme-image{height:auto!important;aspect-ratio:2.55/1!important;}
  .economic-image-card,.finance-image-card,.finance-card{flex-basis:82vw!important;min-width:82vw!important;}
  .sector-black-card h3,.architecture-row strong,.economic-image-card strong,.finance-card strong,.pillars-row article strong{
    font-size:19px!important;
  }
}


/* =========================================================
   S2IA V38 — Correctifs stricts demandés
   Secteurs comme les piliers, 20 secteurs, titres chiffres clés blancs,
   institutions avec textes hors images, menu non réduit.
   ========================================================= */

/* Ne pas réduire le top menu sur desktop */
@media(min-width:1121px){
  .site-header .main-nav a{font-size:clamp(17px,1.05vw,20px)!important;}
  .site-header .main-nav{gap:clamp(18px,1.25vw,30px)!important;}
}

/* Chiffres clés : titre en blanc comme demandé */
.s2ia-keyfig-black .s2ia-section-title-dark h2,
.s2ia-keyfig-black .sector-title-dark h2{
  color:#ffffff!important;
  text-shadow:0 12px 28px rgba(0,0,0,.35)!important;
}
.s2ia-keyfig-black .s2ia-section-title-dark span:first-child{background:#f26722!important;}
.s2ia-keyfig-black .s2ia-section-title-dark span:last-child{background:#2e8b36!important;}

/* Secteurs industriels : image libre + texte hors image, en bas, sans fond */
.s2ia-sector-black-grid .sector-black-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:34px 30px!important;
}
.s2ia-sector-black-grid .sector-black-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:14px!important;
  min-height:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  color:#ffffff!important;
}
.s2ia-sector-black-grid .sector-black-card:before,
.s2ia-sector-black-grid .sector-black-card:after{display:none!important;content:none!important;}
.s2ia-sector-black-grid .sector-black-visual{
  order:1!important;
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.95/1!important;
  flex:0 0 auto!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:18px!important;
  box-shadow:0 16px 34px rgba(0,0,0,.22)!important;
}
.s2ia-sector-black-grid .sector-black-visual img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.06)!important;
  opacity:1!important;
}
.s2ia-sector-black-grid .sector-black-card h3{
  order:2!important;
  position:static!important;
  inset:auto!important;
  min-height:auto!important;
  margin:0!important;
  padding:0 8px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:block!important;
  color:#ffffff!important;
  text-align:center!important;
  font-size:clamp(17px,1.15vw,22px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  text-shadow:0 2px 0 rgba(0,0,0,.88),0 6px 15px rgba(0,0,0,.95)!important;
}
@media(max-width:1320px){.s2ia-sector-black-grid .sector-black-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media(max-width:980px){.s2ia-sector-black-grid .sector-black-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:680px){.s2ia-sector-black-grid .sector-black-grid{grid-template-columns:1fr!important;}}

/* Institutions économiques : textes sous les images, jamais sur les images */
.economic-logo-section .economic-image-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  justify-content:flex-start!important;
  gap:28px!important;
  padding:8px 8px 14px!important;
  scrollbar-width:none!important;
}
.economic-logo-section .economic-image-row::-webkit-scrollbar{display:none!important;}
.economic-logo-section .economic-image-card,
.partner-logo-cloud-section.economic-logo-section .logo-cloud-card.economic-image-card{
  position:relative!important;
  flex:0 0 360px!important;
  min-width:360px!important;
  width:360px!important;
  height:auto!important;
  min-height:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:12px!important;
  scroll-snap-align:start!important;
  overflow:visible!important;
}
.economic-logo-section .economic-image-card img{
  order:1!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid #dce7f5!important;
  box-shadow:0 16px 34px rgba(6,26,67,.10)!important;
}
.economic-logo-section .economic-image-card strong{
  order:2!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:block!important;
  width:100%!important;
  min-height:auto!important;
  margin:0!important;
  padding:0 6px!important;
  background:transparent!important;
  color:#071f46!important;
  text-align:center!important;
  font-size:clamp(17px,1.15vw,22px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  box-shadow:none!important;
  border-radius:0!important;
}
@media(max-width:760px){
  .economic-logo-section .economic-image-card,
  .partner-logo-cloud-section.economic-logo-section .logo-cloud-card.economic-image-card{flex-basis:82vw!important;min-width:82vw!important;width:82vw!important;}
}


/* =========================================================
   S2IA V38 — Corrections strictes : secteurs, institutions,
   titre chiffres clés blanc, menu non réduit
   ========================================================= */

/* Top menu : conserver une taille lisible sans toucher au logo */
.site-header .main-nav a{
  font-size:clamp(17px,1.05vw,21px)!important;
  font-weight:950!important;
}
@media(max-width:1540px){
  .site-header .main-nav a{font-size:16px!important;}
  .site-header .main-nav{gap:clamp(12px,1vw,22px)!important;}
}

/* Chiffres clés : titre blanc sur fond sombre */
.s2ia-keyfig-black .s2ia-section-title-dark h2,
.s2ia-keyfig-black .keyfig-title-dark h2,
.s2ia-keyfig-black h2{
  color:#ffffff!important;
  text-shadow:0 6px 20px rgba(255,255,255,.12)!important;
}
.s2ia-keyfig-black .s2ia-section-title-dark span:first-child{background:#f26722!important;}
.s2ia-keyfig-black .s2ia-section-title-dark span:last-child{background:#2e8b36!important;}

/* Secteurs industriels : présentation type “grands piliers”, 20 secteurs, texte hors image */
.s2ia-sector-black-grid{
  background:#071f46!important;
  padding:62px 4vw 76px!important;
}
.s2ia-sector-inner{
  width:min(100%,1760px)!important;
  margin:0 auto!important;
}
.sector-black-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:28px!important;
  align-items:start!important;
}
.sector-black-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  gap:12px!important;
  padding:0!important;
}
.sector-black-card:before,
.sector-black-card:after{
  display:none!important;
  content:none!important;
}
.sector-black-visual{
  position:relative!important;
  order:1!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  flex:0 0 auto!important;
  overflow:hidden!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.24)!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  filter:brightness(1.1) contrast(1.04) saturate(1.06)!important;
  opacity:1!important;
}
.sector-black-card h3{
  position:static!important;
  order:2!important;
  inset:auto!important;
  transform:none!important;
  min-height:auto!important;
  width:100%!important;
  display:block!important;
  margin:0!important;
  padding:0 8px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#ffffff!important;
  text-align:center!important;
  font-size:clamp(16px,1.05vw,20px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  text-shadow:0 2px 0 rgba(0,0,0,.95),0 7px 18px rgba(0,0,0,.95)!important;
}
@media(max-width:1280px){.sector-black-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media(max-width:900px){.sector-black-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:620px){.sector-black-grid{grid-template-columns:1fr!important;}.sector-black-card h3{font-size:19px!important;}}

/* Institutions économiques : texte strictement sous l’image, jamais superposé */
.economic-image-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:28px!important;
  padding:10px 8px 16px!important;
  scrollbar-width:none!important;
}
.economic-image-row::-webkit-scrollbar{display:none!important;}
.logo-cloud-card.economic-image-card,
.economic-image-card{
  position:relative!important;
  flex:0 0 360px!important;
  min-width:360px!important;
  height:auto!important;
  min-height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:12px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  scroll-snap-align:start!important;
}
.logo-cloud-card.economic-image-card img,
.economic-image-card img{
  order:1!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid #dce7f5!important;
  box-shadow:0 16px 34px rgba(6,26,67,.12)!important;
}
.logo-cloud-card.economic-image-card strong,
.economic-image-card strong{
  position:static!important;
  order:2!important;
  inset:auto!important;
  transform:none!important;
  display:block!important;
  width:100%!important;
  background:transparent!important;
  color:#071f46!important;
  text-align:center!important;
  font-size:clamp(17px,1.15vw,22px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  margin:0!important;
  padding:0 4px!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
@media(max-width:760px){.logo-cloud-card.economic-image-card,.economic-image-card{flex-basis:82vw!important;min-width:82vw!important;}}


/* =========================================================
   S2IA V38 — Corrections strictes demandées
   Secteurs industriels, titre Chiffres clés, institutions économiques
   ========================================================= */

/* Top menu : ne pas réduire les textes */
.site-header .main-nav a{
  font-size:clamp(17px,1.08vw,20px)!important;
  font-weight:950!important;
}

/* Chiffres clés : titre en blanc sur fond noir */
.s2ia-keyfig-black .s2ia-section-title-dark h2,
.s2ia-keyfig-black .sector-title-dark h2{
  color:#ffffff!important;
  text-shadow:0 10px 26px rgba(0,0,0,.35)!important;
}
.s2ia-keyfig-black .s2ia-section-title-dark span:first-child{background:#f26722!important;}
.s2ia-keyfig-black .s2ia-section-title-dark span:last-child{background:#2e8b36!important;}

/* Secteurs industriels : présentation propre, 20 éléments, image puis texte en bas hors image */
.s2ia-sector-black-grid{
  background:#071f46!important;
  padding:64px 4vw 78px!important;
  overflow:hidden!important;
}
.s2ia-sector-inner{width:min(100%,1780px)!important;margin:0 auto!important;}
.sector-title-dark h2{color:#ffffff!important;text-shadow:0 10px 28px rgba(0,0,0,.22)!important;}
.sector-black-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:30px 34px!important;
  align-items:start!important;
}
.sector-black-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:12px!important;
  min-height:0!important;
  height:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  padding:0!important;
  color:#ffffff!important;
}
.sector-black-card:before,
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  order:1!important;
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  flex:0 0 auto!important;
  aspect-ratio:2.95/1!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 16px 34px rgba(0,0,0,.26)!important;
  border:1px solid rgba(255,255,255,.55)!important;
}
.sector-black-visual img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.06)!important;
  opacity:1!important;
}
.sector-black-card h3{
  order:2!important;
  position:static!important;
  inset:auto!important;
  z-index:1!important;
  display:block!important;
  min-height:0!important;
  margin:0!important;
  padding:0 8px!important;
  background:transparent!important;
  color:#ffffff!important;
  text-align:center!important;
  font-size:clamp(17px,1.08vw,21px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:
    0 2px 0 rgba(0,0,0,.85),
    0 5px 14px rgba(0,0,0,.92)!important;
  transform:none!important;
  writing-mode:horizontal-tb!important;
}
@media(max-width:1280px){.sector-black-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media(max-width:980px){.sector-black-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:680px){.sector-black-grid{grid-template-columns:1fr!important;}.sector-black-card h3{font-size:20px!important;}}

/* Institutions économiques : textes strictement sous les images, jamais sur l’image */
.economic-logo-section .logo-cloud-row,
.economic-logo-section .economic-image-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  gap:28px!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  padding:10px 8px 16px!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
}
.economic-logo-section .economic-image-row::-webkit-scrollbar{display:none!important;}
.economic-logo-section .logo-cloud-card,
.economic-logo-section .economic-image-card{
  position:relative!important;
  flex:0 0 360px!important;
  min-width:360px!important;
  height:auto!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:12px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  scroll-snap-align:start!important;
}
.economic-logo-section .logo-cloud-card img,
.economic-logo-section .economic-image-card img{
  order:1!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid #dce7f5!important;
  box-shadow:0 16px 34px rgba(6,26,67,.10)!important;
}
.economic-logo-section .logo-cloud-card strong,
.economic-logo-section .economic-image-card strong{
  order:2!important;
  position:static!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0 4px!important;
  background:transparent!important;
  color:#071f46!important;
  text-align:center!important;
  font-size:clamp(17px,1.12vw,22px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  text-shadow:none!important;
  transform:none!important;
}

/* =========================================================
   S2IA V39 — CORRECTIF STRICTEMENT MOBILE UNIQUEMENT
   Objectif : affichage mobile lisible, slider visible sous le header,
   textes agrandis, sections empilées proprement. Aucun changement desktop.
   ========================================================= */

@media (max-width: 980px){
  html{
    scroll-padding-top: 168px!important;
    overflow-x:hidden!important;
  }
  body{
    padding-top: 168px!important;
    overflow-x:hidden!important;
    font-size:17px!important;
  }

  /* Header mobile : fixe, hauteur cohérente, menu non superposé au slider */
  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:999999!important;
    background:#fff!important;
    box-shadow:0 10px 28px rgba(6,26,67,.14)!important;
  }
  .site-header .top-shell{
    width:100%!important;
    min-height:168px!important;
    padding:8px 16px 10px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)56px!important;
    grid-template-areas:
      "brand toggle"
      "countdown countdown"!important;
    align-items:center!important;
    gap:8px!important;
  }
  .site-header .brand{
    grid-area:brand!important;
    width:auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:min(76vw,300px)!important;
    height:92px!important;
    max-height:92px!important;
    min-height:92px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .site-header .nav-toggle{
    grid-area:toggle!important;
    justify-self:end!important;
    width:52px!important;
    height:52px!important;
    border-radius:16px!important;
  }
  .site-header .header-countdown{
    grid-area:countdown!important;
    justify-self:center!important;
    width:min(100%,390px)!important;
    max-width:390px!important;
    min-height:52px!important;
    padding:6px 8px!important;
    border-radius:18px!important;
  }
  .site-header .header-countdown .countdown-grid{
    gap:6px!important;
    flex-wrap:nowrap!important;
  }
  .site-header .header-countdown .flip-tile{
    width:52px!important;
    min-width:52px!important;
    height:46px!important;
    border-radius:12px!important;
  }
  .site-header .header-countdown .flip-tile b{font-size:20px!important;line-height:1!important;}
  .site-header .header-countdown .flip-tile small{font-size:8px!important;line-height:1!important;}

  /* Menu mobile : texte agrandi, affichage propre quand ouvert */
  .site-header .main-nav{
    display:none!important;
    position:fixed!important;
    left:14px!important;
    right:14px!important;
    top:176px!important;
    max-height:calc(100dvh - 190px)!important;
    overflow-y:auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    background:#ffffff!important;
    border:1px solid #dfe8f5!important;
    border-radius:20px!important;
    padding:14px!important;
    box-shadow:0 24px 68px rgba(6,26,67,.22)!important;
  }
  .site-header .main-nav.is-open{display:flex!important;}
  .site-header .main-nav a{
    width:100%!important;
    min-height:50px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:18px!important;
    line-height:1.15!important;
    padding:0 10px!important;
    border-radius:14px!important;
  }

  /* Slider : visible intégralement sous le header fixe */
  .hero-slider{
    display:block!important;
    position:relative!important;
    z-index:1!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    clear:both!important;
  }
  .slider-stage{
    display:block!important;
    width:100vw!important;
    height:auto!important;
    aspect-ratio:1999/786!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 calc(50% - 50vw)!important;
    overflow:hidden!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#ffffff!important;
    transform:none!important;
  }
  .slide{
    position:absolute!important;
    inset:0!important;
    background:#ffffff!important;
  }
  .slide img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:#ffffff!important;
    filter:none!important;
    opacity:1!important;
  }
  .slider-arrow{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:20!important;
    border-radius:50%!important;
    font-size:30px!important;
    background:rgba(255,255,255,.96)!important;
    color:#071f46!important;
    box-shadow:0 8px 22px rgba(6,26,67,.22)!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .slider-arrow.prev{left:10px!important;}
  .slider-arrow.next{right:10px!important;}

  /* Barre actions mobile : boutons lisibles */
  .hero-actions{padding:16px 14px 20px!important;}
  .hero-actions-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"phone" "register" "stand" "email"!important;
    gap:13px!important;
    width:100%!important;
  }
  .action-pill,
  .hero-actions .action-button{
    min-height:64px!important;
    border-radius:24px!important;
    font-size:19px!important;
    padding:0 16px!important;
    width:100%!important;
  }

  /* Titres et textes mobile : plus lisibles */
  .patronage-main-title,
  .s2ia-section-title-dark h2,
  .institutional-clean-title h2,
  .compact-strip-title h2,
  .salon-presentation-head h2,
  .section-line-title h2,
  .sector-title-dark h2{
    font-size:clamp(27px,7.2vw,40px)!important;
    line-height:1.12!important;
    white-space:normal!important;
    letter-spacing:-.02em!important;
  }
  .salon-subtitle-colored{
    font-size:clamp(22px,6vw,32px)!important;
    line-height:1.18!important;
  }
  .salon-presentation-text p,
  .president-message-card p,
  .strategic-card p,
  .strategic-card li{
    font-size:17px!important;
    line-height:1.72!important;
  }
  .president-message-card h3,
  .salon-audience-panel h4,
  .strategic-card h3,
  .program-theme-body h3{
    font-size:22px!important;
    line-height:1.22!important;
  }

  /* Sections mobiles : empilement propre */
  .patronage-welcome-grid,
  .salon-presentation-grid,
  .strategic-card-grid,
  .program-theme-grid,
  .architecture-row,
  .pillars-row{
    grid-template-columns:1fr!important;
  }
  .salon-audience-panel,
  .president-message-card,
  .strategic-card,
  .program-theme-card,
  .keyfig-premium-card{
    border-radius:22px!important;
  }

  /* Chiffres clés : images/texte plus grands mais sans débordement */
  .keyfig-grid-premium{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .keyfig-premium-icon img{
    height:130px!important;
    object-fit:cover!important;
  }
  .keyfig-premium-card strong{
    font-size:clamp(32px,10vw,46px)!important;
  }
  .keyfig-premium-card p{
    font-size:18px!important;
  }

  /* Cartes secteurs / architecture / piliers : lisibles sur mobile */
  .sector-black-grid,
  .s2ia-sector-black-grid .sector-black-grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .sector-black-visual,
  .s2ia-sector-black-grid .sector-black-visual,
  .architecture-row figure,
  .pillars-row article:before{
    aspect-ratio:2.55/1!important;
    min-height:150px!important;
  }
  .sector-black-card h3,
  .s2ia-sector-black-grid .sector-black-card h3,
  .architecture-row strong,
  .economic-image-card strong,
  .finance-card strong,
  .pillars-row article strong{
    font-size:20px!important;
    line-height:1.24!important;
  }

  /* Logos/partenaires : cartes plus confortables */
  .diplomatic-card{flex-basis:118px!important;}
  .diplomatic-card img,
  .flag-badge{width:76px!important;height:76px!important;}
  .diplomatic-card strong{font-size:14px!important;}
  .economic-image-card,
  .finance-image-card,
  .finance-card{
    flex-basis:86vw!important;
    min-width:86vw!important;
    width:86vw!important;
  }
  .economic-image-card img,
  .finance-image-card img,
  .finance-card img{
    aspect-ratio:2.35/1!important;
  }

  /* Footer mobile : lisible et sans grands vides */
  .footer-pro-inner{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .footer-links-grid{
    grid-template-columns:1fr 1fr!important;
    gap:10px 16px!important;
  }
  .footer-links-grid a,
  .footer-info-block p,
  .footer-info-block a{
    font-size:16px!important;
    line-height:1.45!important;
  }
}

@media (max-width: 480px){
  html{scroll-padding-top:154px!important;}
  body{padding-top:154px!important;}
  .site-header .top-shell{
    min-height:154px!important;
    padding:7px 12px 9px!important;
  }
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:min(72vw,238px)!important;
    height:72px!important;
    min-height:72px!important;
  }
  .site-header .header-countdown{
    min-height:46px!important;
    max-width:320px!important;
  }
  .site-header .header-countdown .flip-tile{
    width:47px!important;
    min-width:47px!important;
    height:40px!important;
  }
  .site-header .header-countdown .flip-tile b{font-size:18px!important;}
  .site-header .main-nav{top:160px!important;}
  .slider-arrow{width:38px!important;height:38px!important;font-size:27px!important;}
  .action-pill,
  .hero-actions .action-button{min-height:62px!important;font-size:18px!important;}
  .footer-links-grid{grid-template-columns:1fr!important;}
}


/* =========================================================
   S2IA V40 — Mobile first + nouvelles sections
   ========================================================= */

/* Prompt installation application mobile */
.s2ia-install-prompt[hidden]{display:none!important;}
.s2ia-install-prompt{
  position:fixed!important;
  left:14px!important;
  right:14px!important;
  bottom:16px!important;
  z-index:999998!important;
  display:none!important;
}
.s2ia-install-card{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)auto 38px!important;
  gap:12px!important;
  align-items:center!important;
  max-width:560px!important;
  margin:0 auto!important;
  padding:12px!important;
  border-radius:22px!important;
  background:#ffffff!important;
  color:#071f46!important;
  box-shadow:0 20px 60px rgba(0,0,0,.28)!important;
  border:1px solid #dbe7f7!important;
}
.s2ia-install-card img{width:48px!important;height:48px!important;object-fit:contain!important;}
.s2ia-install-card strong{display:block!important;font-size:15px!important;font-weight:950!important;}
.s2ia-install-card span{display:block!important;font-size:12px!important;line-height:1.25!important;color:#4e617d!important;}
.install-btn{
  border:0!important;
  background:#0d4da8!important;
  color:#fff!important;
  min-height:38px!important;
  border-radius:14px!important;
  padding:0 14px!important;
  font-weight:900!important;
}
.install-close{
  width:34px!important;height:34px!important;border-radius:50%!important;border:0!important;background:#eef4fb!important;color:#071f46!important;font-size:22px!important;font-weight:900!important;
}

/* Nouvelles sections desktop/tablette/TV */
.s2ia-showcase-section,
.world-chambers-section{
  padding:58px 4vw 70px!important;
  background:#ffffff!important;
}
.s2ia-showcase-inner,
.world-chambers-inner{
  width:min(100%,1720px)!important;
  margin:0 auto!important;
}
.showcase-card-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:26px!important;
}
.profile-card{
  border:1px solid #dfe8f5!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 18px 42px rgba(6,26,67,.12)!important;
  display:flex!important;
  flex-direction:column!important;
  text-decoration:none!important;
  color:#071f46!important;
}
.profile-card img{
  width:100%!important;
  aspect-ratio:4/3!important;
  height:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  filter:brightness(1.04) contrast(1.03) saturate(1.05)!important;
}
.profile-card-body{
  padding:18px 20px 22px!important;
  text-align:center!important;
  background:#ffffff!important;
}
.profile-card-body h3,
.profile-card-body strong{
  margin:0!important;
  color:#071f46!important;
  font-size:clamp(19px,1.2vw,24px)!important;
  line-height:1.15!important;
  font-weight:950!important;
  display:block!important;
}
.profile-card-body p,
.profile-card-body em{
  margin:8px 0 0!important;
  color:#263b5d!important;
  font-style:normal!important;
  font-size:clamp(15px,.95vw,18px)!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.leader-card{
  cursor:pointer!important;
  border:1px solid #dfe8f5!important;
  text-align:inherit!important;
  font:inherit!important;
}
.leader-card:hover{transform:translateY(-3px)!important;box-shadow:0 24px 52px rgba(6,26,67,.16)!important;}

.world-chambers-viewport{
  position:relative!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)54px!important;
  gap:18px!important;
  align-items:center!important;
}
.world-chambers-track{
  display:flex!important;
  gap:22px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  padding:8px 4px 18px!important;
  scrollbar-width:none!important;
}
.world-chambers-track::-webkit-scrollbar{display:none!important;}
.world-chamber-card{
  flex:0 0 280px!important;
  scroll-snap-align:start!important;
  border-radius:22px!important;
  border:1px solid #dfe8f5!important;
  background:#ffffff!important;
  box-shadow:0 16px 36px rgba(6,26,67,.10)!important;
  padding:22px 18px!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:16px!important;
  min-height:230px!important;
}
.world-chamber-card img{
  width:100%!important;
  height:90px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#ffffff!important;
}
.world-chamber-card h3{
  margin:0!important;
  color:#071f46!important;
  font-size:17px!important;
  line-height:1.28!important;
  font-weight:850!important;
}
.world-chamber-dots{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:14px!important;
}
.world-chamber-dot{
  width:10px!important;height:10px!important;border:0!important;border-radius:50%!important;background:#c8d7ea!important;cursor:pointer!important;
}
.world-chamber-dot.is-active{
  width:30px!important;border-radius:999px!important;background:#f26722!important;
}
.leader-info-card{max-width:880px!important;}
.leader-modal-image{
  width:100%!important;
  max-height:380px!important;
  object-fit:cover!important;
  border-radius:22px!important;
  margin-bottom:22px!important;
}
.leader-modal-subtitle{
  font-weight:900!important;
  color:#0d4da8!important;
}

/* Responsive desktop/laptop pour nouvelles sections */
@media(max-width:1280px){
  .showcase-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:980px){
  .showcase-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* MOBILE / TABLETTE : traiter uniquement affichage mobile/tablette */
@media(max-width:1024px){
  body{
    padding-top:112px!important;
    overflow-x:hidden!important;
  }
  html{
    scroll-padding-top:112px!important;
    overflow-x:hidden!important;
  }
  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:999999!important;
    background:#ffffff!important;
    box-shadow:0 8px 30px rgba(6,26,67,.14)!important;
  }
  .site-header .top-shell{
    min-height:112px!important;
    width:100%!important;
    padding:10px 16px!important;
    display:grid!important;
    grid-template-columns:1fr 58px!important;
    grid-template-areas:"brand toggle"!important;
    gap:10px!important;
    align-items:center!important;
  }
  .site-header .brand{
    grid-area:brand!important;
    width:auto!important;
    min-width:0!important;
    justify-content:flex-start!important;
  }
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:min(72vw,320px)!important;
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .site-header .header-countdown{
    display:none!important;
  }
  .site-header .nav-toggle{
    grid-area:toggle!important;
    width:56px!important;
    height:56px!important;
    border-radius:17px!important;
    background:#071f46!important;
    z-index:1000001!important;
  }
  .site-header .main-nav{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(88vw,420px)!important;
    height:100dvh!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    gap:12px!important;
    padding:118px 24px 30px!important;
    background:linear-gradient(180deg,#071f46 0%,#0d4da8 100%)!important;
    border:0!important;
    border-radius:28px 0 0 28px!important;
    box-shadow:-30px 0 70px rgba(0,0,0,.38)!important;
    transform:translateX(110%)!important;
    transition:transform .32s ease!important;
    z-index:1000000!important;
    overflow-y:auto!important;
  }
  .site-header .main-nav.is-open{
    transform:translateX(0)!important;
  }
  .site-header .main-nav a{
    width:100%!important;
    min-height:58px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:0 18px!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.12)!important;
    color:#ffffff!important;
    font-size:20px!important;
    font-weight:950!important;
    text-align:left!important;
    box-shadow:none!important;
  }
  .site-header .main-nav a.is-active,
  .site-header .main-nav a:hover{
    background:#ffffff!important;
    color:#f26722!important;
  }
  body.mobile-nav-open{
    overflow:hidden!important;
  }

  /* Slider mobile grand format */
  .hero-slider{
    margin-top:0!important;
    background:#ffffff!important;
  }
  .slider-stage{
    width:100vw!important;
    height:72vh!important;
    min-height:520px!important;
    max-height:760px!important;
    aspect-ratio:auto!important;
    margin:0 calc(50% - 50vw)!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#071f46!important;
  }
  .slide img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  .slider-arrow{
    width:48px!important;
    height:48px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.95)!important;
    color:#071f46!important;
    font-size:34px!important;
    z-index:5!important;
  }
  .slider-arrow.prev{left:12px!important;}
  .slider-arrow.next{right:12px!important;}
  .slider-dots{
    bottom:16px!important;
    transform:translateX(-50%) scale(1.08)!important;
  }

  /* actions et contenu mobile */
  .hero-actions{padding:18px 16px!important;}
  .hero-actions-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    width:100%!important;
  }
  .action-pill,.hero-actions .action-button{
    width:100%!important;
    min-height:64px!important;
    border-radius:22px!important;
    font-size:20px!important;
  }
  .section-line-title h2,
  .compact-strip-title h2,
  .s2ia-section-title-dark h2,
  .institutional-clean-title h2,
  .patronage-main-title,
  .sector-title-dark h2{
    font-size:clamp(30px,7.6vw,42px)!important;
    line-height:1.08!important;
    white-space:normal!important;
  }
  p, li{
    font-size:18px!important;
    line-height:1.65!important;
  }
  .salon-presentation-text p,
  .president-message-card p,
  .strategic-card p{
    font-size:18px!important;
    line-height:1.75!important;
  }

  /* Popups mobile/tablette non coupés */
  .premium-modal{
    position:fixed!important;
    inset:0!important;
    overflow-y:auto!important;
    padding:14px 10px!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overscroll-behavior:contain!important;
  }
  .premium-modal.is-open,
  .premium-modal[aria-hidden="false"]{
    display:flex!important;
  }
  .premium-modal .modal-card{
    width:100%!important;
    max-width:760px!important;
    max-height:none!important;
    min-height:auto!important;
    margin:0 auto 18px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }
  .premium-modal .modal-visual{
    min-height:260px!important;
    max-height:none!important;
    height:34vh!important;
    padding:20px!important;
  }
  .premium-modal .modal-form-panel{
    padding:24px 18px 30px!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .premium-modal .modal-logo{
    width:220px!important;
    max-width:75%!important;
    margin:0 auto 18px!important;
    display:block!important;
  }
  .premium-modal .modal-form-panel h2{
    font-size:clamp(30px,8vw,44px)!important;
    line-height:1.05!important;
    text-align:center!important;
  }
  .premium-modal .modal-intro{
    font-size:18px!important;
    line-height:1.45!important;
    text-align:center!important;
  }
  .premium-modal .form-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .premium-modal .premium-form input,
  .premium-modal .premium-form select,
  .premium-modal .premium-form textarea{
    min-height:58px!important;
    border-radius:18px!important;
    font-size:17px!important;
  }
  .premium-modal .modal-submit{
    min-height:64px!important;
    font-size:19px!important;
    border-radius:20px!important;
  }

  /* Sections nouvelles et existantes en mobile */
  .s2ia-showcase-section,
  .world-chambers-section,
  .program-themes-section,
  .partner-logo-cloud-section,
  .event-architecture-section,
  .event-pillars-section,
  .s2ia-sector-black-grid{
    padding:42px 18px 52px!important;
  }
  .showcase-card-grid,
  .sector-black-grid,
  .program-theme-grid,
  .architecture-row,
  .pillars-row{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .profile-card img,
  .sector-black-visual,
  .architecture-row figure,
  .pillars-row article:before,
  .program-theme-image{
    min-height:240px!important;
  }
  .profile-card-body h3,
  .profile-card-body strong,
  .world-chamber-card h3,
  .sector-black-card h3,
  .architecture-row strong,
  .pillars-row article strong,
  .program-theme-body h3{
    font-size:22px!important;
    line-height:1.2!important;
  }
  .profile-card-body p,
  .profile-card-body em,
  .program-theme-body p{
    font-size:17px!important;
  }
  .world-chambers-viewport{
    grid-template-columns:42px minmax(0,1fr)42px!important;
    gap:8px!important;
  }
  .world-chamber-card{
    flex-basis:78vw!important;
    min-height:250px!important;
  }
  .world-chamber-card img{
    height:120px!important;
  }
  .s2ia-install-prompt{display:block!important;}
}
@media(max-width:520px){
  body{padding-top:104px!important;}
  html{scroll-padding-top:104px!important;}
  .site-header .top-shell{min-height:104px!important;padding:8px 12px!important;}
  .site-header .brand img,
  .site-header .brand img.header-logo-exact,
  .site-header .header-logo-exact{
    width:min(74vw,280px)!important;
    height:82px!important;
    min-height:82px!important;
  }
  .slider-stage{
    height:68vh!important;
    min-height:470px!important;
  }
  .site-header .main-nav{
    width:92vw!important;
    padding-top:108px!important;
  }
  .s2ia-install-card{
    grid-template-columns:42px minmax(0,1fr)38px!important;
  }
  .install-btn{
    grid-column:1/-1!important;
    width:100%!important;
    min-height:44px!important;
  }
  .install-close{
    grid-column:3!important;
    grid-row:1!important;
  }
}


/* =========================================================
   S2IA V41 — Correctif strict : Slider + Chambres partenaires
   ========================================================= */

/* Slider : les nouvelles bannières sont au format 1999x786 optimisé */
.slider-stage{
  width:100vw!important;
  height:calc(100vw * 786 / 1999)!important;
  max-height:786px!important;
  min-height:360px!important;
  margin:0 calc(50% - 50vw)!important;
  overflow:hidden!important;
  background:#ffffff!important;
}
.slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:#ffffff!important;
}
@media(max-width:760px){
  .slider-stage{
    min-height:430px!important;
    height:64vh!important;
    max-height:680px!important;
    aspect-ratio:auto!important;
  }
}

/* Chambres de commerce & d’industrie : correction de l’affichage cassé */
.world-chambers-section{
  padding:54px 4vw 62px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f6f9fe 100%)!important;
  overflow:hidden!important;
}
.world-chambers-inner{
  width:min(100%,1720px)!important;
  margin:0 auto!important;
  overflow:visible!important;
}
.world-chambers-section .section-line-title{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(18px,2.4vw,44px)!important;
  margin:0 0 28px!important;
  width:100%!important;
}
.world-chambers-section .section-line-title h2{
  margin:0!important;
  color:#071f46!important;
  font-size:clamp(30px,2.35vw,46px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.world-chambers-section .section-line-title span{
  flex:0 0 min(13vw,180px)!important;
  height:4px!important;
  border-radius:999px!important;
}
.world-chambers-viewport{
  width:100%!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)54px!important;
  align-items:center!important;
  gap:18px!important;
  min-height:0!important;
  position:relative!important;
}
.world-chambers-viewport .strip-arrow{
  position:relative!important;
  z-index:5!important;
  width:52px!important;
  height:52px!important;
  border-radius:50%!important;
  border:0!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  font-size:38px!important;
  box-shadow:0 12px 28px rgba(6,26,67,.14)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.world-chambers-track{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 110px) / 6)!important;
  gap:22px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  padding:10px 4px 18px!important;
  scrollbar-width:none!important;
  min-height:0!important;
  align-items:stretch!important;
}
.world-chambers-track::-webkit-scrollbar{display:none!important;}
.world-chamber-card{
  scroll-snap-align:start!important;
  width:auto!important;
  min-width:0!important;
  min-height:190px!important;
  height:auto!important;
  border-radius:20px!important;
  border:1px solid #dfe8f5!important;
  background:#ffffff!important;
  box-shadow:0 14px 32px rgba(6,26,67,.10)!important;
  padding:18px 14px 16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  text-align:center!important;
  overflow:hidden!important;
}
.world-chamber-card img{
  width:100%!important;
  height:82px!important;
  max-height:82px!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  background:#ffffff!important;
  flex:0 0 auto!important;
}
.world-chamber-card h3{
  margin:0!important;
  padding:0!important;
  color:#071f46!important;
  font-size:clamp(14px,.9vw,17px)!important;
  line-height:1.22!important;
  font-weight:850!important;
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.world-chamber-dots{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin:16px 0 0!important;
  min-height:12px!important;
  flex-wrap:wrap!important;
}
.world-chamber-dot{
  width:10px!important;
  height:10px!important;
  border-radius:50%!important;
  border:0!important;
  padding:0!important;
  background:#c9d7ea!important;
  cursor:pointer!important;
}
.world-chamber-dot.is-active{
  width:30px!important;
  border-radius:999px!important;
  background:#0d4da8!important;
}
@media(max-width:1280px){
  .world-chambers-track{grid-auto-columns:calc((100% - 66px) / 4)!important;}
  .world-chambers-section .section-line-title h2{white-space:normal!important;}
}
@media(max-width:820px){
  .world-chambers-viewport{grid-template-columns:44px minmax(0,1fr)44px!important;gap:10px!important;}
  .world-chambers-viewport .strip-arrow{width:42px!important;height:42px!important;font-size:32px!important;}
  .world-chambers-track{grid-auto-columns:78vw!important;gap:16px!important;}
  .world-chamber-card{min-height:210px!important;padding:20px 16px!important;}
  .world-chamber-card img{height:96px!important;max-height:96px!important;}
  .world-chamber-card h3{font-size:18px!important;}
}


/* =========================================================
   S2IA V42 — Correctif strict Slider uniquement
   Objectif : restaurer l'affichage desktop et mobile sans toucher aux autres sections.
   ========================================================= */
html,body{overflow-x:hidden!important;}
.hero-slider{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#ffffff!important;
  overflow:hidden!important;
  line-height:0!important;
}
.slider-stage{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  aspect-ratio:1999/786!important;
  max-height:786px!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#ffffff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transform:none!important;
}
.slide{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
}
.slide img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:#ffffff!important;
  transform:none!important;
}
.slider-arrow{
  position:absolute!important;
  top:50%!important;
  z-index:20!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  border:0!important;
  background:rgba(255,255,255,.96)!important;
  color:#071f46!important;
  box-shadow:0 12px 28px rgba(6,26,67,.18)!important;
  opacity:1!important;
  visibility:visible!important;
}
.slider-arrow.prev{left:18px!important;right:auto!important;}
.slider-arrow.next{right:18px!important;left:auto!important;}
.slider-arrow:hover{transform:translateY(-50%) scale(1.04)!important;}

@media(min-width:2000px){
  .slider-stage{
    height:786px!important;
    aspect-ratio:auto!important;
  }
}

@media(max-width:760px){
  .hero-slider{
    width:100%!important;
    margin:0!important;
    background:#ffffff!important;
    overflow:hidden!important;
  }
  .slider-stage{
    width:100%!important;
    height:clamp(230px,58vw,360px)!important;
    min-height:230px!important;
    max-height:360px!important;
    aspect-ratio:auto!important;
    margin:0!important;
    background:#ffffff!important;
  }
  .slide img{
    object-fit:contain!important;
    object-position:center center!important;
    background:#ffffff!important;
  }
  .slider-arrow{
    width:40px!important;
    height:40px!important;
    font-size:28px!important;
    top:50%!important;
  }
  .slider-arrow.prev{left:10px!important;}
  .slider-arrow.next{right:10px!important;}
}

/* =========================================================
   S2IA V43 — Correctifs demandés : institutions, chambres, speakers
   ========================================================= */

/* Institutions Africaines d’intégration économiques : 20 éléments, images lisibles, texte sous image */
.economic-logo-section .compact-strip-title h2{
  white-space:nowrap!important;
  color:#071f46!important;
}
.economic-logo-section .logo-cloud-row,
.economic-logo-section .economic-image-row{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 96px) / 5)!important;
  gap:24px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  padding:14px 8px 22px!important;
  scrollbar-width:none!important;
  justify-content:start!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:1680px!important;
  margin:0 auto!important;
}
.economic-logo-section .logo-cloud-row::-webkit-scrollbar,
.economic-logo-section .economic-image-row::-webkit-scrollbar{display:none!important;}
.economic-logo-section .logo-cloud-card,
.economic-logo-section .economic-image-card{
  scroll-snap-align:start!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  min-height:270px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  box-shadow:0 18px 40px rgba(6,26,67,.12)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:16px!important;
  overflow:hidden!important;
}
.economic-logo-section .logo-cloud-card img,
.economic-logo-section .economic-image-card img{
  width:100%!important;
  height:150px!important;
  aspect-ratio:auto!important;
  border-radius:18px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#ffffff!important;
  border:1px solid #edf3fb!important;
  box-shadow:none!important;
  padding:10px!important;
}
.economic-logo-section .logo-cloud-card strong,
.economic-logo-section .economic-image-card strong{
  position:static!important;
  display:block!important;
  width:100%!important;
  background:transparent!important;
  color:#071f46!important;
  box-shadow:none!important;
  padding:0!important;
  text-align:center!important;
  font-size:clamp(18px,1.05vw,22px)!important;
  line-height:1.16!important;
  font-weight:950!important;
  white-space:normal!important;
}
.economic-logo-section .strip-arrow{display:flex!important;}
.economic-dots{display:flex!important;justify-content:center!important;gap:9px!important;margin-top:10px!important;}
.economic-dot{width:11px!important;height:11px!important;border-radius:50%!important;background:#c5d7ee!important;border:0!important;}
.economic-dot.is-active{width:30px!important;border-radius:999px!important;background:#0d4da8!important;}

/* Chambres de commerce : vignettes et textes agrandis */
.world-chambers-section .section-line-title h2{
  font-size:clamp(34px,2.55vw,52px)!important;
  white-space:nowrap!important;
}
.world-chambers-track{
  grid-auto-columns:calc((100% - 72px) / 4)!important;
  gap:24px!important;
  padding:14px 8px 24px!important;
}
.world-chamber-card{
  min-height:310px!important;
  padding:26px 20px 24px!important;
  border-radius:26px!important;
  box-shadow:0 20px 48px rgba(6,26,67,.14)!important;
}
.world-chamber-card img{
  width:170px!important;
  max-width:82%!important;
  height:128px!important;
  object-fit:contain!important;
  margin-bottom:18px!important;
}
.world-chamber-card h3{
  font-size:clamp(19px,1.2vw,24px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  max-height:none!important;
  overflow:visible!important;
  display:block!important;
  -webkit-line-clamp:unset!important;
}

/* Speakers & orateurs : 30 éléments, 5 par ligne desktop, textes plus visibles */
.speakers-orators-section .section-line-title h2{
  white-space:nowrap!important;
}
.speakers-grid,
.showcase-card-grid.speakers-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:26px!important;
  align-items:stretch!important;
}
.speakers-grid .profile-card{
  min-height:360px!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 18px 42px rgba(6,26,67,.14)!important;
}
.speakers-grid .profile-card img{
  height:190px!important;
  width:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.speakers-grid .profile-card-body{
  padding:20px 18px 22px!important;
  min-height:152px!important;
}
.speakers-grid .profile-card-body h3{
  font-size:clamp(20px,1.15vw,24px)!important;
  line-height:1.15!important;
  font-weight:950!important;
  color:#071f46!important;
}
.speakers-grid .profile-card-body p{
  font-size:clamp(15px,.9vw,18px)!important;
  line-height:1.32!important;
  font-weight:800!important;
  color:#18355f!important;
}

@media(max-width:1380px){
  .speakers-grid,.showcase-card-grid.speakers-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .economic-logo-section .logo-cloud-row,.economic-logo-section .economic-image-row{grid-auto-columns:calc((100% - 48px) / 3)!important;}
  .world-chambers-track{grid-auto-columns:calc((100% - 48px) / 3)!important;}
}
@media(max-width:900px){
  .speakers-grid,.showcase-card-grid.speakers-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .economic-logo-section .logo-cloud-row,.economic-logo-section .economic-image-row{grid-auto-columns:calc((100% - 24px) / 2)!important;}
  .world-chambers-track{grid-auto-columns:calc((100% - 24px) / 2)!important;}
  .world-chambers-section .section-line-title h2,.economic-logo-section .compact-strip-title h2{white-space:normal!important;}
}
@media(max-width:620px){
  .speakers-grid,.showcase-card-grid.speakers-grid{grid-template-columns:1fr!important;}
  .economic-logo-section .logo-cloud-row,.economic-logo-section .economic-image-row{grid-auto-columns:82vw!important;}
  .world-chambers-track{grid-auto-columns:82vw!important;}
  .world-chamber-card{min-height:300px!important;}
}


/* =========================================================
   S2IA V44 — Correctifs ciblés demandés
   Chiffres clés style cartes financières, chambres images seules,
   institutions africaines style thématiques, slider full screen,
   responsive mobile et ajustement images admin.
   ========================================================= */

/* Slider full screen : suppression de tout cadrage centré/coupé */
.hero-slider{
  width:100vw!important;
  margin:0 calc(50% - 50vw)!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
}
.slider-stage{
  width:100vw!important;
  margin:0!important;
  height:calc(100vw * 786 / 1999)!important;
  max-height:786px!important;
  min-height:430px!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  background:#fff!important;
}
.slide,
.slide.is-active{
  width:100%!important;
  height:100%!important;
}
.slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:#fff!important;
}
.slider-arrow{
  z-index:25!important;
  width:50px!important;
  height:50px!important;
  top:50%!important;
  border-radius:50%!important;
}
.slider-arrow.prev{left:24px!important;}
.slider-arrow.next{right:24px!important;}

/* Chiffres clés : même logique que les cartes Institutions financières partenaires */
.s2ia-keyfig-black{
  background:
    radial-gradient(circle at 12% 0%, rgba(46,139,54,.16), transparent 24%),
    radial-gradient(circle at 88% 0%, rgba(242,103,34,.14), transparent 26%),
    linear-gradient(135deg,#05070b 0%,#111820 48%,#07090d 100%)!important;
  padding:64px 4vw 76px!important;
}
.s2ia-keyfig-inner{
  width:min(100%,1720px)!important;
}
.keyfig-grid-premium{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:28px!important;
  align-items:stretch!important;
}
.keyfig-premium-card{
  min-height:0!important;
  border-radius:24px!important;
  background:#ffffff!important;
  color:#071f46!important;
  padding:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  box-shadow:0 20px 44px rgba(0,0,0,.28)!important;
  border:1px solid rgba(255,255,255,.70)!important;
}
.keyfig-premium-card:before{display:none!important;content:none!important;}
.keyfig-premium-icon{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.72/1!important;
  margin:0!important;
  border-radius:0!important;
  background:#f8fbff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  display:block!important;
}
.keyfig-premium-icon img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
.keyfig-premium-card strong{
  display:block!important;
  margin:0!important;
  padding:24px 18px 6px!important;
  color:#000!important;
  font-size:clamp(32px,2.8vw,48px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
  text-align:center!important;
}
.keyfig-premium-card p{
  margin:0!important;
  padding:0 18px 30px!important;
  color:#000!important;
  font-size:clamp(17px,1.12vw,22px)!important;
  line-height:1.22!important;
  font-weight:900!important;
  text-align:center!important;
}

/* Chambres de commerce : uniquement images/logos, champs plus bas et uniformisés */
.world-chambers-section{
  padding:52px 3vw 60px!important;
  background:#ffffff!important;
}
.world-chambers-inner{
  width:min(100%,1760px)!important;
}
.world-chambers-viewport{
  grid-template-columns:54px minmax(0,1fr)54px!important;
  gap:18px!important;
  align-items:center!important;
}
.world-chambers-track{
  gap:24px!important;
  padding:8px 4px 10px!important;
}
.world-chamber-card{
  flex:0 0 300px!important;
  width:300px!important;
  height:155px!important;
  min-height:155px!important;
  padding:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  display:block!important;
  border:1px solid #dfe8f5!important;
  background:#ffffff!important;
  box-shadow:0 18px 38px rgba(6,26,67,.10)!important;
}
.world-chamber-card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  background:#ffffff!important;
}
.world-chamber-card h3,
.world-chamber-card strong,
.world-chamber-card p,
.world-chamber-card span{
  display:none!important;
}

/* Institutions Africaines d’intégration économiques : même esprit que Thématiques & programme */
.economic-logo-section{
  background:#ffffff!important;
  padding:56px 4vw 64px!important;
}
.economic-image-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:22px!important;
  width:min(100%,1680px)!important;
  margin:0 auto!important;
  overflow:visible!important;
  scrollbar-width:auto!important;
  scroll-snap-type:none!important;
}
.economic-image-card{
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  border-radius:18px!important;
  overflow:hidden!important;
  position:relative!important;
  padding:0!important;
  background:#ffffff!important;
  border:1px solid #e0e8f5!important;
  box-shadow:0 12px 26px rgba(6,26,67,.08)!important;
  display:flex!important;
  flex-direction:column!important;
}
.economic-image-card img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2.55/1!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.05)!important;
  display:block!important;
  border-radius:0!important;
}
.economic-image-card strong{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:78px!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  border-radius:0!important;
  padding:14px 18px!important;
  text-align:center!important;
  font-size:clamp(17px,1vw,21px)!important;
  line-height:1.12!important;
  font-weight:950!important;
  box-shadow:none!important;
}
.economic-dots,
.economic-title-with-arrows .strip-arrow{
  display:none!important;
}

/* Images dans l’Admin : vignettes/aperçus ajustés proprement */
.admin-table img,
.table-icon,
.table-icon.wide,
.preview,
.icon-preview{
  object-fit:contain!important;
  object-position:center!important;
  background:#ffffff!important;
}
.table-icon.wide{
  width:120px!important;
  height:72px!important;
  border-radius:10px!important;
  padding:5px!important;
}
.preview.icon-preview,
.preview{
  max-width:260px!important;
  max-height:160px!important;
  width:auto!important;
  height:auto!important;
  border-radius:14px!important;
}

/* Responsive mobile/tablette : lisibilité et non-débordement */
@media(max-width:1180px){
  .slider-stage{
    min-height:0!important;
    height:auto!important;
    aspect-ratio:1999/786!important;
  }
  .keyfig-grid-premium{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .economic-image-row{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .slider-stage{
    width:100vw!important;
    margin:0!important;
    aspect-ratio:1.05/1!important;
    height:auto!important;
    min-height:420px!important;
    max-height:none!important;
  }
  .slide img{
    object-fit:cover!important;
    object-position:center center!important;
  }
  .slider-arrow{
    width:42px!important;
    height:42px!important;
  }
  .slider-arrow.prev{left:10px!important;}
  .slider-arrow.next{right:10px!important;}

  .s2ia-keyfig-black{
    padding:42px 16px 52px!important;
  }
  .keyfig-grid-premium{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .keyfig-premium-card strong{
    font-size:38px!important;
  }
  .keyfig-premium-card p{
    font-size:19px!important;
  }

  .world-chambers-section{
    padding:42px 16px 50px!important;
  }
  .world-chambers-viewport{
    grid-template-columns:42px minmax(0,1fr)42px!important;
    gap:8px!important;
  }
  .world-chamber-card{
    flex-basis:230px!important;
    width:230px!important;
    height:124px!important;
    min-height:124px!important;
  }
  .world-chamber-card img{
    object-fit:cover!important;
  }

  .economic-logo-section{
    padding:42px 16px 50px!important;
  }
  .economic-image-row{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .economic-image-card img{
    aspect-ratio:2.2/1!important;
  }
  .economic-image-card strong{
    font-size:20px!important;
    min-height:auto!important;
  }
}

/* =========================================================
   S2IA V45 — Corrections strictes demandées
   Chiffres clés / Secteurs / Institutions économiques en style Speakers,
   suppression blocs stratégiques, slider full screen 1999x786,
   uniformisation des grands titres.
   ========================================================= */

/* Slider : pleine largeur, ratio exact 1999x786, sans cadrage centré */
.hero-slider{
  width:100vw!important;
  max-width:none!important;
  margin:0 calc(50% - 50vw)!important;
  padding:0!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border-radius:0!important;
}
.slider-stage{
  width:100vw!important;
  max-width:none!important;
  height:calc(100vw * 786 / 1999)!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:1999/786!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#ffffff!important;
}
.slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  background:#ffffff!important;
}
.slider-arrow{
  z-index:40!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:50px!important;
  height:50px!important;
}
.slider-arrow.prev{left:22px!important;right:auto!important;}
.slider-arrow.next{right:22px!important;left:auto!important;}

/* Suppression visuelle stricte de la zone stratégique indiquée */
.strategic-cards-section{display:none!important;}

/* Uniformisation des grands titres concernés : même esprit que Secteurs industriels */
.institutional-clean-title h2,
.diplomatic-partners-section .compact-strip-title h2,
.salon-presentation-head h2,
.program-themes-section .compact-strip-title h2,
.economic-logo-section .compact-strip-title h2,
.event-architecture-section .section-line-title h2,
.event-finance-section .compact-strip-title h2,
.event-pillars-section .section-line-title h2,
.state-heads-section .section-line-title h2,
.world-chambers-section .section-line-title h2,
.financial-partners-section .section-line-title h2,
.speakers-orators-section .section-line-title h2{
  font-family:Inter, Arial, Verdana, sans-serif!important;
  color:#071f46!important;
  font-size:clamp(32px,3vw,56px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 12px 28px rgba(6,26,67,.10)!important;
}
.institutional-clean-title,
.diplomatic-partners-section .compact-strip-title,
.salon-presentation-head,
.program-themes-section .compact-strip-title,
.economic-logo-section .compact-strip-title,
.event-architecture-section .section-line-title,
.event-finance-section .compact-strip-title,
.event-pillars-section .section-line-title,
.state-heads-section .section-line-title,
.world-chambers-section .section-line-title,
.financial-partners-section .section-line-title,
.speakers-orators-section .section-line-title{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(18px,2.4vw,42px)!important;
  margin-bottom:34px!important;
}
.section-line-title span,
.compact-strip-title.center-only:before,
.compact-strip-title.center-only:after,
.s2ia-section-title-dark span{
  height:4px!important;
  border-radius:999px!important;
}
@media(max-width:1180px){
  .institutional-clean-title h2,
  .diplomatic-partners-section .compact-strip-title h2,
  .salon-presentation-head h2,
  .program-themes-section .compact-strip-title h2,
  .economic-logo-section .compact-strip-title h2,
  .event-architecture-section .section-line-title h2,
  .event-finance-section .compact-strip-title h2,
  .event-pillars-section .section-line-title h2,
  .state-heads-section .section-line-title h2,
  .world-chambers-section .section-line-title h2,
  .financial-partners-section .section-line-title h2,
  .speakers-orators-section .section-line-title h2{
    white-space:normal!important;
    font-size:clamp(28px,6vw,42px)!important;
  }
}

/* Chiffres clés : même présentation que Speakers & orateurs + fond orange du logo */
.s2ia-keyfig-black{
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.20), transparent 24%),
    linear-gradient(135deg,#f26722 0%,#ff7a2b 42%,#de5417 100%)!important;
  padding:64px 4vw 74px!important;
}
.s2ia-keyfig-inner{width:min(100%,1720px)!important;margin:0 auto!important;}
.s2ia-keyfig-black .s2ia-section-title-dark{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(18px,2.4vw,42px)!important;
  margin-bottom:34px!important;
}
.s2ia-keyfig-black .s2ia-section-title-dark h2{
  color:#ffffff!important;
  font-family:Inter,Arial,Verdana,sans-serif!important;
  font-size:clamp(32px,3vw,56px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 12px 30px rgba(0,0,0,.28)!important;
}
.s2ia-keyfig-black .s2ia-section-title-dark span:first-child{background:#ffffff!important;opacity:.95!important;}
.s2ia-keyfig-black .s2ia-section-title-dark span:last-child{background:#2e8b36!important;}
.keyfig-grid-premium{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:26px!important;
  align-items:stretch!important;
  width:min(100%,1720px)!important;
  margin:0 auto!important;
}
.keyfig-premium-card{
  border:1px solid #dfe8f5!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 18px 42px rgba(6,26,67,.18)!important;
  display:flex!important;
  flex-direction:column!important;
  text-decoration:none!important;
  color:#071f46!important;
  min-height:360px!important;
  padding:0!important;
}
.keyfig-premium-icon{
  width:100%!important;
  height:190px!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#eef4fb!important;
  box-shadow:none!important;
}
.keyfig-premium-icon img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:brightness(1.04) contrast(1.03) saturate(1.05)!important;
}
.keyfig-premium-card strong{
  margin:0!important;
  padding:22px 16px 6px!important;
  display:block!important;
  color:#071f46!important;
  font-size:clamp(28px,2.3vw,42px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  text-shadow:none!important;
}
.keyfig-premium-card p{
  margin:0!important;
  padding:0 16px 24px!important;
  color:#18355f!important;
  font-size:clamp(16px,1vw,20px)!important;
  line-height:1.25!important;
  font-weight:850!important;
  text-align:center!important;
}

/* Secteurs industriels : même logique que Speakers & orateurs + fond vert pomme du logo, sans toucher aux images elles-mêmes */
.s2ia-sector-black-grid{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.20), transparent 24%),
    linear-gradient(135deg,#2e8b36 0%,#45b449 46%,#1f7e2d 100%)!important;
  padding:64px 4vw 78px!important;
}
.s2ia-sector-inner{width:min(100%,1720px)!important;margin:0 auto!important;}
.s2ia-sector-black-grid .s2ia-section-title-dark h2,
.s2ia-sector-black-grid .sector-title-dark h2{
  color:#ffffff!important;
  font-family:Inter,Arial,Verdana,sans-serif!important;
  font-size:clamp(32px,3vw,56px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 12px 30px rgba(0,0,0,.28)!important;
}
.s2ia-sector-black-grid .s2ia-section-title-dark span:first-child{background:#f26722!important;}
.s2ia-sector-black-grid .s2ia-section-title-dark span:last-child{background:#ffffff!important;opacity:.95!important;}
.sector-black-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:26px!important;
  align-items:stretch!important;
  width:min(100%,1720px)!important;
  margin:0 auto!important;
}
.sector-black-card{
  border:1px solid #dfe8f5!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 18px 42px rgba(6,26,67,.18)!important;
  display:flex!important;
  flex-direction:column!important;
  text-decoration:none!important;
  color:#071f46!important;
  min-height:360px!important;
  padding:0!important;
  position:relative!important;
}
.sector-black-card:before,
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  width:100%!important;
  height:190px!important;
  aspect-ratio:auto!important;
  margin:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#eef4fb!important;
  box-shadow:none!important;
  position:static!important;
  inset:auto!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:brightness(1.04) contrast(1.03) saturate(1.05)!important;
  opacity:1!important;
}
.sector-black-card h3{
  position:static!important;
  inset:auto!important;
  margin:0!important;
  padding:22px 18px 24px!important;
  min-height:150px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#ffffff!important;
  color:#071f46!important;
  text-align:center!important;
  font-size:clamp(19px,1.15vw,24px)!important;
  line-height:1.15!important;
  font-weight:950!important;
  text-shadow:none!important;
  box-shadow:none!important;
}

/* Institutions Africaines d’intégration économiques : style Speakers, images seules, sans titres ni textes */
.economic-logo-section{
  background:#ffffff!important;
  padding:60px 4vw 70px!important;
}
.economic-logo-section .partner-logo-cloud-inner{width:min(100%,1720px)!important;margin:0 auto!important;}
.economic-image-row{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:26px!important;
  align-items:stretch!important;
  width:min(100%,1720px)!important;
  margin:0 auto!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
  padding:0!important;
}
.economic-image-card,
.partner-logo-cloud-section.economic-logo-section .logo-cloud-card.economic-image-card{
  border:1px solid #dfe8f5!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:0 18px 42px rgba(6,26,67,.12)!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  min-height:250px!important;
  padding:0!important;
  position:relative!important;
}
.economic-image-card img{
  width:100%!important;
  height:250px!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  border-radius:0!important;
  filter:brightness(1.05) contrast(1.03) saturate(1.06)!important;
}
.economic-image-card strong,
.economic-image-card h3,
.economic-image-card p,
.economic-image-card span:not(.flag-badge){
  display:none!important;
}
.economic-dots,
.economic-title-with-arrows .strip-arrow{display:none!important;}

/* Responsive : garder le rendu propre sur tablette/mobile */
@media(max-width:1380px){
  .keyfig-grid-premium,
  .sector-black-grid,
  .economic-image-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .keyfig-premium-card,
  .sector-black-card{min-height:340px!important;}
}
@media(max-width:900px){
  .keyfig-grid-premium,
  .sector-black-grid,
  .economic-image-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .slider-stage{height:calc(100vw * 786 / 1999)!important;min-height:300px!important;}
}
@media(max-width:620px){
  .keyfig-grid-premium,
  .sector-black-grid,
  .economic-image-row{grid-template-columns:1fr!important;}
  .keyfig-premium-icon,
  .sector-black-visual{height:210px!important;}
  .economic-image-card img{height:220px!important;}
  .keyfig-premium-card,
  .sector-black-card{min-height:0!important;}
  .sector-black-card h3{min-height:auto!important;font-size:21px!important;}
  .keyfig-premium-card strong{font-size:38px!important;}
  .keyfig-premium-card p{font-size:19px!important;}
  .slider-stage{min-height:260px!important;}
}

/* =========================================================
   S2IA V46 — Corrections strictes secteurs / institutions / chambres / slider
   ========================================================= */

/* Slider : plein écran, aucune marge latérale, ratio bannières 1999x786 */
.hero-slider{
  width:100vw!important;
  max-width:100vw!important;
  margin:0 calc(50% - 50vw)!important;
  padding:0!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border-radius:0!important;
  line-height:0!important;
}
.slider-stage{
  width:100vw!important;
  max-width:100vw!important;
  height:calc(100vw * 786 / 1999)!important;
  max-height:none!important;
  min-height:0!important;
  aspect-ratio:1999/786!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#ffffff!important;
}
.slider-stage .slide,
.slider-stage [data-slide]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.slider-stage .slide img,
.slider-stage [data-slide] img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  background:#ffffff!important;
}
.slider-arrow{
  z-index:60!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.96)!important;
  color:#071f46!important;
  box-shadow:0 14px 32px rgba(6,26,67,.22)!important;
}
.slider-arrow.prev{left:24px!important;right:auto!important;}
.slider-arrow.next{right:24px!important;left:auto!important;}

/* Secteurs industriels exposants : même logique que Speakers, 2 lignes + défilement */
.s2ia-sector-black-grid{
  background:#39a64a!important;
  padding:64px 4vw 76px!important;
  overflow:hidden!important;
}
.s2ia-sector-inner{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
}
.sector-carousel-viewport{
  position:relative!important;
  width:min(100%,1780px)!important;
  margin:0 auto!important;
  padding:0 66px!important;
}
.sector-black-grid{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-rows:repeat(2,auto)!important;
  grid-auto-columns:calc((100% - 112px) / 5)!important;
  grid-template-columns:none!important;
  gap:30px 28px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:6px 0 14px!important;
}
.sector-black-grid::-webkit-scrollbar{display:none!important;}
.sector-black-card{
  min-height:430px!important;
  height:auto!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid #dbe7f4!important;
  box-shadow:0 18px 42px rgba(6,26,67,.18)!important;
  display:flex!important;
  flex-direction:column!important;
  position:relative!important;
  scroll-snap-align:start!important;
  color:#071f46!important;
}
.sector-black-card:before,
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  width:100%!important;
  height:225px!important;
  min-height:225px!important;
  flex:0 0 225px!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:none!important;
  border:0!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.06)!important;
  display:block!important;
}
.sector-black-card h3{
  position:static!important;
  width:100%!important;
  min-height:150px!important;
  margin:0!important;
  padding:24px 20px 26px!important;
  background:#ffffff!important;
  color:#071f46!important;
  text-align:center!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  font-size:clamp(21px,1.25vw,29px)!important;
  line-height:1.14!important;
  font-weight:950!important;
  text-shadow:none!important;
  box-shadow:none!important;
  white-space:normal!important;
}
.sector-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:6!important;
  width:54px!important;
  height:54px!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  box-shadow:0 16px 34px rgba(6,26,67,.22)!important;
}
.sector-prev{left:0!important;}
.sector-next{right:0!important;}
.sector-dots{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin:20px auto 0!important;
}
.sector-dot{
  width:10px!important;
  height:10px!important;
  border-radius:50%!important;
  border:0!important;
  background:rgba(255,255,255,.58)!important;
  cursor:pointer!important;
}
.sector-dot.is-active{
  width:32px!important;
  border-radius:999px!important;
  background:#ffffff!important;
}

/* Institutions Africaines d’intégration économiques : images seules, plein écran, flèches + pastilles */
.economic-logo-section{
  width:100vw!important;
  max-width:100vw!important;
  margin:0 calc(50% - 50vw)!important;
  padding:58px 0 62px!important;
  background:#ffffff!important;
  overflow:hidden!important;
}
.economic-logo-section .partner-logo-cloud-inner{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
}
.economic-logo-section .economic-title-with-arrows{
  width:min(100%,1780px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0 32px!important;
}
.economic-image-row{
  width:min(100%,1780px)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:8px 66px 16px!important;
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-columns:none!important;
  grid-auto-columns:calc((100% - 120px) / 5)!important;
  gap:30px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  justify-content:start!important;
  align-items:stretch!important;
}
.economic-image-row::-webkit-scrollbar{display:none!important;}
.economic-image-card{
  min-width:0!important;
  width:auto!important;
  height:170px!important;
  min-height:170px!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid #dbe7f4!important;
  box-shadow:0 16px 34px rgba(6,26,67,.10)!important;
  overflow:hidden!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  scroll-snap-align:start!important;
}
.economic-image-card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  display:block!important;
}
.economic-image-card strong,
.economic-image-card h3,
.economic-image-card p,
.economic-image-card span:not(.sr-only){
  display:none!important;
}
.economic-dots{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin:16px auto 0!important;
}
.economic-dot{
  width:10px!important;
  height:10px!important;
  border-radius:50%!important;
  border:0!important;
  background:#c7d7ec!important;
  cursor:pointer!important;
}
.economic-dot.is-active{
  width:32px!important;
  border-radius:999px!important;
  background:#0d4da8!important;
}

/* Chambres de commerce : bloc full width, images/logos uniquement, champs allongés */
.world-chambers-section{
  width:100vw!important;
  max-width:100vw!important;
  margin:0 calc(50% - 50vw)!important;
  padding:58px 0 64px!important;
  background:#ffffff!important;
  overflow:hidden!important;
}
.world-chambers-inner{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
}
.world-chambers-section .section-line-title{
  width:min(100%,1780px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0 32px!important;
}
.world-chambers-viewport{
  position:relative!important;
  width:min(100%,1780px)!important;
  margin:0 auto!important;
  padding:0 66px!important;
}
.world-chambers-track{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-columns:none!important;
  grid-auto-columns:360px!important;
  gap:30px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:8px 0 14px!important;
  justify-content:start!important;
}
.world-chambers-track::-webkit-scrollbar{display:none!important;}
.world-chamber-card{
  width:360px!important;
  height:150px!important;
  min-height:150px!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid #dbe7f4!important;
  box-shadow:0 16px 34px rgba(6,26,67,.10)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px 24px!important;
  overflow:hidden!important;
  scroll-snap-align:start!important;
}
.world-chamber-card img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}
.world-chamber-card h3,
.world-chamber-card strong,
.world-chamber-card p,
.world-chamber-card span:not(.sr-only){display:none!important;}
.world-chamber-dots{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin:16px auto 0!important;
}
.world-chamber-dot{
  width:10px!important;
  height:10px!important;
  border-radius:50%!important;
  border:0!important;
  background:#c7d7ec!important;
  cursor:pointer!important;
}
.world-chamber-dot.is-active{
  width:32px!important;
  border-radius:999px!important;
  background:#0d4da8!important;
}

@media(max-width:1320px){
  .sector-black-grid{grid-auto-columns:calc((100% - 56px) / 3)!important;}
  .economic-image-row{grid-auto-columns:calc((100% - 60px) / 3)!important;}
  .world-chambers-track{grid-auto-columns:320px!important;}
  .world-chamber-card{width:320px!important;}
}
@media(max-width:900px){
  .slider-stage{height:auto!important;aspect-ratio:1999/786!important;}
  .slider-stage .slide img,.slider-stage [data-slide] img{object-fit:contain!important;}
  .slider-arrow{width:42px!important;height:42px!important;}
  .slider-arrow.prev{left:10px!important;}
  .slider-arrow.next{right:10px!important;}
  .sector-carousel-viewport,.world-chambers-viewport{padding:0 52px!important;}
  .sector-black-grid{grid-auto-columns:80vw!important;grid-template-rows:repeat(2,auto)!important;gap:22px!important;}
  .sector-black-card{min-height:360px!important;}
  .sector-black-visual{height:190px!important;min-height:190px!important;flex-basis:190px!important;}
  .sector-black-card h3{font-size:22px!important;min-height:124px!important;padding:22px 16px!important;}
  .economic-image-row{grid-auto-columns:78vw!important;padding-left:52px!important;padding-right:52px!important;}
  .economic-image-card{height:150px!important;}
  .world-chambers-track{grid-auto-columns:78vw!important;}
  .world-chamber-card{width:78vw!important;height:138px!important;}
}

/* =========================================================
   S2IA V47 — Corrections strictes demandées
   ========================================================= */

/* Slider : plein écran strict, ratio bannières 1999x786, pas de centrage coupé */
.hero-slider{
  width:100vw!important;
  max-width:100vw!important;
  margin:0 calc(50% - 50vw)!important;
  padding:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#ffffff!important;
}
.slider-stage{
  width:100vw!important;
  max-width:100vw!important;
  height:calc(100vw * 786 / 1999)!important;
  max-height:none!important;
  min-height:0!important;
  aspect-ratio:1999/786!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:#ffffff!important;
}
.slider-stage .slide,
.slider-stage [data-slide]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.slider-stage .slide img,
.slider-stage [data-slide] img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
.slider-arrow{
  z-index:80!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  border:2px solid rgba(13,77,168,.12)!important;
  box-shadow:0 16px 34px rgba(6,26,67,.24)!important;
}
.slider-arrow.prev{left:24px!important;right:auto!important;}
.slider-arrow.next{right:24px!important;left:auto!important;}

/* Partenaires diplomatiques -> Pays participants et portage diplomatique : noms sous drapeaux */
.diplomatic-partners-section .compact-strip-title h2{
  color:#071f46!important;
}
.diplomatic-track{
  align-items:flex-start!important;
  gap:32px!important;
}
.diplomatic-card{
  min-height:136px!important;
  justify-content:flex-start!important;
  gap:10px!important;
}
.diplomatic-card strong{
  display:block!important;
  color:#071f46!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:850!important;
  text-align:center!important;
  max-width:118px!important;
}

/* Présentation salon : titre demandé, champ texte réduit, bouton En savoir+ */
.salon-presentation-head h2{
  color:#071f46!important;
  font-weight:950!important;
  text-align:center!important;
  font-size:clamp(30px,2.7vw,52px)!important;
  line-height:1.05!important;
  margin-bottom:18px!important;
}
.salon-presentation-grid{
  grid-template-columns:minmax(0,1fr) 420px!important;
  gap:32px!important;
  align-items:stretch!important;
}
.salon-presentation-text{
  max-height:none!important;
  padding:34px 38px!important;
}
.salon-presentation-text p{
  font-size:17px!important;
  line-height:1.75!important;
  font-family:Verdana,Arial,sans-serif!important;
  text-align:justify!important;
}
.salon-readmore-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:0 28px!important;
  margin-top:20px!important;
  border:0!important;
  border-radius:999px!important;
  background:#0d4da8!important;
  color:#ffffff!important;
  font-size:16px!important;
  font-weight:900!important;
  cursor:pointer!important;
  box-shadow:0 14px 30px rgba(13,77,168,.22)!important;
}
.salon-presentation-modal-card{
  max-width:960px!important;
}
.salon-presentation-modal-card p{
  font-size:18px!important;
  line-height:1.75!important;
  text-align:justify!important;
}

/* Secteurs industriels : 2 lignes par page, flèches centrées, étiquettes blanches arrondies, texte noir */
.s2ia-sector-black-grid{
  background:#39a64a!important;
  padding:64px 0 80px!important;
  overflow:hidden!important;
}
.s2ia-sector-inner{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
}
.s2ia-sector-black-grid .s2ia-section-title-dark,
.s2ia-sector-black-grid .sector-title-dark{
  width:min(100%,1720px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0 32px!important;
}
.s2ia-sector-black-grid .s2ia-section-title-dark h2,
.s2ia-sector-black-grid .sector-title-dark h2{
  color:#ffffff!important;
  font-size:clamp(34px,3vw,58px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  white-space:nowrap!important;
  text-shadow:0 10px 26px rgba(0,0,0,.20)!important;
}
.sector-carousel-viewport{
  position:relative!important;
  width:min(100%,1840px)!important;
  margin:0 auto!important;
  padding:0 92px!important;
  overflow:visible!important;
}
.sector-carousel-track,
.sector-black-grid.sector-carousel-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  grid-auto-flow:unset!important;
  grid-auto-columns:unset!important;
}
.sector-carousel-track::-webkit-scrollbar{display:none!important;}
.sector-page{
  flex:0 0 100%!important;
  min-width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,auto)!important;
  gap:34px 34px!important;
  align-items:start!important;
  scroll-snap-align:start!important;
  padding:4px 4px 8px!important;
  box-sizing:border-box!important;
}
.sector-black-card{
  min-height:0!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  padding:0!important;
  position:relative!important;
  color:#071f46!important;
}
.sector-black-card:before,
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  flex:0 0 auto!important;
  aspect-ratio:1.85/1!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid rgba(255,255,255,.86)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.15)!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.06)!important;
  opacity:1!important;
}
.sector-black-card h3{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  min-height:68px!important;
  margin:0!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  color:#071f46!important;
  text-align:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:clamp(17px,1vw,22px)!important;
  line-height:1.15!important;
  font-weight:850!important;
  text-shadow:none!important;
  box-shadow:0 10px 22px rgba(0,0,0,.10)!important;
  white-space:normal!important;
  overflow:visible!important;
}
.sector-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:10!important;
  width:62px!important;
  height:62px!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#ffffff 0%,#eef6ff 100%)!important;
  color:#0d4da8!important;
  border:3px solid rgba(255,255,255,.95)!important;
  font-size:42px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 16px 34px rgba(0,0,0,.20)!important;
}
.sector-arrow:hover{background:#f26722!important;color:#ffffff!important;}
.sector-prev{left:16px!important;}
.sector-next{right:16px!important;}
.sector-dots{margin-top:24px!important;}
.sector-dot{background:rgba(255,255,255,.58)!important;}
.sector-dot.is-active{background:#ffffff!important;}

/* Partenaires institutionnels : titre renommé, images seules conservées */
.economic-logo-section .compact-strip-title h2{
  color:#071f46!important;
}

/* Fonds des sections demandées sans toucher aux vignettes */
.speakers-orators-section{
  background:#123f73!important;
}
.state-heads-section{
  background:#5f6368!important;
}
.financial-partners-section{
  background:#f6aa54!important;
}
.event-pillars-section{
  background:#d3d3d3!important;
}

/* Titres sur fonds colorés : garder les traits et titres lisibles */
.speakers-orators-section .section-line-title h2,
.state-heads-section .section-line-title h2,
.financial-partners-section .section-line-title h2,
.event-pillars-section .section-line-title h2{
  color:#ffffff!important;
  text-shadow:0 10px 24px rgba(0,0,0,.20)!important;
}
.event-pillars-section .section-line-title h2{color:#071f46!important;text-shadow:none!important;}

@media(max-width:1320px){
  .sector-page{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,auto)!important;}
}
@media(max-width:900px){
  .slider-stage{height:auto!important;aspect-ratio:1999/786!important;min-height:280px!important;}
  .slider-stage .slide img,.slider-stage [data-slide] img{object-fit:contain!important;background:#ffffff!important;}
  .sector-carousel-viewport{padding:0 64px!important;}
  .sector-page{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;}
  .sector-arrow{width:52px!important;height:52px!important;border-radius:16px!important;font-size:34px!important;}
}
@media(max-width:640px){
  .salon-presentation-grid{grid-template-columns:1fr!important;}
  .salon-presentation-head h2{font-size:30px!important;}
  .salon-presentation-text{padding:24px 20px!important;}
  .salon-presentation-text p{font-size:16px!important;line-height:1.65!important;}
  .sector-carousel-viewport{padding:0 48px!important;}
  .sector-page{grid-template-columns:1fr!important;grid-template-rows:none!important;gap:24px!important;}
  .sector-black-visual{aspect-ratio:1.85/1!important;}
  .sector-black-card h3{font-size:20px!important;}
  .sector-prev{left:8px!important;}.sector-next{right:8px!important;}
}

/* =========================================================
   S2IA V48 — corrections ciblées : secteurs, présentation, partenaires institutionnels
   ========================================================= */

/* Présentation du salon : éviter tout débordement et rendre le texte lisible */
.salon-presentation-section{
  overflow:hidden!important;
  padding:64px 4vw 72px!important;
  background:#ffffff!important;
}
.salon-presentation-inner{
  width:min(100%,1680px)!important;
  margin:0 auto!important;
}
.salon-presentation-head{
  max-width:100%!important;
  padding:0 12px!important;
  margin:0 auto 34px!important;
  text-align:center!important;
  overflow:hidden!important;
}
.salon-presentation-head h2{
  display:block!important;
  width:100%!important;
  max-width:1540px!important;
  margin:0 auto 18px!important;
  color:#071f46!important;
  font-size:clamp(32px,2.35vw,48px)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-align:center!important;
}
.salon-presentation-grid{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,430px)!important;
  gap:34px!important;
  align-items:start!important;
}
.salon-presentation-text{
  min-height:auto!important;
  max-height:none!important;
  padding:34px 38px!important;
  border-radius:28px!important;
  background:#f8fbff!important;
  border:1px solid #dce7f5!important;
  box-shadow:0 16px 34px rgba(6,26,67,.08)!important;
}
.salon-presentation-text p{
  font-family:Verdana,Arial,sans-serif!important;
  font-size:19px!important;
  line-height:1.78!important;
  color:#071f46!important;
  text-align:justify!important;
  margin:0!important;
}
.salon-readmore-btn{
  position:relative!important;
  margin-top:22px!important;
  min-height:54px!important;
  padding:0 30px!important;
  border-radius:18px!important;
  font-size:18px!important;
}

/* Secteurs industriels exposants : vignettes propres type speakers, image en haut + texte en bas */
.s2ia-sector-black-grid{
  background:#39a64a!important;
  padding:64px 0 82px!important;
  overflow:hidden!important;
}
.s2ia-sector-inner{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  overflow:visible!important;
}
.s2ia-sector-black-grid .sector-title-dark{
  width:min(100%,1720px)!important;
  margin:0 auto 40px!important;
  padding:0 32px!important;
}
.s2ia-sector-black-grid .sector-title-dark h2{
  color:#ffffff!important;
  text-shadow:0 9px 24px rgba(0,0,0,.18)!important;
  white-space:normal!important;
}
.sector-carousel-viewport{
  position:relative!important;
  width:min(100%,1840px)!important;
  margin:0 auto!important;
  padding:0 92px!important;
  overflow:visible!important;
}
.sector-carousel-track,
.sector-black-grid.sector-carousel-track{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  gap:0!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:0!important;
  margin:0!important;
}
.sector-carousel-track::-webkit-scrollbar{display:none!important;}
.sector-page{
  flex:0 0 100%!important;
  min-width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,auto)!important;
  gap:34px 34px!important;
  align-items:stretch!important;
  scroll-snap-align:start!important;
  padding:2px 4px 8px!important;
  box-sizing:border-box!important;
}
.sector-black-card{
  min-height:360px!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  border-radius:28px!important;
  overflow:hidden!important;
  box-shadow:0 18px 38px rgba(0,0,0,.16)!important;
  padding:0!important;
  gap:0!important;
  position:relative!important;
}
.sector-black-card:before,
.sector-black-card:after{display:none!important;content:none!important;}
.sector-black-visual{
  width:100%!important;
  height:auto!important;
  flex:0 0 auto!important;
  aspect-ratio:1.55/1!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:0!important;
  box-shadow:none!important;
}
.sector-black-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:brightness(1.08) contrast(1.03) saturate(1.05)!important;
  opacity:1!important;
}
.sector-black-card h3{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  min-height:116px!important;
  flex:1 1 auto!important;
  margin:0!important;
  padding:20px 18px!important;
  border-radius:0!important;
  background:#ffffff!important;
  color:#071f46!important;
  text-align:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:clamp(19px,1.2vw,24px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  text-shadow:none!important;
  box-shadow:none!important;
  white-space:normal!important;
  overflow:visible!important;
}
.sector-arrow{
  top:50%!important;
  transform:translateY(-50%)!important;
  width:64px!important;
  height:64px!important;
  border-radius:50%!important;
  background:#ffffff!important;
  color:#0d4da8!important;
  border:3px solid rgba(13,77,168,.10)!important;
  font-size:44px!important;
  line-height:1!important;
  box-shadow:0 18px 38px rgba(0,0,0,.20)!important;
}
.sector-prev{left:18px!important;}
.sector-next{right:18px!important;}
.sector-arrow:hover{background:#071f46!important;color:#ffffff!important;}
.sector-dots{margin-top:28px!important;}
.sector-dot{background:rgba(255,255,255,.65)!important;}
.sector-dot.is-active{background:#f26722!important;}

/* Partenaires institutionnels : uniquement photos/images, aucun texte visible dans les vignettes */
.economic-logo-section{
  background:#ffffff!important;
  padding:58px 0 66px!important;
  overflow:hidden!important;
}
.economic-logo-section .partner-logo-cloud-inner{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
}
.economic-logo-section .economic-title-with-arrows{
  width:min(100%,1720px)!important;
  margin:0 auto 34px!important;
  padding:0 34px!important;
}
.economic-image-row{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:26px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:0 86px 14px!important;
  margin:0!important;
}
.economic-image-row::-webkit-scrollbar{display:none!important;}
.economic-image-card{
  flex:0 0 420px!important;
  width:420px!important;
  min-width:420px!important;
  height:230px!important;
  min-height:230px!important;
  max-height:230px!important;
  padding:0!important;
  margin:0!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid #dfe8f5!important;
  box-shadow:0 18px 38px rgba(6,26,67,.10)!important;
  scroll-snap-align:start!important;
}
.economic-image-card img{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  border-radius:0!important;
  border:0!important;
  box-shadow:none!important;
  filter:brightness(1.06) contrast(1.02) saturate(1.04)!important;
}
.economic-image-card strong,
.economic-image-card h3,
.economic-image-card p,
.economic-image-card span:not(.sr-only),
.economic-image-card .program-theme-body,
.economic-image-card .logo-card-title{
  display:none!important;
  visibility:hidden!important;
}

@media(max-width:1280px){
  .sector-page{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,auto)!important;}
  .sector-black-card{min-height:340px!important;}
  .economic-image-card{flex-basis:360px!important;width:360px!important;min-width:360px!important;height:210px!important;min-height:210px!important;}
}
@media(max-width:900px){
  .salon-presentation-grid{grid-template-columns:1fr!important;}
  .salon-presentation-head h2{font-size:30px!important;}
  .salon-presentation-text{padding:24px 20px!important;}
  .salon-presentation-text p{font-size:17px!important;line-height:1.68!important;}
  .sector-carousel-viewport{padding:0 62px!important;}
  .sector-page{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;}
  .sector-arrow{width:52px!important;height:52px!important;font-size:34px!important;}
  .economic-image-row{padding-left:62px!important;padding-right:62px!important;}
  .economic-image-card{flex-basis:78vw!important;width:78vw!important;min-width:78vw!important;height:220px!important;min-height:220px!important;}
}
@media(max-width:640px){
  .sector-carousel-viewport{padding:0 48px!important;}
  .sector-page{grid-template-columns:1fr!important;grid-template-rows:none!important;gap:24px!important;}
  .sector-black-card{min-height:0!important;}
  .sector-black-visual{aspect-ratio:1.7/1!important;}
  .sector-black-card h3{min-height:94px!important;font-size:20px!important;padding:18px 14px!important;}
  .sector-prev{left:8px!important;}.sector-next{right:8px!important;}
  .economic-image-card{flex-basis:84vw!important;width:84vw!important;min-width:84vw!important;height:190px!important;min-height:190px!important;}
}

/* V49 - Refonte ciblée : Secteurs industriels exposants uniquement */
.s2ia-sector-black-grid{
  background:
    radial-gradient(circle at 8% 6%, rgba(255,255,255,.10), transparent 20%),
    linear-gradient(180deg, #3dae49 0%, #34a845 100%)!important;
}
.s2ia-sector-inner{
  position:relative!important;
}
.s2ia-sector-black-grid .sector-title-dark{
  margin-bottom:34px!important;
}
.sector-carousel-viewport{
  padding:10px 102px 0!important;
}
.sector-page{
  gap:30px 28px!important;
  align-items:start!important;
}
.sector-black-card{
  min-height:0!important;
  height:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  padding:0 6px 14px!important;
  gap:0!important;
  align-items:stretch!important;
  transform:none!important;
  transition:transform .25s ease!important;
}
.sector-black-card:hover{
  transform:translateY(-4px)!important;
}
.sector-black-visual{
  width:100%!important;
  aspect-ratio:1.62 / 1!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#ffffff!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:0 14px 30px rgba(7,31,70,.16)!important;
}
.sector-black-visual img{
  border-radius:26px!important;
  filter:none!important;
  transform:scale(1.001)!important;
}
.sector-black-card h3{
  width:calc(100% - 34px)!important;
  min-height:96px!important;
  margin:-18px auto 0!important;
  padding:18px 18px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(13,77,168,.10)!important;
  box-shadow:0 14px 24px rgba(7,31,70,.12)!important;
  color:#071f46!important;
  font-size:clamp(20px,1.18vw,24px)!important;
  font-weight:900!important;
  line-height:1.14!important;
  letter-spacing:-0.02em!important;
  text-align:center!important;
  text-shadow:none!important;
}
.sector-arrow{
  width:70px!important;
  height:70px!important;
  border-radius:22px!important;
  border:0!important;
  background:linear-gradient(180deg,#ffffff 0%, #eef4ff 100%)!important;
  color:#0d4da8!important;
  font-size:38px!important;
  font-weight:900!important;
  box-shadow:0 16px 34px rgba(7,31,70,.18)!important;
}
.sector-arrow:hover{
  background:linear-gradient(180deg,#f26722 0%, #ff8a3d 100%)!important;
  color:#ffffff!important;
}
.sector-prev{left:18px!important;}
.sector-next{right:18px!important;}
.sector-dots{
  margin-top:18px!important;
}
.sector-dot{
  width:12px!important;
  height:12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.60)!important;
}
.sector-dot.is-active{
  width:40px!important;
  background:#f26722!important;
}

@media(max-width:1280px){
  .sector-carousel-viewport{padding:8px 84px 0!important;}
  .sector-page{gap:26px!important;}
  .sector-black-card h3{width:calc(100% - 24px)!important;font-size:22px!important;}
}
@media(max-width:900px){
  .sector-carousel-viewport{padding:8px 68px 0!important;}
  .sector-page{gap:22px!important;}
  .sector-black-visual{aspect-ratio:1.58/1!important;}
  .sector-black-card h3{min-height:92px!important;padding:16px 16px!important;font-size:20px!important;}
  .sector-arrow{width:56px!important;height:56px!important;font-size:30px!important;border-radius:18px!important;}
}
@media(max-width:640px){
  .sector-carousel-viewport{padding:8px 52px 0!important;}
  .sector-page{gap:20px!important;}
  .sector-black-card{padding:0 2px 10px!important;}
  .sector-black-visual{aspect-ratio:1.6/1!important;border-radius:22px!important;}
  .sector-black-visual img{border-radius:22px!important;}
  .sector-black-card h3{width:calc(100% - 18px)!important;min-height:84px!important;margin:-16px auto 0!important;padding:15px 14px!important;border-radius:18px!important;font-size:19px!important;line-height:1.12!important;}
  .sector-arrow{width:50px!important;height:50px!important;font-size:28px!important;border-radius:16px!important;}
  .sector-prev{left:6px!important;}
  .sector-next{right:6px!important;}
}
