/* ============================================================
   RackStack — thème ZanCMS pour fabricant de racks empilables
   Marché : France / Europe · Tonalité : pro, naturelle, vive
   ============================================================ */
:root{
  --rk-leaf:#2f7d4f;
  --rk-leaf-dark:#245f3c;
  --rk-forest:#1d3b2c;
  --rk-ink:#22302a;
  --rk-amber:#e8a33d;
  --rk-amber-dark:#c9861f;
  --rk-sand:#f4f1e8;
  --rk-cream:#faf8f2;
  --rk-line:#e3ded1;
  --rk-muted:#6b7a70;
  --rk-radius:12px;
  --rk-radius-lg:20px;
  --rk-shadow:0 14px 38px rgba(34,48,42,.12);
  --rk-shadow-sm:0 6px 18px rgba(34,48,42,.08);
  --rk-font:'Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body.rackstack-theme{font-family:var(--rk-font);font-size:15.5px;line-height:1.65;color:var(--rk-ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;transition:color .2s,background .2s,border-color .2s,transform .2s}
ul,ol{list-style:none}
button{font-family:inherit;cursor:pointer}
input,textarea,select{font-family:inherit;font-size:14.5px}
h1,h2,h3,h4{line-height:1.25;font-weight:800;letter-spacing:-.01em}
.rk-wrap{width:min(1240px,92vw);margin:0 auto}
.skip-nav{position:absolute;left:-9999px;top:0;z-index:3000;background:var(--rk-leaf);color:#fff;padding:10px 18px;border-radius:0 0 10px 0}
.skip-nav:focus{left:0}

/* ---------- Boutons ---------- */
.rk-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 24px;border-radius:999px;font-weight:700;font-size:14.5px;border:2px solid transparent;transition:all .2s;white-space:nowrap}
.rk-btn-leaf{background:var(--rk-leaf);color:#fff}
.rk-btn-leaf:hover{background:var(--rk-leaf-dark);transform:translateY(-2px);box-shadow:var(--rk-shadow-sm)}
.rk-btn-outline{background:#fff;border-color:var(--rk-leaf);color:var(--rk-leaf)}
.rk-btn-outline:hover{background:var(--rk-leaf);color:#fff}
.rk-btn-line{background:transparent;border-color:var(--rk-line);color:var(--rk-ink)}
.rk-btn-line:hover{border-color:var(--rk-leaf);color:var(--rk-leaf)}
.rk-btn-ghostlight{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.45);color:#fff}
.rk-btn-ghostlight:hover{background:rgba(255,255,255,.24)}
.rk-btn-lg{padding:15px 32px;font-size:15.5px}
.rk-btn-block{width:100%}
.rk-textlink{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--rk-leaf);font-size:14.5px}
.rk-textlink:hover{color:var(--rk-amber-dark);gap:12px}
.rk-textlink i{transition:transform .2s}

/* ---------- Utilitaires ---------- */
.rk-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--rk-leaf);margin-bottom:12px}
.rk-eyebrow-light{color:var(--rk-amber)}
.rk-h2{font-size:clamp(26px,3.4vw,38px)}
.rk-h3{font-size:19px}
.rk-sub{color:var(--rk-muted);max-width:640px;margin-top:12px;font-size:16px}
.rk-sec{padding:78px 0}
.rk-sec-tight{padding:52px 0 78px}
.rk-sec-sand{background:var(--rk-sand)}
.rk-sec-forest{background:linear-gradient(150deg,var(--rk-forest),#16301f);color:#fff}
.rk-sec-forest .rk-sub{color:rgba(255,255,255,.75)}
.rk-headrow{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;margin-bottom:40px}
.rk-headmid{text-align:center;max-width:720px;margin:0 auto 44px}
.rk-headmid .rk-sub{margin-left:auto;margin-right:auto}
.rk-noimg{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:120px;background:var(--rk-sand);color:var(--rk-leaf);font-size:34px}
.rk-reveal{opacity:0;transform:translateY(22px);transition:opacity .6s,transform .6s}
.rk-reveal.in{opacity:1;transform:none}
.rk-emptybox{text-align:center;padding:70px 20px;background:var(--rk-cream);border:1px dashed var(--rk-line);border-radius:var(--rk-radius-lg)}
.rk-emptybox i{font-size:40px;color:var(--rk-leaf);margin-bottom:14px}
.rk-emptybox h2{font-size:22px;margin-bottom:8px}
.rk-emptybox p{color:var(--rk-muted);margin-bottom:20px}
.rk-tablewrap{overflow-x:auto;margin:18px 0}

/* ---------- Bandeau utilitaire ---------- */
.rk-util{background:var(--rk-forest);color:rgba(255,255,255,.85);font-size:13px}
.rk-util-in{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 0;flex-wrap:wrap}
.rk-util-links{display:flex;gap:18px}
.rk-util-links a:hover,.rk-util-contact a:hover{color:var(--rk-amber)}
.rk-util-links i,.rk-util-contact i{color:var(--rk-amber);margin-right:4px}
.rk-util-note{display:flex;align-items:center;gap:8px;font-weight:600}
.rk-util-note i{color:var(--rk-amber)}
.rk-util-contact{display:flex;gap:18px}
@media (max-width:1024px){.rk-util-note{display:none}}
@media (max-width:640px){.rk-util-links{display:none}.rk-util-in{justify-content:center}}

/* ---------- Barre marque + recherche ---------- */
.rk-brandbar{background:#fff;border-bottom:1px solid var(--rk-line)}
.rk-brandbar-in{display:flex;align-items:center;gap:26px;padding:16px 0}
.rk-logo img{height:52px;width:auto}
.rk-inlinesearch{flex:1;display:flex;align-items:center;gap:10px;max-width:520px;background:var(--rk-cream);border:2px solid var(--rk-line);border-radius:999px;padding:4px 6px 4px 18px;transition:border-color .2s}
.rk-inlinesearch:focus-within{border-color:var(--rk-leaf)}
.rk-inlinesearch i{color:var(--rk-muted)}
.rk-inlinesearch input{flex:1;border:0;background:none;outline:none;padding:8px 0;min-width:0}
.rk-inlinesearch button{border:0;background:var(--rk-leaf);color:#fff;font-weight:700;padding:9px 20px;border-radius:999px;font-size:13.5px}
.rk-inlinesearch button:hover{background:var(--rk-leaf-dark)}
.rk-brandtools{display:flex;align-items:center;gap:16px;margin-left:auto}
.rk-quotelink{display:flex;align-items:center;gap:9px;font-weight:700;font-size:14px;color:var(--rk-ink)}
.rk-quotelink i{font-size:20px;color:var(--rk-leaf)}
.rk-quotelink:hover{color:var(--rk-leaf)}
.rk-quotelink span{display:flex;align-items:center;gap:6px}
.rk-qbadge{display:none;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--rk-amber);color:var(--rk-forest);font-style:normal;font-size:11.5px;font-weight:800}
.rk-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border:2px solid var(--rk-line);border-radius:10px;background:#fff;padding:0 10px}
.rk-burger span{display:block;width:100%;height:2.5px;background:var(--rk-ink);border-radius:2px}
@media (max-width:1024px){
  .rk-inlinesearch{display:none}
  .rk-burger{display:flex}
  .rk-brandtools .rk-btn{display:none}
}
@media (max-width:640px){.rk-quotelink span{display:none}.rk-logo img{height:42px}}

/* ---------- Bande de navigation ---------- */
.rk-navband{background:var(--rk-leaf);position:sticky;top:0;z-index:900}
.rk-navband.stuck{box-shadow:0 8px 24px rgba(29,59,44,.35)}
.rk-navband-in{display:flex;align-items:center;justify-content:space-between;gap:20px}
.rk-nav{display:flex;align-items:stretch}
.rk-nav>a,.rk-nav-item>a{display:flex;align-items:center;gap:8px;padding:15px 18px;color:rgba(255,255,255,.92);font-weight:700;font-size:14.5px;border-bottom:3px solid transparent}
.rk-nav>a:hover,.rk-nav-item>a:hover,.rk-nav>a.active,.rk-nav-item>a.active{background:rgba(0,0,0,.14);border-bottom-color:var(--rk-amber);color:#fff}
.rk-nav-item{position:relative}
.rk-mega{position:absolute;left:50%;transform:translateX(-50%) translateY(8px);top:100%;width:min(880px,90vw);background:#fff;border-radius:0 0 var(--rk-radius-lg) var(--rk-radius-lg);box-shadow:var(--rk-shadow);opacity:0;visibility:hidden;transition:all .22s;z-index:950}
.rk-nav-item:hover .rk-mega,.rk-nav-item:focus-within .rk-mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.rk-mega-in{display:grid;grid-template-columns:250px 1fr;gap:30px;padding:30px;width:auto}
.rk-mega-intro{border-right:1px solid var(--rk-line);padding-right:26px}
.rk-mega-intro strong{font-size:18px;display:block;margin-bottom:10px}
.rk-mega-intro p{font-size:13.5px;color:var(--rk-muted);margin-bottom:14px}
.rk-mega-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 22px;align-content:start}
.rk-mega-head{display:block;font-weight:800;font-size:14.5px;color:var(--rk-leaf);padding:6px 0;border-bottom:2px solid var(--rk-sand);margin-bottom:6px}
.rk-mega-head:hover{color:var(--rk-amber-dark)}
.rk-mega-link{display:block;font-size:13.5px;color:var(--rk-muted);padding:4px 0}
.rk-mega-link:hover{color:var(--rk-leaf);padding-left:4px}
.rk-navband-phone{display:flex;align-items:center;gap:9px;color:#fff;font-weight:700;font-size:14px;white-space:nowrap}
.rk-navband-phone i{font-size:18px;color:var(--rk-amber)}
.rk-navband-phone:hover{color:var(--rk-amber)}
@media (max-width:1024px){.rk-navband{display:none}}

/* ---------- Tiroir mobile ---------- */
.rk-drawer{position:fixed;top:0;right:0;bottom:0;width:min(380px,92vw);background:#fff;z-index:2000;transform:translateX(105%);transition:transform .3s;display:flex;flex-direction:column;box-shadow:-16px 0 44px rgba(0,0,0,.22)}
.rk-drawer.on{transform:none}
.rk-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--rk-line)}
.rk-drawer-head img{height:40px;width:auto}
.rk-drawer-close{width:40px;height:40px;border:0;background:var(--rk-sand);border-radius:50%;font-size:16px;color:var(--rk-ink)}
.rk-drawer-search{padding:16px 22px;border-bottom:1px solid var(--rk-line)}
.rk-drawer-search form{display:flex;background:var(--rk-cream);border:2px solid var(--rk-line);border-radius:999px;overflow:hidden}
.rk-drawer-search input{flex:1;border:0;background:none;outline:none;padding:10px 16px;min-width:0}
.rk-drawer-search button{border:0;background:var(--rk-leaf);color:#fff;padding:0 18px}
.rk-drawer-nav{flex:1;overflow-y:auto;padding:12px 22px}
.rk-drawer-nav>a{display:block;padding:13px 4px;font-weight:700;border-bottom:1px solid var(--rk-sand)}
.rk-drawer-nav>a.active{color:var(--rk-leaf)}
.rk-dsec{border-bottom:1px solid var(--rk-sand)}
.rk-dsec>button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 4px;background:none;border:0;font-weight:700;font-size:15.5px;color:var(--rk-ink)}
.rk-dsec>button i{transition:transform .25s;color:var(--rk-leaf)}
.rk-dsec.open>button i{transform:rotate(180deg)}
.rk-dsub{display:none;padding:2px 4px 14px 14px}
.rk-dsec.open .rk-dsub{display:block}
.rk-dsub a{display:block;padding:8px 0;font-size:14px;color:var(--rk-muted)}
.rk-dsub a:hover{color:var(--rk-leaf)}
.rk-drawer-foot{padding:18px 22px;border-top:1px solid var(--rk-line);display:grid;gap:10px}

/* ---------- Fil d'Ariane ---------- */
.rk-crumbbar{background:var(--rk-cream);border-bottom:1px solid var(--rk-line)}
.rk-crumb{padding:13px 0;font-size:13px;color:var(--rk-muted)}
.rk-crumb a{color:var(--rk-muted)}
.rk-crumb a:hover{color:var(--rk-leaf)}
.rk-crumb-light,.rk-crumb-light a{color:rgba(255,255,255,.72)}
.rk-crumb-light a:hover{color:var(--rk-amber)}

/* ---------- Héros accueil ---------- */
.rk-hero{background:radial-gradient(1100px 520px at 88% -10%,rgba(47,125,79,.14),transparent),var(--rk-cream);padding:72px 0 0;overflow:hidden}
.rk-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.rk-hero-kicker{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--rk-line);color:var(--rk-leaf);font-weight:800;font-size:13px;padding:8px 18px;border-radius:999px;margin-bottom:22px}
.rk-hero-copy h1{font-size:clamp(34px,5vw,58px);letter-spacing:-.02em}
.rk-hero-copy h1 em{font-style:normal;color:var(--rk-leaf);display:block}
.rk-hero-lead{margin:20px 0 30px;font-size:17.5px;color:var(--rk-muted);max-width:560px}
.rk-hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.rk-hero-proof{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px;font-size:14px;font-weight:600;color:var(--rk-ink)}
.rk-hero-proof i{color:var(--rk-amber-dark);margin-right:7px}
.rk-hero-visual{position:relative;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);box-shadow:var(--rk-shadow);padding:34px}
.rk-hero-visual svg{width:100%;height:auto}
.rk-hero-chip{position:absolute;display:flex;align-items:center;gap:8px;background:var(--rk-forest);color:#fff;font-size:12.5px;font-weight:700;padding:9px 16px;border-radius:999px;box-shadow:var(--rk-shadow-sm)}
.rk-hero-chip i{color:var(--rk-amber)}
.rk-hero-chip-a{top:-14px;right:26px}
.rk-hero-chip-b{bottom:-14px;left:26px}
.rk-statline{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rk-line);border:1px solid var(--rk-line);border-bottom:0;border-radius:var(--rk-radius-lg) var(--rk-radius-lg) 0 0;overflow:hidden;margin-top:64px;transform:translateY(1px)}
.rk-stat{background:#fff;text-align:center;padding:26px 14px}
.rk-stat strong{display:block;font-size:27px;color:var(--rk-leaf);letter-spacing:-.02em}
.rk-stat span{font-size:13px;color:var(--rk-muted)}
@media (max-width:1024px){.rk-hero-grid{grid-template-columns:1fr}.rk-hero-visual{max-width:520px}}
@media (max-width:760px){.rk-statline{grid-template-columns:repeat(2,1fr)}}

/* ---------- Bandeau défilant ---------- */
.rk-marquee{background:var(--rk-forest);color:rgba(255,255,255,.8);overflow:hidden;padding:13px 0}
.rk-marquee-track{display:flex;gap:44px;width:max-content;animation:rkscroll 34s linear infinite;font-size:13.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.rk-marquee-track span::after{content:'◆';margin-left:44px;color:var(--rk-amber);font-size:9px;vertical-align:middle}
@keyframes rkscroll{to{transform:translateX(-50%)}}

/* ---------- Cartes catégories ---------- */
.rk-catscroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:20px;overflow-x:auto;overflow-y:hidden;padding-bottom:12px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--rk-line) transparent}
.rk-catscroll::-webkit-scrollbar{height:6px;background:transparent}
.rk-catscroll::-webkit-scrollbar-thumb{background:var(--rk-line);border-radius:999px}
.rk-catscroll::-webkit-scrollbar-thumb:hover{background:var(--rk-muted)}
.rk-catcard{scroll-snap-align:start;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;transition:all .25s}
.rk-catcard:hover{transform:translateY(-5px);box-shadow:var(--rk-shadow);border-color:var(--rk-leaf)}
.rk-catcard figure{aspect-ratio:4/3;overflow:hidden;background:var(--rk-sand)}
.rk-catcard figure img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.rk-catcard:hover figure img{transform:scale(1.06)}
.rk-catcard-body{padding:18px 20px 20px}
.rk-catcard-body h3{font-size:16.5px;margin-bottom:8px}
.rk-catcard-go{font-size:13px;font-weight:700;color:var(--rk-leaf);display:inline-flex;align-items:center;gap:7px}

/* ---------- Cartes produits ---------- */
.rk-prodgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.rk-pcard{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:all .25s}
.rk-pcard:hover{transform:translateY(-5px);box-shadow:var(--rk-shadow)}
.rk-pcard-media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--rk-sand)}
.rk-pcard-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.rk-pcard:hover .rk-pcard-media img{transform:scale(1.05)}
.rk-pcard-cat{position:absolute;left:14px;top:14px;background:rgba(29,59,44,.88);color:#fff;font-size:11.5px;font-weight:700;padding:5px 13px;border-radius:999px}
.rk-pcard-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.rk-pcard-body h2,.rk-pcard-body h3{font-size:17px;margin-bottom:9px}
.rk-pcard-body h2 a:hover,.rk-pcard-body h3 a:hover{color:var(--rk-leaf)}
.rk-pcard-body p{font-size:13.5px;color:var(--rk-muted);flex:1}
.rk-pcard-foot{display:flex;align-items:center;justify-content:space-between;margin-top:16px}
.rk-addbtn{width:40px;height:40px;border:2px solid var(--rk-leaf);border-radius:50%;background:#fff;color:var(--rk-leaf);font-size:15px;transition:all .2s}
.rk-addbtn:hover{background:var(--rk-leaf);color:#fff;transform:rotate(90deg)}

/* ---------- Split + timeline (méthode) ---------- */
.rk-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}
.rk-timeline{position:relative;padding-left:8px}
.rk-tl-item{position:relative;display:flex;gap:22px;padding:0 0 34px 0}
.rk-tl-item::before{content:'';position:absolute;left:23px;top:48px;bottom:0;width:2px;background:rgba(255,255,255,.22)}
.rk-tl-item:last-child::before{display:none}
.rk-tl-dot{flex-shrink:0;width:48px;height:48px;border-radius:50%;background:var(--rk-amber);color:var(--rk-forest);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center}
.rk-tl-item h3{font-size:18px;margin-bottom:7px;color:#fff}
.rk-tl-item p{font-size:14px;color:rgba(255,255,255,.72)}
@media (max-width:1024px){.rk-split{grid-template-columns:1fr}}

/* ---------- Lignes solutions ---------- */
.rk-solrows{display:grid;gap:16px;counter-reset:sol}
.rk-solrow{counter-increment:sol;display:grid;grid-template-columns:56px 180px 1fr 48px;gap:24px;align-items:center;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:18px 26px 18px 18px;transition:all .25s}
.rk-solrow:hover{border-color:var(--rk-leaf);box-shadow:var(--rk-shadow-sm);transform:translateX(6px)}
.rk-solrow-num::before{content:counter(sol,decimal-leading-zero);font-size:26px;font-weight:800;color:var(--rk-line);transition:color .25s}
.rk-solrow:hover .rk-solrow-num::before{color:var(--rk-amber)}
.rk-solrow figure{aspect-ratio:16/10;border-radius:var(--rk-radius);overflow:hidden;background:var(--rk-sand)}
.rk-solrow figure img{width:100%;height:100%;object-fit:cover}
.rk-solrow-body h3{font-size:18px;margin-bottom:6px}
.rk-solrow-body p{font-size:13.5px;color:var(--rk-muted)}
.rk-solrow-go{width:48px;height:48px;border-radius:50%;background:var(--rk-sand);color:var(--rk-leaf);display:flex;align-items:center;justify-content:center;transition:all .25s}
.rk-solrow:hover .rk-solrow-go{background:var(--rk-leaf);color:#fff}
@media (max-width:860px){.rk-solrow{grid-template-columns:1fr;gap:14px}.rk-solrow-num,.rk-solrow-go{display:none}}

/* ---------- Certificats ---------- */
.rk-certsplit{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.rk-certgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px}
.rk-certcard{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:22px 20px;text-align:center;transition:all .25s}
.rk-certcard:hover{transform:translateY(-4px);box-shadow:var(--rk-shadow-sm);border-color:var(--rk-amber)}
.rk-certcard-ico{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:var(--rk-sand);color:var(--rk-amber-dark);font-size:24px;overflow:hidden}
.rk-certcard-ico img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.rk-certcard h3{font-size:14.5px;margin-bottom:8px}
.rk-certcard time{font-size:12px;color:var(--rk-muted)}
@media (max-width:1024px){.rk-certsplit{grid-template-columns:1fr}}

/* ---------- Pourquoi nous ---------- */
.rk-whygrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.rk-why{background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:28px 26px;transition:all .25s}
.rk-why:hover{background:#fff;box-shadow:var(--rk-shadow-sm);transform:translateY(-4px)}
.rk-why>i{font-size:26px;color:var(--rk-leaf);margin-bottom:16px;display:block}
.rk-why h3{font-size:17px;margin-bottom:9px}
.rk-why p{font-size:13.5px;color:var(--rk-muted)}

/* ---------- FAQ accordéons ---------- */
.rk-faqband{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.rk-acc,.rk-faqlist{display:grid;gap:12px}
.rk-acc-item,.rk-facc{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius);overflow:hidden}
.rk-acc-item summary,.rk-facc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 22px;font-weight:700;font-size:15px;cursor:pointer;list-style:none}
.rk-acc-item summary::-webkit-details-marker,.rk-facc summary::-webkit-details-marker{display:none}
.rk-acc-item summary i,.rk-facc summary i{color:var(--rk-leaf);transition:transform .25s;flex-shrink:0}
.rk-acc-item[open] summary i{transform:rotate(45deg)}
.rk-facc[open] summary i{transform:rotate(180deg)}
.rk-acc-item[open],.rk-facc[open]{border-color:var(--rk-leaf)}
.rk-acc-body,.rk-facc-body{padding:0 22px 20px;font-size:14px;color:var(--rk-muted)}
@media (max-width:1024px){.rk-faqband{grid-template-columns:1fr}}

/* ---------- Blog ---------- */
.rk-blogrow{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px}
.rk-blogcard{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;transition:all .25s}
.rk-blogcard:hover{transform:translateY(-5px);box-shadow:var(--rk-shadow)}
.rk-blogcard-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--rk-sand)}
.rk-blogcard-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.rk-blogcard:hover .rk-blogcard-media img{transform:scale(1.05)}
.rk-blogcard-body{padding:20px 22px}
.rk-blogcard-body time{font-size:12.5px;color:var(--rk-muted)}
.rk-blogcard-body h3{font-size:16px;margin:9px 0 12px}
.rk-blogcard-body h3 a:hover{color:var(--rk-leaf)}

/* ---------- CTA final accueil ---------- */
.rk-ctasplit{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.rk-ctalist{display:grid;gap:12px;margin-top:26px}
.rk-ctalist li{display:flex;gap:11px;font-size:14.5px;color:rgba(255,255,255,.85)}
.rk-ctalist i{color:var(--rk-amber);margin-top:3px}
.rk-ctaform{background:#fff;border-radius:var(--rk-radius-lg);padding:34px;color:var(--rk-ink);box-shadow:var(--rk-shadow)}
.rk-ctaform h3{font-size:20px;margin-bottom:20px}
.rk-ctaform h3 i{color:var(--rk-amber-dark);margin-right:8px}
.rk-ctanote{margin-top:14px;font-size:12.5px;color:var(--rk-muted)}
.rk-ctanote i{color:var(--rk-leaf);margin-right:6px}
@media (max-width:1024px){.rk-ctasplit{grid-template-columns:1fr}}

/* ---------- Formulaires ---------- */
.rk-form,.rk-ctaform form,.modal-box form{display:grid;gap:13px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}
@media (max-width:560px){.form-row{grid-template-columns:1fr}}
.rk-form input,.rk-form textarea,.rk-ctaform input,.rk-ctaform textarea,.modal-box input,.modal-box textarea,.rk-contactform-main input,.rk-contactform-main textarea{width:100%;padding:13px 16px;border:2px solid var(--rk-line);border-radius:var(--rk-radius);background:var(--rk-cream);outline:none;transition:border-color .2s;resize:vertical}
.rk-form input:focus,.rk-form textarea:focus,.rk-ctaform input:focus,.rk-ctaform textarea:focus,.modal-box input:focus,.modal-box textarea:focus,.rk-contactform-main input:focus,.rk-contactform-main textarea:focus{border-color:var(--rk-leaf);background:#fff}

/* ---------- Modale devis + succès + toast ---------- */
.modal-overlay{position:fixed;inset:0;background:rgba(29,59,44,.55);backdrop-filter:blur(3px);z-index:2500;display:none;align-items:center;justify-content:center;padding:20px}
.modal-overlay.on{display:flex}
.modal-box{position:relative;background:#fff;border-radius:var(--rk-radius-lg);padding:38px;width:min(620px,100%);max-height:90vh;overflow-y:auto;box-shadow:var(--rk-shadow)}
.modal-box h3{font-size:23px;margin-bottom:8px}
.modal-desc{font-size:14px;color:var(--rk-muted);margin-bottom:22px}
.modal-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:50%;background:var(--rk-sand);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--rk-ink)}
.modal-close:hover{background:var(--rk-leaf);color:#fff}
.success-overlay{position:fixed;inset:0;background:rgba(29,59,44,.55);z-index:2600;display:flex;align-items:center;justify-content:center;padding:20px}
.success-box{background:#fff;border-radius:var(--rk-radius-lg);padding:44px;text-align:center;width:min(430px,100%)}
.success-icon{font-size:52px;color:var(--rk-leaf);margin-bottom:16px}
.success-box h3{font-size:22px;margin-bottom:8px}
.success-box p{color:var(--rk-muted);margin-bottom:22px}
.toast-notify{position:fixed;bottom:26px;left:50%;transform:translate(-50%,80px);background:var(--rk-forest);color:#fff;padding:14px 24px;border-radius:999px;display:flex;gap:16px;align-items:center;font-size:14px;z-index:2700;opacity:0;transition:all .3s;box-shadow:var(--rk-shadow)}
.toast-notify.show{transform:translate(-50%,0);opacity:1}
.toast-notify a{color:var(--rk-amber);font-weight:700}

/* ---------- Pré-footer ---------- */
.rk-prefoot{background:linear-gradient(140deg,var(--rk-leaf),var(--rk-leaf-dark));color:#fff;padding:66px 0}
.rk-prefoot-in{display:grid;grid-template-columns:1.2fr .8fr;gap:52px;align-items:center}
.rk-prefoot-card h2{font-size:clamp(24px,3vw,33px);margin-bottom:14px}
.rk-prefoot-card p{color:rgba(255,255,255,.82);max-width:560px}
.rk-prefoot-list{display:grid;gap:10px;margin-top:22px}
.rk-prefoot-list li{display:flex;gap:10px;font-size:14.5px}
.rk-prefoot-list i{color:var(--rk-amber);margin-top:3px}
.rk-prefoot-side{display:grid;gap:14px}
.rk-prefoot-stat{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:var(--rk-radius-lg);padding:20px 26px;text-align:center}
.rk-prefoot-stat strong{font-size:34px;display:block;color:var(--rk-amber)}
.rk-prefoot-stat span{font-size:13.5px;color:rgba(255,255,255,.8)}
@media (max-width:1024px){.rk-prefoot-in{grid-template-columns:1fr}}

/* ---------- Footer ---------- */
.rk-footer{background:var(--rk-forest);color:rgba(255,255,255,.78)}
.rk-foot-news{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.rk-foot-news-copy strong{display:block;color:#fff;font-size:17px;margin-bottom:4px}
.rk-foot-news-copy strong i{color:var(--rk-amber);margin-right:8px}
.rk-foot-news-copy span{font-size:13px}
.rk-foot-news form{display:flex;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.28);border-radius:999px;overflow:hidden;min-width:min(420px,100%)}
.rk-foot-news input{flex:1;border:0;background:none;outline:none;padding:13px 20px;color:#fff;min-width:0}
.rk-foot-news input::placeholder{color:rgba(255,255,255,.55)}
.rk-foot-news button{border:0;background:var(--rk-amber);color:var(--rk-forest);font-weight:800;padding:0 24px;font-size:13.5px}
.rk-foot-news button:hover{background:#f3b558}
.rk-foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:44px;padding:52px 0}
.rk-foot-brandcol img{height:46px;width:auto;margin-bottom:16px}
.rk-foot-brandcol p{font-size:13.5px;margin-bottom:18px}
.rk-foot-badges{display:flex;gap:10px;flex-wrap:wrap}
.rk-foot-badges span{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:6px 14px;font-size:12px;color:#fff}
.rk-foot-badges i{color:var(--rk-amber)}
.rk-foot-title{display:block;color:#fff;font-weight:800;font-size:15px;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--rk-amber);width:fit-content}
.rk-foot-col nav a{display:block;padding:6px 0;font-size:13.5px}
.rk-foot-col nav a:hover{color:var(--rk-amber);padding-left:4px}
.rk-foot-contact{display:grid;gap:11px;font-size:13.5px}
.rk-foot-contact li{display:flex;gap:11px;align-items:flex-start}
.rk-foot-contact i{color:var(--rk-amber);margin-top:4px}
.rk-foot-contact a:hover{color:var(--rk-amber)}
.rk-foot-social{display:flex;gap:10px;margin-top:20px}
.rk-foot-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px}
.rk-foot-social a:hover{background:var(--rk-amber);color:var(--rk-forest)}
.rk-foot-base{border-top:1px solid rgba(255,255,255,.14)}
.rk-foot-base-in{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 0;font-size:12.5px}
.rk-foot-legal{display:flex;align-items:center;gap:12px}
.rk-foot-legal a:hover{color:var(--rk-amber)}
@media (max-width:1024px){.rk-foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.rk-foot-grid{grid-template-columns:1fr}}

/* ---------- Flottants ---------- */
.wa-float{position:fixed;right:22px;bottom:88px;width:54px;height:54px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;z-index:1200;box-shadow:0 10px 26px rgba(37,211,102,.4);transition:transform .2s}
.wa-float:hover{transform:scale(1.08)}
.back-to-top{position:fixed;right:22px;bottom:24px;width:54px;height:54px;border-radius:50%;background:var(--rk-forest);color:#fff;display:flex;align-items:center;justify-content:center;z-index:1200;opacity:0;visibility:hidden;transition:all .25s}
.back-to-top.show{opacity:1;visibility:visible}
.back-to-top:hover{background:var(--rk-leaf)}
.mobile-inquiry-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:1300;background:#fff;border-top:1px solid var(--rk-line);padding:10px 14px;gap:10px;box-shadow:0 -8px 24px rgba(34,48,42,.12)}
.mib-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:999px;font-weight:700;font-size:14px}
.mib-quote{background:var(--rk-leaf);color:#fff}
.mib-wa{background:#25d366;color:#fff}
@media (max-width:760px){.mobile-inquiry-bar{display:flex}.wa-float{display:none}.back-to-top{bottom:78px}.rk-footer{padding-bottom:70px}}

/* ---------- Têtes de listes ---------- */
.rk-listhead{background:var(--rk-cream);border-bottom:1px solid var(--rk-line);padding:34px 0 38px}
.rk-listhead-in{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap}
.rk-listhead h1{font-size:clamp(28px,3.6vw,42px)}
.rk-listhead p{color:var(--rk-muted);max-width:640px;margin-top:12px}
.rk-listhead-cta{display:flex;gap:12px;flex-wrap:wrap}
.rk-chipbar{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.rk-chip{display:inline-flex;align-items:center;padding:9px 20px;border-radius:999px;background:#fff;border:2px solid var(--rk-line);font-size:13.5px;font-weight:700}
.rk-chip:hover{border-color:var(--rk-leaf);color:var(--rk-leaf)}
.rk-chip.on{background:var(--rk-leaf);border-color:var(--rk-leaf);color:#fff}
.rk-chip-sub{font-weight:600;background:var(--rk-sand)}
.rk-listnote{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius);padding:15px 22px;margin-bottom:30px;font-size:14px}
.rk-listnote i{color:var(--rk-leaf);margin-right:8px}

/* ---------- Pagination ---------- */
.pagination{display:flex;justify-content:center;gap:8px;margin-top:44px;flex-wrap:wrap}
.pagination > span{display:inline-flex}
.pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border-radius:999px;border:2px solid var(--rk-line);font-size:14px;font-weight:700;color:var(--rk-ink);text-decoration:none}
.pagination a:hover{border-color:var(--rk-leaf);color:var(--rk-leaf)}
.pagination .active a,.pagination a.active{background:var(--rk-leaf);border-color:var(--rk-leaf);color:#fff}
.pagination .active a:hover,.pagination a.active:hover{color:#fff}
.pagination a:focus{outline:2px solid var(--rk-leaf);outline-offset:2px}

/* ---------- Bandeau CTA générique ---------- */
.rk-band{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;background:linear-gradient(135deg,var(--rk-forest),#274d38);color:#fff;border-radius:var(--rk-radius-lg);padding:38px 44px}
.rk-band h2{font-size:clamp(19px,2.2vw,25px);max-width:640px}
.rk-band-actions{display:flex;gap:12px;flex-wrap:wrap}

/* ---------- Fiche produit ---------- */
.rk-pdp{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:start;min-width:0}
.rk-pdp>*{min-width:0}
.rk-gal-main{border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;background:var(--rk-sand)}
.rk-gal-main img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.rk-gal-thumbs{display:flex;gap:12px;margin-top:14px;overflow-x:auto;overflow-y:hidden;padding-bottom:6px;scrollbar-width:none;-ms-overflow-style:none}
.rk-gal-thumbs::-webkit-scrollbar{display:none}
.rk-gal-thumbs button{flex-shrink:0;width:84px;height:66px;border:2px solid var(--rk-line);border-radius:var(--rk-radius);overflow:hidden;background:#fff;padding:0;opacity:.7;transition:all .2s}
.rk-gal-thumbs button img{width:100%;height:100%;object-fit:cover}
.rk-gal-thumbs button:hover,.rk-gal-thumbs button.active{border-color:var(--rk-leaf);opacity:1}
.rk-pdp-cat{display:inline-flex;align-items:center;gap:8px;font-style:normal;font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--rk-leaf);margin-bottom:14px}
.rk-pdp-panel h1{font-size:clamp(26px,3vw,36px);margin-bottom:14px}
.rk-pdp-lead{color:var(--rk-muted);margin-bottom:22px}
.rk-pdp-points{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:26px}
.rk-pdp-points span{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius);padding:11px 14px}
.rk-pdp-points i{color:var(--rk-leaf)}
.rk-pdp-actions{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:24px}
.rk-pdp-assist{display:flex;gap:16px;background:var(--rk-sand);border-radius:var(--rk-radius);padding:16px 20px;margin-bottom:20px;font-size:13.5px}
.rk-pdp-assist>i{font-size:22px;color:var(--rk-leaf);margin-top:4px}
.rk-pdp-assist strong{display:block;margin-bottom:3px}
.rk-pdp-assist a{color:var(--rk-leaf);font-weight:700}
.rk-pdp-share{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--rk-muted)}
.rk-pdp-share a{width:36px;height:36px;border-radius:50%;border:1px solid var(--rk-line);display:flex;align-items:center;justify-content:center;color:var(--rk-ink)}
.rk-pdp-share a:hover{background:var(--rk-leaf);border-color:var(--rk-leaf);color:#fff}
@media (max-width:1024px){.rk-pdp{grid-template-columns:1fr;gap:34px}}
@media (max-width:560px){.rk-pdp-points{grid-template-columns:1fr}}
@media (max-width:760px){
  .rk-pdp{gap:24px}
  .rk-gal-main img{aspect-ratio:1/1}
  .rk-gal-thumbs{gap:8px}
  .rk-gal-thumbs button{width:68px;height:54px}
  .rk-pdp-panel h1{font-size:clamp(22px,6vw,28px)}
  .rk-pdp-actions{flex-direction:column}
  .rk-pdp-actions .rk-btn{width:100%;justify-content:center}
  .rk-pdp-share{flex-wrap:wrap}
  .rk-specsplit{gap:28px}
  .rk-specs th,.rk-specs td{padding:12px 14px;font-size:13px}
  .rk-specs th{width:45%}
  .detail-content img{max-width:100%;height:auto}
  .rk-band{padding:26px}
  .rk-relstrip{grid-auto-columns:minmax(160px,1fr);gap:12px}
}
.rk-specsplit{display:grid;grid-template-columns:.75fr 1.25fr;gap:52px;align-items:start}
.rk-specs{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--rk-radius-lg);overflow:hidden;box-shadow:var(--rk-shadow-sm)}
.rk-specs th,.rk-specs td{padding:15px 22px;text-align:left;font-size:14px;border-bottom:1px solid var(--rk-sand)}
.rk-specs tr:last-child th,.rk-specs tr:last-child td{border-bottom:0}
.rk-specs th{width:38%;background:var(--rk-cream);font-weight:700;color:var(--rk-leaf-dark)}
@media (max-width:1024px){.rk-specsplit{grid-template-columns:1fr}}
.rk-relstrip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);gap:18px;overflow-x:auto;padding-bottom:10px}
.rk-relcard{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;transition:all .25s}
.rk-relcard:hover{transform:translateY(-4px);box-shadow:var(--rk-shadow-sm)}
.rk-relcard img{width:100%;aspect-ratio:4/3;object-fit:cover}
.rk-relcard span{display:block;padding:14px 16px;font-size:13.5px;font-weight:700}

/* ---------- Contenu riche ---------- */
.detail-content{font-size:15.5px;line-height:1.8}
.detail-content h2{font-size:24px;margin:34px 0 14px;padding-bottom:10px;border-bottom:2px solid var(--rk-sand)}
.detail-content h3{font-size:19px;margin:26px 0 11px}
.detail-content p{margin-bottom:15px}
.detail-content ul,.detail-content ol{margin:0 0 16px 22px}
.detail-content ul{list-style:disc}
.detail-content ol{list-style:decimal}
.detail-content li{margin-bottom:7px}
.detail-content img{border-radius:var(--rk-radius);margin:18px 0}
.detail-content table{width:100%;border-collapse:collapse;margin:18px 0;font-size:14px}
.detail-content table th,.detail-content table td{border:1px solid var(--rk-line);padding:11px 14px;text-align:left}
.detail-content table th{background:var(--rk-cream)}
.detail-content blockquote{border-left:4px solid var(--rk-leaf);background:var(--rk-cream);padding:16px 22px;border-radius:0 var(--rk-radius) var(--rk-radius) 0;margin:18px 0;color:var(--rk-muted)}
.detail-content a{color:var(--rk-leaf);text-decoration:underline}

/* ---------- Pager article/produit ---------- */
.rk-pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px}
.rk-pager-cell{background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius);padding:16px 22px;font-size:13.5px;overflow:hidden}
.rk-pager-next{text-align:right}
.pager-link{display:block;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pager-link:hover{color:var(--rk-leaf)}
.pager-empty{color:var(--rk-muted);font-weight:500}
@media (max-width:640px){.rk-pager{grid-template-columns:1fr}.rk-pager-next{text-align:left}}

/* ---------- About ---------- */
.rk-abouthero{background:linear-gradient(150deg,var(--rk-forest),#16301f);color:#fff;padding:30px 0 66px}
.rk-abouthero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center;margin-top:26px}
.rk-abouthero h1{font-size:clamp(30px,4vw,48px);margin-bottom:16px}
.rk-abouthero p{color:rgba(255,255,255,.78);max-width:560px}
.rk-abouthero-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rk-abouthero-stats div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:var(--rk-radius-lg);padding:22px;text-align:center}
.rk-abouthero-stats strong{display:block;font-size:26px;color:var(--rk-amber)}
.rk-abouthero-stats span{font-size:12.5px;color:rgba(255,255,255,.75)}
@media (max-width:1024px){.rk-abouthero-grid{grid-template-columns:1fr}}
.rk-story{display:grid;grid-template-columns:.72fr 1.28fr;gap:52px;align-items:start}
.rk-story-side{position:sticky;top:90px;display:grid;gap:20px}
.rk-quotecard{background:var(--rk-sand);border-radius:var(--rk-radius-lg);padding:30px}
.rk-quotecard blockquote{font-size:17px;font-weight:600;line-height:1.55;margin-bottom:14px}
.rk-quotecard cite{font-style:normal;font-size:13px;color:var(--rk-muted)}
.rk-story-links{display:grid;gap:10px}
.rk-story-links a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius);padding:14px 18px;font-weight:700;font-size:14px}
.rk-story-links a i:first-child{color:var(--rk-leaf)}
.rk-story-links a i:last-child{margin-left:auto;color:var(--rk-muted)}
.rk-story-links a:hover{border-color:var(--rk-leaf);color:var(--rk-leaf)}
@media (max-width:1024px){.rk-story{grid-template-columns:1fr}.rk-story-side{position:static}}
.rk-milerow{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.rk-mile{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--rk-radius-lg);padding:26px}
.rk-mile strong{display:inline-block;font-size:14px;background:var(--rk-amber);color:var(--rk-forest);padding:4px 14px;border-radius:999px;margin-bottom:14px}
.rk-mile h3{color:#fff;font-size:17px;margin-bottom:8px}
.rk-mile p{font-size:13.5px;color:rgba(255,255,255,.72)}

/* ---------- Fabrication ---------- */
.rk-line{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}
.rk-linestep{position:relative;background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:30px 26px;transition:all .25s}
.rk-linestep:hover{background:#fff;box-shadow:var(--rk-shadow-sm);transform:translateY(-4px)}
.rk-linestep-idx{position:absolute;right:22px;top:18px;font-size:34px;font-weight:800;color:var(--rk-line)}
.rk-linestep>i{font-size:26px;color:var(--rk-leaf);margin-bottom:16px;display:block}
.rk-linestep h3{font-size:17.5px;margin-bottom:9px}
.rk-linestep p{font-size:13.5px;color:var(--rk-muted);margin-bottom:14px}
.rk-linestep ul{display:grid;gap:7px}
.rk-linestep li{display:flex;gap:9px;font-size:13px;color:var(--rk-ink)}
.rk-linestep li i{color:var(--rk-amber-dark);margin-top:3px}
.rk-qatable{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--rk-radius-lg);overflow:hidden;box-shadow:var(--rk-shadow-sm)}
.rk-qatable th,.rk-qatable td{padding:15px 20px;text-align:left;font-size:14px;border-bottom:1px solid var(--rk-sand)}
.rk-qatable thead th{background:var(--rk-forest);color:#fff;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.rk-qatable tbody tr:hover{background:var(--rk-cream)}
.rk-qatable td i{color:var(--rk-leaf);margin-right:8px}
@media (max-width:860px){.rk-qatable{display:block;overflow-x:auto}}

/* ---------- Solutions ---------- */
.rk-altrows{display:grid;gap:28px}
.rk-altrow{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;transition:all .25s}
.rk-altrow:hover{box-shadow:var(--rk-shadow);border-color:var(--rk-leaf)}
.rk-altrow:nth-child(even) .rk-altrow-media{order:2}
.rk-altrow-media{display:block;min-height:240px;background:var(--rk-sand)}
.rk-altrow-media img{width:100%;height:100%;object-fit:cover}
.rk-altrow-body{padding:36px 40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.rk-altrow-tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--rk-amber-dark);margin-bottom:12px}
.rk-altrow-body h2{font-size:22px;margin-bottom:11px}
.rk-altrow-body h2 a:hover{color:var(--rk-leaf)}
.rk-altrow-body p{font-size:14px;color:var(--rk-muted);margin-bottom:18px}
@media (max-width:860px){.rk-altrow{grid-template-columns:1fr}.rk-altrow:nth-child(even) .rk-altrow-media{order:0}}
.rk-solhero{position:relative;background:var(--rk-forest);color:#fff;padding:36px 0 64px;overflow:hidden}
.rk-solhero-bg{position:absolute;inset:0;opacity:.22}
.rk-solhero-bg img{width:100%;height:100%;object-fit:cover}
.rk-solhero-in{position:relative;z-index:1}
.rk-solhero h1{font-size:clamp(30px,4vw,46px);margin:14px 0 16px;max-width:760px}
.rk-solhero p{color:rgba(255,255,255,.8);max-width:640px;margin-bottom:26px}
.rk-checkstrip{background:var(--rk-amber);color:var(--rk-forest)}
.rk-checkstrip-in{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:14px 0;font-size:13.5px;font-weight:700}
.rk-checkstrip-in span{display:inline-flex;align-items:center;gap:7px}
.rk-readcol{max-width:860px}
.rk-readcover{border-radius:var(--rk-radius-lg);overflow:hidden;margin-bottom:32px}
.rk-morecols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}
.rk-morecol{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:26px}
.rk-morecol h3{font-size:16px;margin-bottom:16px}
.rk-morecol h3 i{color:var(--rk-leaf);margin-right:8px}
.rk-morecol-cta{background:var(--rk-forest);color:#fff;border-color:var(--rk-forest)}
.rk-morecol-cta h3 i{color:var(--rk-amber)}
.rk-morecol-cta p{font-size:13.5px;color:rgba(255,255,255,.75);margin-bottom:18px}
.rk-morelinks{display:grid;gap:4px}
.rk-morelinks a{display:flex;align-items:center;gap:9px;padding:8px 2px;font-size:13.5px;border-bottom:1px dashed var(--rk-sand)}
.rk-morelinks a:hover{color:var(--rk-leaf)}
.rk-morelinks a i{color:var(--rk-amber-dark);font-size:11px}
.rk-morecol-cta .rk-morelinks a{border-color:rgba(255,255,255,.15)}
@media (max-width:860px){.rk-morecols{grid-template-columns:1fr}}

/* ---------- Certificats (liste) ---------- */
.rk-certwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}
.rk-certtile{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;transition:all .25s}
.rk-certtile:hover{transform:translateY(-5px);box-shadow:var(--rk-shadow);border-color:var(--rk-amber)}
.rk-certtile-media{display:block;aspect-ratio:4/3;background:var(--rk-sand);border-bottom:4px solid var(--rk-amber)}
.rk-certtile-media img{width:100%;height:100%;object-fit:cover}
.rk-certtile-body{padding:20px 22px}
.rk-certtile-body h2{font-size:16px;margin-bottom:8px}
.rk-certtile-body h2 a:hover{color:var(--rk-leaf)}
.rk-certtile-body time{display:block;font-size:12.5px;color:var(--rk-muted);margin-bottom:12px}

/* ---------- Catalogue / documentation ---------- */
.rk-catgrid2{display:grid;grid-template-columns:1.25fr .75fr;gap:52px;align-items:start}
.rk-doclist{display:grid;gap:16px;margin-top:30px}
.rk-doc{display:grid;grid-template-columns:60px 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:20px 24px;transition:all .25s}
.rk-doc:hover{border-color:var(--rk-leaf);box-shadow:var(--rk-shadow-sm)}
.rk-doc-ico{width:60px;height:60px;border-radius:var(--rk-radius);background:var(--rk-sand);color:var(--rk-leaf);display:flex;align-items:center;justify-content:center;font-size:22px}
.rk-doc h3{font-size:16px;margin-bottom:5px}
.rk-doc p{font-size:13px;color:var(--rk-muted);margin-bottom:5px}
.rk-doc em{font-style:normal;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--rk-amber-dark)}
.rk-catlinks{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px}
.rk-catside{position:sticky;top:90px;display:grid;gap:20px}
.rk-sideform{background:var(--rk-forest);color:#fff;border-radius:var(--rk-radius-lg);padding:30px}
.rk-sideform h2{font-size:19px;margin-bottom:10px}
.rk-sideform h2 i{color:var(--rk-amber);margin-right:8px}
.rk-sideform>p{font-size:13.5px;color:rgba(255,255,255,.75);margin-bottom:20px}
.rk-sideform input,.rk-sideform textarea{background:rgba(255,255,255,.96);border-color:transparent}
.rk-sidehelp{background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:26px}
.rk-sidehelp h3{font-size:16px;margin-bottom:10px}
.rk-sidehelp h3 i{color:var(--rk-leaf);margin-right:8px}
.rk-sidehelp p{font-size:13.5px;color:var(--rk-muted);margin-bottom:14px}
.rk-sidehelp .rk-btn{margin-bottom:8px}
@media (max-width:1024px){.rk-catgrid2{grid-template-columns:1fr}.rk-catside{position:static}}
@media (max-width:640px){.rk-doc{grid-template-columns:1fr;text-align:left}}

/* ---------- Contact ---------- */
.rk-channelrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-top:30px}
.rk-channel{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:22px;display:grid;gap:6px;transition:all .25s}
.rk-channel:hover{border-color:var(--rk-leaf);box-shadow:var(--rk-shadow-sm);transform:translateY(-3px)}
.rk-channel i{font-size:22px;color:var(--rk-leaf)}
.rk-channel strong{font-size:14.5px}
.rk-channel span{font-size:13px;color:var(--rk-muted);word-break:break-word}
.rk-contactgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:52px;align-items:start}
.rk-contactform-main{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:36px;box-shadow:var(--rk-shadow-sm)}
.rk-contactform-main h2{font-size:22px;margin-bottom:8px}
.rk-contactform-main h2 i{color:var(--rk-leaf);margin-right:8px}
.rk-contactform-main>p{font-size:13.5px;color:var(--rk-muted);margin-bottom:24px}
.rk-hintcard{background:var(--rk-sand);border-radius:var(--rk-radius-lg);padding:26px}
.rk-hintcard h3{font-size:16px;margin-bottom:14px}
.rk-hintcard h3 i{color:var(--rk-leaf);margin-right:8px}
.rk-hintlist{display:grid;gap:9px;counter-reset:hint}
.rk-hintlist li{counter-increment:hint;display:flex;gap:11px;font-size:13.5px}
.rk-hintlist li::before{content:counter(hint);flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--rk-leaf);color:#fff;font-size:11.5px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}
@media (max-width:1024px){.rk-contactgrid{grid-template-columns:1fr}}

/* ---------- FAQ page ---------- */
.rk-faqgrid{display:grid;grid-template-columns:.75fr 1.25fr;gap:48px;align-items:start}
.rk-faqside{position:sticky;top:90px}
.rk-faqfilter{display:flex;align-items:center;gap:12px;background:#fff;border:2px solid var(--rk-line);border-radius:999px;padding:4px 18px}
.rk-faqfilter:focus-within{border-color:var(--rk-leaf)}
.rk-faqfilter i{color:var(--rk-muted)}
.rk-faqfilter input{flex:1;border:0;outline:none;background:none;padding:10px 0;min-width:0}
.rk-faqchips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.rk-faqchips button{border:1px solid var(--rk-line);background:#fff;border-radius:999px;padding:7px 15px;font-size:12.5px;font-weight:700;color:var(--rk-muted);transition:all .2s}
.rk-faqchips button:hover,.rk-faqchips button.on{background:var(--rk-leaf);border-color:var(--rk-leaf);color:#fff}
.rk-faq-noresult{background:var(--rk-cream);border:1px dashed var(--rk-line);border-radius:var(--rk-radius);padding:22px;color:var(--rk-muted);font-size:14px;text-align:center}
@media (max-width:1024px){.rk-faqgrid{grid-template-columns:1fr}.rk-faqside{position:static}}

/* ---------- Articles ---------- */
.rk-arthero{background:linear-gradient(150deg,var(--rk-forest),#16301f);color:#fff;padding:30px 0 56px}
.rk-arthero-in{max-width:860px}
.rk-arthero-cat{display:inline-block;font-style:normal;background:var(--rk-amber);color:var(--rk-forest);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:5px 16px;border-radius:999px;margin:16px 0 18px}
.rk-arthero h1{font-size:clamp(27px,3.6vw,42px);margin-bottom:20px}
.rk-arthero-meta{display:flex;align-items:center;gap:26px;flex-wrap:wrap;font-size:13.5px;color:rgba(255,255,255,.75)}
.rk-arthero-share{display:inline-flex;align-items:center;gap:9px}
.rk-arthero-share a{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px}
.rk-arthero-share a:hover{background:var(--rk-amber);color:var(--rk-forest)}
.rk-tagrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid var(--rk-line)}
.rk-tagrow-label{font-size:13px;font-weight:700;color:var(--rk-muted)}
.rk-tagchip{display:inline-block;background:var(--rk-sand);border-radius:999px;padding:6px 16px;font-size:12.5px;font-weight:700}
.rk-tagchip:hover{background:var(--rk-leaf);color:#fff}
.rk-artcta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:24px 28px;margin-top:34px;font-size:14px}
.rk-artcta>i{font-size:26px;color:var(--rk-leaf)}
.rk-artcta strong{display:block}
.rk-artcta span{color:var(--rk-muted);font-size:13.5px}
.rk-artcta .rk-btn{margin-left:auto}
.rk-magrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px}
.rk-magcard{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:all .25s}
.rk-magcard:hover{transform:translateY(-5px);box-shadow:var(--rk-shadow)}
.rk-magcard-media{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--rk-sand)}
.rk-magcard-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.rk-magcard:hover .rk-magcard-media img{transform:scale(1.05)}
.rk-magcard-body{padding:22px 24px;display:flex;flex-direction:column;flex:1}
.rk-magcard-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--rk-muted);margin-bottom:10px}
.rk-magcard-meta em{font-style:normal;color:var(--rk-leaf);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:11.5px}
.rk-magcard-body h2{font-size:17.5px;margin-bottom:10px}
.rk-magcard-body h2 a:hover{color:var(--rk-leaf)}
.rk-magcard-body p{font-size:13.5px;color:var(--rk-muted);flex:1;margin-bottom:14px}

/* ---------- Recherche & tags ---------- */
.rk-searchhero{background:linear-gradient(150deg,var(--rk-forest),#16301f);color:#fff;padding:44px 0 56px}
.rk-searchhero h1{font-size:clamp(26px,3.6vw,40px);margin:12px 0 26px}
.rk-searchhero p{color:rgba(255,255,255,.78);margin-bottom:22px}
.rk-bigsearch{display:flex;max-width:640px;background:#fff;border-radius:999px;overflow:hidden;box-shadow:var(--rk-shadow)}
.rk-bigsearch input{flex:1;border:0;outline:none;padding:16px 24px;font-size:15px;min-width:0}
.rk-bigsearch button{border:0;background:var(--rk-leaf);color:#fff;font-weight:700;padding:0 28px;font-size:14.5px;display:flex;align-items:center;gap:9px}
.rk-bigsearch button:hover{background:var(--rk-leaf-dark)}
.rk-searchhints{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;font-size:13px;color:rgba(255,255,255,.65)}
.rk-searchhints a{background:rgba(255,255,255,.12);border-radius:999px;padding:6px 15px;color:#fff;font-weight:600}
.rk-searchhints a:hover{background:var(--rk-amber);color:var(--rk-forest)}
.rk-searchgrid{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:start}
.rk-resultlist{display:grid;gap:18px}
.rk-result{display:grid;grid-template-columns:190px 1fr;gap:24px;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);overflow:hidden;transition:all .25s}
.rk-result:hover{border-color:var(--rk-leaf);box-shadow:var(--rk-shadow-sm)}
.rk-result-media{display:block;min-height:140px;background:var(--rk-sand)}
.rk-result-media img{width:100%;height:100%;object-fit:cover}
.rk-result-body{padding:20px 24px 20px 0}
.rk-result-body em{font-style:normal;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:var(--rk-amber-dark)}
.rk-result-body h2{font-size:17px;margin:7px 0 8px}
.rk-result-body h2 a:hover{color:var(--rk-leaf)}
.rk-result-body p{font-size:13.5px;color:var(--rk-muted);margin-bottom:10px}
@media (max-width:1024px){.rk-searchgrid{grid-template-columns:1fr}}
@media (max-width:640px){.rk-result{grid-template-columns:1fr}.rk-result-body{padding:0 20px 20px}}
.rk-tagtools{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;margin-bottom:36px}
.rk-tagfield{display:flex;align-items:center;gap:11px;background:#fff;border:2px solid var(--rk-line);border-radius:999px;padding:4px 18px;min-width:min(340px,100%)}
.rk-tagfield:focus-within{border-color:var(--rk-leaf)}
.rk-tagfield i{color:var(--rk-muted)}
.rk-tagfield input{flex:1;border:0;outline:none;background:none;padding:10px 0;min-width:0}
.rk-tagfield span{font-size:12px;color:var(--rk-muted);white-space:nowrap}
.rk-tagpop{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.rk-tagpop-item{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:18px 20px;transition:all .25s}
.rk-tagpop-item:hover{border-color:var(--rk-leaf);box-shadow:var(--rk-shadow-sm);transform:translateY(-3px)}
.rk-tagpop-hash{width:38px;height:38px;flex-shrink:0;border-radius:10px;background:var(--rk-sand);color:var(--rk-leaf);font-weight:800;font-size:17px;display:flex;align-items:center;justify-content:center}
.rk-tagpop-item strong{display:block;font-size:14.5px}
.rk-tagpop-item span{font-size:12px;color:var(--rk-muted)}
.rk-tagpop-item>i{margin-left:auto;color:var(--rk-muted)}
.rk-cloud{display:flex;gap:11px;flex-wrap:wrap}
.rk-cloudtag{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--rk-line);border-radius:999px;padding:8px 18px;font-size:13.5px;font-weight:600}
.rk-cloudtag:hover{border-color:var(--rk-leaf);color:var(--rk-leaf)}
.rk-cloudtag em{font-style:normal;font-size:11px;background:var(--rk-sand);border-radius:999px;padding:2px 8px;color:var(--rk-muted)}
.rk-cloudtag-1{font-size:15px}
.rk-cloudtag-2{font-size:14px}
.rk-cloudtag-3{font-size:12.5px}
.rk-cloud-empty{margin-top:18px;color:var(--rk-muted);font-size:14px}
.rk-cloud-empty i{color:var(--rk-leaf);margin-right:8px}

/* ---------- Légal ---------- */
.rk-legalgrid{display:grid;grid-template-columns:.68fr 1.32fr;gap:48px;align-items:start}
.rk-legalside{position:sticky;top:90px}
.rk-legalcard{background:var(--rk-cream);border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:30px}
.rk-legalcard h1{font-size:24px;margin-bottom:20px}
.rk-legaltoc ol{list-style:none;display:grid;gap:2px;counter-reset:toc}
.rk-legaltoc li{counter-increment:toc}
.rk-legaltoc li a{display:flex;gap:10px;padding:8px 10px;border-radius:8px;font-size:13.5px;color:var(--rk-muted)}
.rk-legaltoc li a::before{content:counter(toc)'.';font-weight:800;color:var(--rk-leaf)}
.rk-legaltoc li.sub a{padding-left:26px;font-size:13px}
.rk-legaltoc li.sub a::before{content:'–'}
.rk-legaltoc li a:hover{background:#fff;color:var(--rk-leaf)}
.rk-legalother{margin-top:24px;padding-top:20px;border-top:1px solid var(--rk-line);display:grid;gap:8px}
.rk-legalother strong{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--rk-muted);margin-bottom:4px}
.rk-legalother a{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;padding:6px 0}
.rk-legalother a i{color:var(--rk-leaf)}
.rk-legalother a:hover{color:var(--rk-leaf)}
.rk-legalbody{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:44px}
@media (max-width:1024px){.rk-legalgrid{grid-template-columns:1fr}.rk-legalside{position:static}.rk-legalbody{padding:28px}}

/* ---------- Liste de devis ---------- */
.rk-quotegrid{display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:start}
.rk-qlist{display:grid;gap:16px}
.rk-qcard{display:grid;grid-template-columns:110px 1fr 44px;gap:20px;align-items:center;background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:16px 20px 16px 16px}
.rk-qcard-img{border-radius:var(--rk-radius);overflow:hidden;background:var(--rk-sand)}
.rk-qcard-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.rk-qcard-body h3{font-size:15.5px;margin-bottom:12px}
.rk-qcard-body h3 a:hover{color:var(--rk-leaf)}
.rk-qty{display:inline-flex;align-items:center;border:2px solid var(--rk-line);border-radius:999px;overflow:hidden}
.rk-qty a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;color:var(--rk-leaf)}
.rk-qty a:hover{background:var(--rk-sand)}
.rk-qty input{width:52px;text-align:center;border:0;outline:none;font-weight:700}
.rk-qremove{width:40px;height:40px;border-radius:50%;background:var(--rk-cream);display:flex;align-items:center;justify-content:center;color:var(--rk-muted)}
.rk-qremove:hover{background:#fbe9e7;color:#c62828}
.rk-qmore{padding:6px 4px}
.rk-quotesend{background:#fff;border:1px solid var(--rk-line);border-radius:var(--rk-radius-lg);padding:32px;position:sticky;top:90px;box-shadow:var(--rk-shadow-sm)}
.rk-quotesend h2{font-size:20px;margin-bottom:9px}
.rk-quotesend h2 i{color:var(--rk-leaf);margin-right:8px}
.rk-quotesend>p{font-size:13.5px;color:var(--rk-muted);margin-bottom:20px}
@media (max-width:1024px){.rk-quotegrid{grid-template-columns:1fr}.rk-quotesend{position:static}}
@media (max-width:560px){.rk-qcard{grid-template-columns:80px 1fr 36px}}
