/* Empire-MIREB — site public (v3.7) */
:root{--pb:#0071bc;--pd:#00456e;--pk:#002f4b;--pg:#3c3c3c;--pr:#c8102e}
html,body.pub-body{margin:0;padding:0;background:#fff;color:#1d1d1d;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.pub-body *{box-sizing:border-box}
.pub-body a{color:inherit;text-decoration:none}
.pub-body a:focus-visible,.pub-body button:focus-visible{outline:3px solid #ffb400;outline-offset:2px}
.pub-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;padding-top:calc(14px + env(safe-area-inset-top,0px));background:#fff}
.pub-logo{display:flex;align-items:center;gap:8px}
.pub-logo-txt{font-size:22px;font-weight:800;color:var(--pk);letter-spacing:-.3px}
.pub-logo-ico{width:34px;height:34px}
.pub-members{font-size:14px;font-weight:600;color:#5a5a5a;text-align:right}
.pub-members:hover{color:var(--pb)}
.pub-bar{display:flex;align-items:center;justify-content:space-between;background:var(--pg);padding:16px 22px}
.pub-burger{background:none;border:0;padding:6px;cursor:pointer;display:flex;flex-direction:column;gap:7px;width:44px}
.pub-burger span{display:block;height:4px;background:#fff;border-radius:2px}
.pub-emploi{background:#fff;color:#1d1d1d;font-weight:700;font-size:16px;padding:9px 22px;border:2px solid #777;border-radius:6px}
.pub-emploi:hover{background:#e9f3fa}
.pub-menu{background:var(--pk);display:flex;flex-direction:column}
.pub-menu[hidden]{display:none}
.pub-menu a{color:#fff;padding:15px 24px;font-size:17px;font-weight:600;border-top:1px solid rgba(255,255,255,.12)}
.pub-menu a.on,.pub-menu a:hover{background:var(--pb)}
/* bannière */
.pub-hero{background:linear-gradient(rgba(0,47,75,.72),rgba(0,47,75,.72)),radial-gradient(circle at 20% 20%,#3a8fc4,#00456e 70%);color:#fff;position:relative;padding:74px 22px 42px;text-align:center}
.pub-soon{position:absolute;top:0;left:0;background:var(--pb);color:#fff;font-weight:700;font-size:17px;padding:14px 26px;text-transform:uppercase}
.pub-soon:hover{background:#005a96}
.pub-hero-in{max-width:760px;margin:0 auto}
.pub-kicker{margin:0 0 8px;font-size:18px;font-weight:600;opacity:.9}
.pub-hero h1{margin:0 0 14px;font-size:clamp(28px,7vw,46px);line-height:1.15;font-weight:800}
.pub-verse{margin:0 0 26px;font-size:19px}
.pub-hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.pub-btn{display:inline-block;background:var(--pb);color:#fff!important;font-weight:700;padding:15px 30px;font-size:16px;border:2px solid var(--pb);text-transform:uppercase;letter-spacing:.3px}
.pub-btn:hover{background:#005a96;border-color:#005a96}
.pub-btn-line{background:#fff;color:var(--pb)!important}
.pub-btn-line:hover{background:#e9f3fa}
.pub-btn-white{background:#fff;color:var(--pd)!important;border-color:#fff}
.pub-btn-white:hover{background:#e9f3fa;border-color:#e9f3fa}
.pub-band{background:var(--pb);color:#fff;display:flex;justify-content:center;gap:34px;flex-wrap:wrap;padding:24px 16px}
.pub-band span{font-size:17px;text-transform:uppercase;font-weight:600}
.pub-band strong{font-size:44px;font-weight:800;margin-right:6px;text-transform:none}
.pub-tabs{display:flex;gap:0;padding:26px 20px 0;overflow-x:auto}
.pub-tabs a{background:#e5eef5;color:var(--pd);font-weight:700;padding:18px 26px;text-transform:uppercase;white-space:nowrap}
.pub-tabs a.on{background:var(--pd);color:#fff}
.pub-sec{max-width:1100px;margin:0 auto;padding:44px 22px 30px}
.pub-sec h2{font-size:clamp(28px,6vw,42px);line-height:1.2;margin:0 0 28px;font-weight:800;color:#1d1d1d}
.pub-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:24px}
.pub-card{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.14);display:block}
.pub-card img,.pub-card-ph{width:100%;height:210px;object-fit:cover;display:block;background:linear-gradient(135deg,var(--pd),var(--pb))}
.pub-card-b{padding:20px 20px 26px}
.pub-card-b small{font-weight:700;color:#5a5a5a;font-size:14px}
.pub-card-b h3{margin:10px 0 0;font-size:23px;line-height:1.3;font-weight:500;color:#333}
.pub-card:hover h3{color:var(--pb)}
.pub-empty{color:#666}
.pub-more{text-align:center;margin:36px 0 0}
.pub-join{background:var(--pk);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:40px 6vw;margin-top:30px}
.pub-join h2{margin:0 0 10px;font-size:clamp(26px,5vw,36px);font-weight:800}
.pub-join p{margin:0;max-width:560px;font-size:18px;line-height:1.5}
.pub-join p.pub-join-k{font-size:17px;margin-bottom:6px;opacity:.85}
.pub-wrap{max-width:1100px;margin:0 auto;padding:22px 16px 40px}
.pub-back{display:inline-block;margin-bottom:14px;font-weight:700;color:var(--pb)}
.pub-foot{background:var(--pg);color:#ddd;text-align:center;padding:22px 16px calc(22px + env(safe-area-inset-bottom,0px));font-size:14px}
@media (max-width:520px){.pub-band strong{font-size:38px}.pub-btn{padding:14px 22px}.pub-members{font-size:13px}.pub-logo-txt{font-size:20px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* inscription */
.pub-signup{max-width:400px;margin:34px auto 10px;padding:26px 22px;background:#f2f7fb;border-top:4px solid var(--pb)}
.pub-signup h2{margin:0 0 8px;font-size:22px;line-height:1.25;color:var(--pk)}
.pub-signup p{margin:0 0 16px;color:#444;font-size:15px;line-height:1.5}
.pub-signup-form label{display:block;font-weight:600;font-size:14px;margin-bottom:14px}
.pub-signup-form input{display:block;width:100%;margin-top:6px;padding:12px;font-size:16px;border:1px solid #9bb3c4;background:#fff;border-radius:4px}
.pub-signup-form .pub-btn{width:100%;cursor:pointer;text-transform:none;font-size:17px}
.pub-signup-form .pub-btn[disabled]{opacity:.6;cursor:wait}
.pub-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
.pub-signup-msg{margin:14px 0 0!important;font-weight:600;font-size:15px}
.pub-signup-msg.ok{color:#0a6b2e}.pub-signup-msg.err{color:#b00020}
