/* Style partagé — pages intérieures B PULSE (langage étalon) */
:root{--ink:#16181D;--sec:#5B6470;--line:#E6E8EC;--bg:#FFFFFF;--warm:#FAFAF9;--acc:#B7DFBA;--acc2:#A0CFA4;--accd:#2E6132;--gold:#B3905F}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html.lang-fr .en{display:none!important}
html.lang-en .fr{display:none!important}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:17px;line-height:1.68;-webkit-font-smoothing:antialiased}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{letter-spacing:-.015em}
.k{font-size:15.5px;font-weight:600;letter-spacing:.13em;color:var(--accd);text-transform:uppercase;margin-bottom:18px}
.k::before{content:"";display:inline-block;width:32px;height:12px;border-radius:3px;background:var(--acc);margin-right:13px;vertical-align:1px}
.lead{color:var(--sec);max-width:680px;font-size:18px}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--acc);color:#17361A;padding:14px 28px;border-radius:8px;font-weight:600;font-size:15.5px;text-decoration:none;transition:background .18s ease, transform .18s ease}
.btn:hover{background:var(--acc2);transform:translateY(-1px)}
.btn.o{background:#fff;color:var(--ink);border:1.5px solid #D7DBE0}
.btn.o:hover{background:var(--warm);border-color:var(--ink)}
.tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.08em;color:#9a6a1f;background:#faf3e3;border:1px solid #ecd9ac;padding:2px 7px;border-radius:4px;vertical-align:middle}
.rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.rv{opacity:1;transform:none;transition:none}}
.regbar{background:var(--ink);color:#C9CDD3;font-size:12.5px;letter-spacing:.05em}
.regbar .wrap{display:flex;justify-content:space-between;gap:16px;padding:8px 32px}
.regbar b{color:#fff;font-weight:500}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;gap:28px;padding:14px 32px}
.logo img{height:60px;width:auto}
nav{display:flex;gap:24px;margin-left:auto;font-size:14.5px;font-weight:500;color:#3d454f}
nav a{text-decoration:none;position:relative;padding:4px 0}
nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--accd);transition:right .22s ease}
nav a:hover::after,nav a.on::after{right:0}
nav a.on{color:var(--accd)}
.lang-sw{display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden;font-size:12px;font-weight:700}
.lang-sw button{border:0;background:transparent;padding:7px 11px;cursor:pointer;font:inherit;color:var(--sec)}
.lang-sw button.on{background:var(--ink);color:#fff}
.pagehead{background:var(--warm);border-bottom:1px solid var(--line)}
.pagehead .wrap{padding-top:64px;padding-bottom:56px}
h1{font-size:clamp(32px,3.6vw,46px);font-weight:700;line-height:1.1;margin-bottom:14px}
section{padding:88px 0}
h2{font-size:clamp(26px,2.6vw,34px);font-weight:700;margin-bottom:16px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.imgcard{border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(22,24,29,.13);border:1px solid var(--line)}
.imgcard img{width:100%;object-fit:cover}
.ph2{background:var(--warm);border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:12px;padding:14px 18px;color:#8a919b;font-size:12.5px;font-style:italic}
.prose p{margin-bottom:16px;color:#39414c;max-width:760px}
.prose .sig{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--ink);border-left:3px solid var(--gold);padding-left:12px;margin-top:8px;display:inline-block}
.alt{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cta2{background:var(--ink);color:#fff;text-align:center}
.cta2 h2{color:#fff}
.cta2 p{color:#B9BFC7;max-width:640px;margin:0 auto 30px}
.goldline{width:64px;height:3px;background:linear-gradient(90deg,#c9a36a,#b3905f);margin:0 auto 30px;border-radius:2px}
footer{padding:48px 0;font-size:14px;color:var(--sec)}
footer .wrap{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center}
footer .flogo img{height:36px;width:auto}
/* menu : jamais sur deux lignes */
header .wrap{max-width:1340px;gap:20px}
nav{gap:18px;font-size:14px;flex:none}
nav a{white-space:nowrap}
header .btn{padding:11px 18px;font-size:14px;white-space:nowrap;flex:none}
.lang-sw{flex:none}
.logo{flex:none}
@media(max-width:1150px){nav{display:none}}
@media(max-width:1020px){
 .split{grid-template-columns:1fr;gap:40px}
 section{padding:64px 0}
 footer .wrap{grid-template-columns:1fr;text-align:center;justify-items:center}
}

/* badge Fièrement Fabriqué au Canada */
.mic{display:inline-flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 20px;font-weight:700;font-size:16px;color:#2c333d;letter-spacing:-.01em;box-shadow:0 6px 18px rgba(22,24,29,.05)}
.mic .leaf{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle,#F6DFD9 0%,#FBF1EE 55%,rgba(251,241,238,0) 78%);display:grid;place-items:center;color:#C8452F;flex:none}
.mic.s{padding:8px 14px;font-size:13.5px;gap:9px;border-radius:10px}
.mic.s .leaf{width:24px;height:24px}

/* image à la hauteur du bloc texte */
.match-h{align-self:stretch}
.match-h img{width:100%;height:100%;object-fit:cover}
@media(max-width:1020px){.match-h{align-self:auto}.match-h img{height:auto;aspect-ratio:16/9}}

/* ---- mobile : pas de défilement horizontal + menu hamburger ---- */
html,body{overflow-x:clip}
.burger{display:none;flex:none;background:#fff;border:1px solid var(--line);border-radius:8px;width:42px;height:42px;cursor:pointer;color:var(--ink);align-items:center;justify-content:center;padding:0}
.burger svg{pointer-events:none}
@media(max-width:1150px){
 .burger{display:inline-flex}
 .lang-sw{margin-left:auto}
 nav{display:none}
 header.mnav-open nav{display:flex;position:absolute;top:100%;left:0;right:0;margin:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:6px 28px 14px;font-size:16px;box-shadow:0 22px 44px rgba(22,24,29,.14)}
 header.mnav-open nav a{padding:13px 0;border-bottom:1px solid var(--line)}
 header.mnav-open nav a:last-child{border-bottom:0}
}
@media(max-width:760px){
 header .btn{display:none}
 .logo img{height:46px}
 .regbar .wrap{flex-wrap:wrap;row-gap:2px;justify-content:flex-start}
}

/* ---- alignement central global du contenu ---- */
section,.pagehead{text-align:center}
.lead,.prose p{margin-left:auto;margin-right:auto}
.prose .sig{border-left:0;border-bottom:3px solid var(--gold);padding:0 0 8px}
form,.formgrid aside,.side{text-align:left}
.team .tm,.tm{justify-content:center;text-align:left}
footer{text-align:center}
footer .wrap{grid-template-columns:1fr;justify-items:center;gap:12px}
.regbar .wrap{justify-content:center;gap:28px}
