@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/onest-400-latin-ext.woff2?v=960412f3) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/onest-400-latin.woff2?v=fd7dbbcb) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/onest-500-latin-ext.woff2?v=960412f3) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/onest-500-latin.woff2?v=fd7dbbcb) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/onest-600-latin-ext.woff2?v=960412f3) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/onest-600-latin.woff2?v=fd7dbbcb) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/onest-700-latin-ext.woff2?v=960412f3) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/onest-700-latin.woff2?v=fd7dbbcb) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/signika-500-latin-ext.woff2?v=0a33712a) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/signika-500-latin.woff2?v=c1d38ae7) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/signika-600-latin-ext.woff2?v=0a33712a) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/signika-600-latin.woff2?v=c1d38ae7) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/signika-700-latin-ext.woff2?v=0a33712a) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Signika';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/signika-700-latin.woff2?v=c1d38ae7) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face{font-family:"bootstrap-icons";src:url("/assets/fonts/icons.woff2?v=a7638cec") format("woff2");font-display:block}
.bi::before,[class^="bi-"]::before,[class*=" bi-"]::before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:normal!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.bi-alarm-fill::before{content:"\f101"}
.bi-arrow-down-right-circle::before{content:"\f120"}
.bi-arrow-left::before{content:"\f12f"}
.bi-arrow-left-right::before{content:"\f12b"}
.bi-arrow-right::before{content:"\f138"}
.bi-arrow-right-circle-fill::before{content:"\f133"}
.bi-arrow-right-short::before{content:"\f135"}
.bi-bank::before{content:"\f62e"}
.bi-book-half::before{content:"\f193"}
.bi-building-fill::before{content:"\f876"}
.bi-buildings::before{content:"\f87d"}
.bi-calculator::before{content:"\f1e0"}
.bi-calculator-fill::before{content:"\f1df"}
.bi-calendar-week-fill::before{content:"\f1f2"}
.bi-calendar3::before{content:"\f214"}
.bi-card-list::before{content:"\f227"}
.bi-cash-coin::before{content:"\f632"}
.bi-cash-stack::before{content:"\f246"}
.bi-check-circle-fill::before{content:"\f26a"}
.bi-check2-circle::before{content:"\f270"}
.bi-cloud-drizzle-fill::before{content:"\f29c"}
.bi-droplet-half::before{content:"\f30c"}
.bi-envelope-check-fill::before{content:"\f68b"}
.bi-exclamation-triangle-fill::before{content:"\f33a"}
.bi-eye-fill::before{content:"\f33e"}
.bi-file-earmark-ruled::before{content:"\f385"}
.bi-file-earmark-text::before{content:"\f38b"}
.bi-geo-alt::before{content:"\f3e8"}
.bi-geo-alt-fill::before{content:"\f3e7"}
.bi-hand-thumbs-up::before{content:"\f407"}
.bi-hourglass-bottom::before{content:"\f41e"}
.bi-house-door-fill::before{content:"\f422"}
.bi-house-down-fill::before{content:"\f88c"}
.bi-house-fill::before{content:"\f424"}
.bi-key::before{content:"\f44f"}
.bi-mailbox2::before{content:"\f47d"}
.bi-moisture::before{content:"\f493"}
.bi-people-fill::before{content:"\f4cf"}
.bi-person-badge::before{content:"\f4d3"}
.bi-person-lines-fill::before{content:"\f4db"}
.bi-person-vcard::before{content:"\f8c9"}
.bi-pin-angle-fill::before{content:"\f4ea"}
.bi-pin-map-fill::before{content:"\f64b"}
.bi-receipt::before{content:"\f50f"}
.bi-search::before{content:"\f52a"}
.bi-shield-check::before{content:"\f52f"}
.bi-shield-lock-fill::before{content:"\f537"}
.bi-signpost-2-fill::before{content:"\f545"}
.bi-signpost-split::before{content:"\f549"}
.bi-signpost-split-fill::before{content:"\f548"}
.bi-snow::before{content:"\f56d"}
.bi-sun::before{content:"\f5a2"}
.bi-telephone-fill::before{content:"\f5b4"}
.bi-telephone-inbound::before{content:"\f5b8"}
.bi-telephone-outbound-fill::before{content:"\f5bb"}
.bi-thermometer-snow::before{content:"\f5d0"}
.bi-tools::before{content:"\f5db"}
.bi-tree-fill::before{content:"\f5e1"}
.bi-triangle::before{content:"\f5e5"}
.bi-ui-checks::before{content:"\f5f9"}
.bi-water::before{content:"\f617"}
.bi-wind::before{content:"\f61d"}
.bi-x-circle-fill::before{content:"\f622"}
.bi-x-octagon::before{content:"\f627"}

:root{--primary:#1f2f52; --primary-dark:#131e38; --primary-2:#3b5c94; --green:#2e7d5b; --green-soft:#e7f3ec; --accent:#0d8a80; --accent-dark:#086b63; --ink:#1a2233; --muted:#5a6577; --line:#e2e6ee; --bg-soft:#f3f6fa; --bg-soft2:#e8eef6; --hero-start:#131e38; --hero-end:#2c4a80; --hero-glow:rgba(94,214,200,.22); --hero-sub:#dbe4f2; --hero-soft:#eef4fb; --hero-badge:#f3d38a; --head-bg:#131e38; --footer-bg:#0f1729; --footer-text:#a8b3c6; --footer-link:#d4dceb; --footer-muted:#7886a0; --white:#fff; --radius:16px; --shadow:0 22px 44px -18px rgba(42,31,59,.32); --shadow-sm:0 1px 2px rgba(42,31,59,.08),0 8px 22px -12px rgba(42,31,59,.22); --radius-sm:10px; --font-head:'Signika'; --font-body:'Onest';}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body),system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);
  background:#fff;line-height:1.7;margin:0;font-size:15.5px;overflow-x:hidden}
h1,h2,h3,h4,.lissage-7{font-family:var(--font-head),var(--font-body),sans-serif;line-height:1.18;color:var(--ink)}
h1{font-weight:700;letter-spacing:-.01em}
h2{font-weight:700;font-size:clamp(1.55rem,2.9vw,2.25rem);letter-spacing:-.01em;margin:0 0 .6rem}
h3{font-weight:600}
img{max-width:100%}
a{color:var(--accent-dark)}

.betonniere-tyrolienne{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}
.aplomb-pioche-b{max-width:780px}
.aplomb-2{padding:70px 0}
.boucharde-a{background:var(--bg-soft)}
.crible-7{background:var(--hero-soft)}
.riflard-toise{text-align:center}
.dressage-2{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-soft2);color:var(--primary);
  font-weight:700;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;padding:.32rem .8rem .32rem .65rem;
  border-radius:99px;margin-bottom:.8rem}
.dressage-2::before{content:"";width:8px;height:8px;border-radius:0 50% 50% 50%;transform:rotate(45deg);
  background:var(--accent);flex:0 0 auto}
.boucharde-a .dressage-2{background:#fff}
.aplomb-2>.betonniere-tyrolienne>h2{max-width:32ch;text-wrap:balance}
.mire-gachee{font-size:1.02rem;color:var(--muted);max-width:70ch;margin:0 0 .4rem}

.pioche-layage{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;border-radius:999px;
  font-weight:600;cursor:pointer;text-decoration:none;transition:.18s;font-family:var(--font-head),sans-serif;
  letter-spacing:.01em}
.beurrage-ot{background:var(--accent);color:#fff;padding:.78rem 1.6rem;box-shadow:0 10px 22px -12px rgba(207,47,99,.85)}
.beurrage-ot:hover{background:var(--accent-dark);color:#fff}
.laye-ragreage-b{font-size:1.05rem;padding:.95rem 2rem}
.mire-in{width:100%}

.massette-7{position:sticky;top:0;z-index:60;background:#fff;border-top:4px solid var(--accent);
  box-shadow:0 1px 0 var(--line);transition:box-shadow .25s ease}
.massette-7.coulis-9{box-shadow:0 10px 26px -16px rgba(19,30,56,.45)}
.massette-7 .betonniere-tyrolienne{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:66px}
.lissage-7{font-weight:700;font-size:1.18rem;text-decoration:none;color:var(--primary-dark);
  display:flex;align-items:center;gap:.6rem}
.barbotine-3{width:42px;height:42px;flex:0 0 auto;display:block}
.lissage-7>span{display:flex;flex-direction:column;line-height:1.05}
.lissage-7 small{font-family:var(--font-body),sans-serif;font-weight:600;font-size:.66rem;letter-spacing:.04em;
  color:var(--accent-dark);margin-top:.2rem}
.frottoir-2{display:flex;align-items:center;gap:1.3rem}
.berthelet-um{color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem}
.berthelet-um .bi{color:var(--primary-2)}
.berthelet-um:hover{color:var(--accent-dark)}
.layage-3{font-weight:600;color:var(--primary-dark);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.massette-7 .beurrage-ot{padding:.58rem 1.25rem;font-size:.92rem;box-shadow:none}

.marteline-7{position:relative;overflow:hidden;color:#fff;padding:52px 0 104px;isolation:isolate;
  background:radial-gradient(900px 420px at 88% -12%,var(--hero-glow),transparent 66%),
             linear-gradient(170deg,var(--hero-start) 10%,var(--hero-end) 100%);
  border-radius:0 0 44px 44px}
.marteline-7::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.12;
  background-image:repeating-linear-gradient(104deg,rgba(255,255,255,.85) 0 1px,transparent 1px 26px);
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 78%);mask-image:linear-gradient(180deg,#000,transparent 78%)}
.marteline-7 .betonniere-tyrolienne{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px);gap:48px;align-items:start}
.gratoir-ot{display:inline-block;color:var(--hero-badge);font-weight:600;font-size:.86rem;letter-spacing:.05em;
  text-transform:uppercase;margin:0 0 .8rem;border-bottom:2px solid rgba(127,214,204,.45);padding-bottom:.2rem}
.marteline-7 h1{color:#fff;font-size:clamp(2rem,4vw,3.05rem);line-height:1.08;margin:0 0 .7rem;text-wrap:balance}
.marteline-7 h1 span{display:block;font-weight:500;font-size:.5em;line-height:1.3;color:var(--hero-sub);margin-top:.55rem}
.marteline-7 .dressage-seau-b{color:#fff;opacity:.88;font-size:.95rem;font-weight:500;margin:0 0 1rem;letter-spacing:.01em}
.oiseau-gravillon,.boucharde-el{color:var(--hero-sub);font-size:1rem;line-height:1.7;margin:1.1rem 0 0;max-width:42rem}
.laitance-3{display:flex;flex-wrap:wrap;gap:.45rem;margin:.4rem 0 0}
.barbotine-betonniere{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.1);
  padding:.36rem .8rem;border-radius:10px;font-size:.82rem;font-weight:600;border-left:3px solid var(--hero-badge)}
.barbotine-betonniere .bi{color:var(--hero-badge)}
.beurrage-laitance{list-style:none;padding:0;margin:1.3rem 0 0;max-width:42rem;display:grid;gap:.55rem}
.beurrage-laitance li{display:flex;align-items:flex-start;gap:.7rem;color:#eef3fa;font-size:.94rem;line-height:1.5}
.beurrage-laitance li .bi{font-size:1.05rem;margin-top:.15rem;flex:0 0 auto}

.boucharde-9{background:#fff;border-radius:22px;box-shadow:0 34px 64px -30px rgba(15,8,25,.75);
  overflow:hidden;color:var(--ink);max-width:430px;margin-left:auto}
.ravalement-plomb-b{background:var(--hero-soft);text-align:left;padding:1.1rem 1.4rem;border-bottom:1px solid var(--line)}
.ravalement-plomb-b strong{font-family:var(--font-head),sans-serif;font-size:1.16rem;display:flex;align-items:center;gap:.5rem;
  color:var(--primary-dark);font-weight:700}
.ravalement-plomb-b strong .bi{color:var(--accent)}
.ravalement-plomb-b span{font-size:.85rem;color:var(--muted);display:block;margin-top:.2rem}
.boucharde-9 form{padding:1.1rem 1.4rem 1.3rem}
.oiseau-i .riflard-berthelet{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.oiseau-i .ciseau-i{grid-column:1/-1}
.oiseau-i label{font-size:.82rem;font-weight:600;color:var(--muted);margin-bottom:.25rem;display:block}
.oiseau-i input,.oiseau-i select{width:100%;border:1.5px solid var(--line);border-radius:12px;
  padding:.62rem .85rem;font-size:.95rem;background:#fff;color:var(--ink);transition:.15s;font-family:inherit;height:46px}
.oiseau-i input:focus,.oiseau-i select:focus{outline:0;border-color:var(--primary-2);box-shadow:0 0 0 4px rgba(59,92,148,.15)}
.oiseau-i label.gachee-toise,.gachee-toise{display:flex;gap:.55rem;align-items:flex-start;font-size:.76rem;line-height:1.5;
  color:var(--muted);margin:.4rem 0 .9rem;font-weight:400;background:var(--bg-soft);border-radius:12px;padding:.7rem .8rem}
.gachee-toise a{color:var(--accent-dark)}
.gachee-toise input{margin-top:.2rem;width:17px;height:17px;flex:0 0 17px;accent-color:var(--accent)}
.boucharde-9 .beurrage-ot{height:52px;padding:0 1.4rem;font-size:1rem}
.plomb-a{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1rem;margin:.85rem 0 0;padding:0;list-style:none}
.plomb-a li{font-size:.8rem;color:var(--green);font-weight:600;display:flex;align-items:center;gap:.3rem}
.talochage-um{font-size:.72rem;color:#8a93a6;text-align:center;margin:.6rem 0 0;line-height:1.5}

.oiseau-i .niveau-a{border:0;padding:0;margin:0;min-width:0}
.oiseau-i .niveau-a legend{font-weight:700;font-size:1.05rem;margin:0 0 .75rem;color:var(--primary-dark);padding:0;
  font-family:var(--font-head),sans-serif}
.oiseau-i:not(.laitance-um) .projeteuse,.oiseau-i:not(.laitance-um) .platoir-i,.oiseau-i:not(.laitance-um) .betonniere{display:none}
.oiseau-i:not(.laitance-um) .niveau-a{margin-bottom:1rem}
.betonniere{font-size:.78rem;color:var(--muted);margin:0 0 .35rem;font-weight:600;letter-spacing:.02em}
.platoir-i{height:4px;background:var(--bg-soft2);border-radius:99px;overflow:hidden;margin:0 0 1rem}
.gachee-seau-b{display:block;height:100%;width:17%;background:linear-gradient(90deg,var(--primary-2),var(--accent));
  border-radius:99px;transition:width .3s}
.eponge-ot{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.5rem}
.oiseau-i label.brouette-ot,.brouette-ot{position:relative;display:flex;align-items:center;gap:.55rem;
  border:1.5px solid var(--line);border-radius:12px;padding:.65rem .75rem;cursor:pointer;font-weight:600;
  font-size:.86rem;color:var(--ink);margin-bottom:0;background:#fff;line-height:1.3;transition:.15s}
.brouette-ot input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.brouette-ot .bi{color:var(--primary-2);font-size:1.1rem;flex:0 0 auto}
.oiseau-i label.brouette-ot:hover{border-color:var(--primary-2);background:var(--bg-soft)}
.oiseau-i label.brouette-ot:has(input:checked){border-color:var(--accent);background:var(--hero-soft)}
.oiseau-i label.brouette-ot:has(input:checked) .bi{color:var(--accent)}
.oiseau-i label.brouette-ot:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.projeteuse{display:flex;justify-content:space-between;gap:.6rem;margin-top:.9rem}
.crible-u{background:#fff;color:var(--muted);border:1.5px solid var(--line);padding:.68rem 1rem}
.crible-u:hover{color:var(--primary);border-color:var(--primary-2)}
.auge-2{margin-left:auto;padding:.78rem 1.4rem}
.projeteuse [hidden]{display:none}

.boucharde-pioche{position:relative;z-index:3;margin:-60px 0 0;padding:0 16px}
.boucharde-pioche .betonniere-tyrolienne{max-width:1080px;background:#fff;border-radius:20px;box-shadow:var(--shadow);
  display:grid;grid-template-columns:repeat(4,1fr);padding:6px}
.treteau-9{display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem}
.treteau-9+.treteau-9{border-left:1px solid var(--line)}
.treteau-9 .bi{font-size:1.45rem;color:var(--accent);width:44px;height:44px;border-radius:14px;background:var(--hero-soft);
  display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.treteau-9 b{font-family:var(--font-head),sans-serif;font-size:1.08rem;display:block;line-height:1.15;color:var(--primary-dark)}
.treteau-9 span{font-size:.8rem;color:var(--muted);line-height:1.35;display:block}

.frottoir-3{display:flex;flex-direction:column}
.frottoir-3>.marteline-7{order:-2}
.frottoir-3>.boucharde-pioche{order:-1}
.broche-um{position:absolute;left:-9999px;top:auto;z-index:100;background:var(--accent);color:#fff;
  padding:.6rem 1rem;border-radius:0 0 12px 0;font-weight:700;text-decoration:none}
.broche-um:focus{left:0;top:70px}

.mortier-toise{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:40px;align-items:start}
.truelle-u .dressage-malaxeur-b{font-size:1.07rem;color:#26303f;font-weight:500;line-height:1.8}
.truelle-u p{color:#46506a;margin:0 0 1rem;line-height:1.85}
.tyrolienne{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.2rem 1.3rem;position:sticky;top:92px}
.brouette-el{font-size:1rem;margin:0 0 .6rem;color:var(--primary-dark);display:flex;align-items:center;gap:.45rem;
  padding-bottom:.6rem;border-bottom:2px solid var(--accent)}
.brouette-el .bi{color:var(--accent)}
.tyrolienne ul{list-style:none;padding:0;margin:0}
.tyrolienne li{display:flex;align-items:center;gap:.6rem;padding:.55rem 0;border-bottom:1px dashed var(--line);font-size:.9rem}
.tyrolienne li:last-child{border-bottom:0}
.tyrolienne li .bi{color:var(--primary-2);font-size:1rem;flex:0 0 auto}
.tyrolienne .talochage-7{color:var(--muted);flex:1}
.tyrolienne .frottoir-grattage{font-weight:700;color:var(--ink);text-align:right}
.treteau-u{font-size:.77rem;color:var(--muted);margin:.8rem 0 0;line-height:1.55}
.treteau-u a{color:var(--accent-dark)}

.pelle-2{background:var(--bg-soft)}
.pelle-2 .dressage-2{background:#fff}
.pelle-pelle{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:28px;align-items:start;margin-top:1.4rem}
.pelle-pelle .tyrolienne{position:static}
.grattage{list-style:none;margin:0;padding:1.2rem 1.3rem;display:grid;gap:.9rem;background:#fff;border-radius:20px;
  border:1px solid var(--line)}
.grattage li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem .8rem;font-size:.92rem}
.grattage li small{grid-column:1/-1;color:var(--muted);font-size:.8rem}
.seau-gratoir-b{color:var(--ink)}
.plomb-rejointoyage{grid-column:1/-1;grid-row:2;display:block;height:.6rem;border-radius:99px;background:var(--bg-soft2);overflow:hidden}
.plomb-rejointoyage span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--primary-2),var(--accent))}
.grattage b{font-family:var(--font-head);color:var(--accent-dark);min-width:3rem;text-align:right}
.rejointoyage-9{background:#fff;border-left:3px solid var(--hero-badge);padding:.6rem .9rem;border-radius:var(--radius-sm);
  font-size:.9rem;color:var(--muted)}

.pioche-in{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:12px}
.ragreage-9{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:18px;align-items:center;background:#fff;
  border:1px solid var(--line);border-radius:20px;padding:1rem 1.3rem;transition:border-color .2s}
.ragreage-9:hover{border-color:var(--primary-2)}
.rejointoyage-7{width:48px;height:48px;border-radius:0 50% 50% 50%;background:var(--primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-family:var(--font-head),sans-serif;font-weight:700;font-size:1.1rem}
.layage-berthelet h3{font-size:1.06rem;margin:0 0 .3rem;color:var(--primary-dark)}
.layage-berthelet p{margin:.2rem 0;font-size:.9rem;color:var(--muted);display:flex;gap:.5rem;align-items:flex-start;line-height:1.55}
.layage-berthelet p .bi{margin-top:.2rem;flex:0 0 auto;color:var(--primary-2)}
.layage-berthelet .frottoir-a{color:var(--ink)}
.layage-berthelet .frottoir-a .bi{color:var(--green)}
.ciseau-el{font-family:var(--font-head),sans-serif;font-weight:700;color:var(--accent-dark);background:var(--hero-soft);
  border-radius:99px;padding:.42rem .95rem;white-space:nowrap;font-size:.95rem}

.broche-tamis-b{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:1.6rem}
.berthelet-9{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.3rem 1.3rem 1.2rem;
  transition:border-color .2s,transform .2s}
.berthelet-9:hover{border-color:var(--primary-2);transform:translateY(-2px)}
.berthelet-9 .rejointoyage-3{width:46px;height:46px;border-radius:14px;background:var(--hero-soft);color:var(--accent);
  display:flex;align-items:center;justify-content:center;font-size:1.35rem;margin-bottom:.8rem}
.berthelet-9 h3{font-size:1.04rem;margin:0 0 .35rem;color:var(--primary-dark)}
.berthelet-9 p{color:var(--muted);font-size:.9rem;margin:0;line-height:1.62}

.aplomb-gratoir{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:28px;align-items:center;
  background:linear-gradient(130deg,var(--primary-dark),var(--primary) 70%,var(--hero-end));color:#fff;
  border-radius:24px;padding:2rem 2.2rem}
.aplomb-gratoir .dressage-2{background:rgba(255,255,255,.12);color:var(--hero-badge)}
.aplomb-gratoir .dressage-2::before{background:var(--hero-badge)}
.aplomb-gratoir h2{color:#fff;font-size:clamp(1.35rem,2.5vw,1.85rem);margin:0 0 .5rem}
.platoir-dressage{color:var(--hero-sub);margin:0;font-size:.95rem}
.laye-badigeon-b{text-align:right}
.ciment-3{font-family:var(--font-head),sans-serif;font-weight:700;color:var(--hero-badge);font-size:2.6rem;line-height:1;white-space:nowrap}
.ciment-3 small{display:block;font-family:var(--font-body),sans-serif;font-size:.8rem;color:var(--hero-sub);font-weight:500;
  margin-top:.5rem;white-space:normal}
.laye-badigeon-b .pioche-layage{margin-top:1.1rem}

.seau{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.4rem 0 0;border:1px solid var(--line);
  border-radius:20px;background:#fff}
.niveau-bouchardage{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.5}
.niveau-bouchardage caption{caption-side:bottom;text-align:left;padding:.8rem 1.1rem;font-size:.82rem;color:var(--muted);
  border-top:1px solid var(--line)}
.niveau-bouchardage th,.niveau-bouchardage td{padding:.8rem 1.1rem;text-align:left;vertical-align:top}
.niveau-bouchardage thead th{background:var(--bg-soft2);color:var(--primary-dark);font-weight:700;font-size:.74rem;
  text-transform:uppercase;letter-spacing:.06em}
.niveau-bouchardage tbody tr+tr{border-top:1px solid var(--line)}
.niveau-bouchardage tbody th{font-weight:700;color:var(--primary-dark)}
.niveau-bouchardage tbody th small{display:block;font-weight:400;color:var(--muted);font-size:.8rem;margin-top:.2rem}
.niveau-bouchardage td strong{color:var(--accent-dark);white-space:nowrap}
.lissage-a{margin:1.4rem 0;padding:1rem 1.2rem;background:var(--hero-soft);border-radius:14px;color:#36405a}

.tyrolienne-ot{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tyrolienne-ot li{display:flex;gap:.55rem;align-items:flex-start;color:#38425a;font-size:.95rem;line-height:1.62;
  background:var(--bg-soft);border-radius:16px;padding:.95rem 1.05rem}
.tyrolienne-ot .bi{color:var(--accent);font-size:1.35rem;line-height:1;flex:0 0 auto}

.pige-gachee{margin-top:1.5rem;max-width:880px;display:grid;gap:10px}
.badigeon-gravillon-b{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .2s}
.badigeon-gravillon-b[open]{border-color:var(--primary-2);box-shadow:var(--shadow-sm)}
.badigeon-gravillon-b summary{font-weight:600;font-family:var(--font-head),sans-serif;cursor:pointer;padding:.95rem 1.2rem;
  list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:1rem;color:var(--primary-dark)}
.badigeon-gravillon-b summary::-webkit-details-marker{display:none}
.badigeon-gravillon-b summary::after{content:"\F64D";font-family:"bootstrap-icons";flex:0 0 auto;width:30px;height:30px;border-radius:50%;
  background:var(--hero-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:.9rem;
  transition:transform .2s}
.badigeon-gravillon-b[open] summary::after{transform:rotate(45deg)}
.badigeon-gravillon-b p{padding:0 1.2rem 1.1rem;color:var(--muted);margin:0;font-size:.94rem;line-height:1.75}

.truelle-2{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:2rem 0 0}
.ravalement-9{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.5rem 1.3rem 1.3rem}
.ravalement-9 .gravillon-3{position:absolute;top:-15px;right:18px;min-width:34px;height:34px;border-radius:10px;background:var(--accent);
  color:#fff;font-weight:700;font-family:var(--font-head),sans-serif;display:flex;align-items:center;justify-content:center}
.ravalement-9>.bi{color:var(--primary-2);font-size:1.6rem;display:block}
.ravalement-9 h3{font-size:1.06rem;margin:.5rem 0 .35rem;color:var(--primary-dark)}
.ravalement-9 p{color:var(--muted);font-size:.92rem;margin:0;line-height:1.65}

.ciseau-ot{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.4rem}
.gobetis-el{display:inline-flex;align-items:center;gap:.55rem;background:#fff;border:1px solid var(--line);border-radius:99px;
  padding:.6rem 1.15rem;font-weight:600;font-size:.92rem;color:#36405a}
.gobetis-el .bi{color:var(--accent);font-size:1.1rem}

.beurrage-barbotine{margin:1.3rem 0 0;border-radius:20px;overflow:hidden;background:var(--bg-soft2)}
.beurrage-barbotine img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.beurrage-barbotine figcaption{font-size:.8rem;color:var(--muted);padding:.5rem .9rem;line-height:1.5}
.auge-u{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:1.4rem}
.auge-u .beurrage-barbotine{margin:0}
.pige-7{position:relative;overflow:hidden;border-radius:20px;margin:1.6rem 0 0;line-height:0;user-select:none;
  -webkit-user-select:none;touch-action:pan-y;background:var(--bg-soft2)}
.pige-7 img{display:block;width:100%;height:auto}
.seau-betonniere{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0 0 0 var(--pos))}
.badigeon-um{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;margin-left:-1.5px;background:#fff;pointer-events:none;z-index:3}
.badigeon-um .bi{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;
  background:#fff;color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1}
.aplomb-ot{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:ew-resize;
  -webkit-appearance:none;appearance:none;background:transparent;z-index:4}
.ragreage-7{position:absolute;top:14px;display:inline-flex;align-items:center;gap:.35rem;color:#fff;font-weight:700;
  font-size:.84rem;padding:.32rem .8rem;border-radius:10px;pointer-events:none;z-index:5;line-height:1.3}
.cordeau-i{left:14px;background:rgba(19,30,56,.85)}
.aplomb-pige{right:14px;background:var(--green)}

.pelle-a{height:390px;border-radius:20px;margin-top:1.6rem;background:var(--bg-soft2);z-index:0;overflow:hidden;
  border:1px solid var(--line)}
.pelle-a .leaflet-container{border-radius:20px;font-family:inherit}

.tyrolienne-i{background:var(--bg-soft)}
.tyrolienne-i .dressage-2{background:#fff}
.gratoir-3{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:1.4rem}
.taloche-frottoir-b{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.2rem 1.3rem}
.taloche-frottoir-b h3{font-size:.98rem;margin:0 0 .7rem;color:var(--primary-dark)}
.taloche-frottoir-b ul{list-style:none;padding:0;margin:0;columns:2;column-gap:20px;font-size:.9rem}
.taloche-frottoir-b li{margin-bottom:.35rem;break-inside:avoid}
.taloche-frottoir-b a{text-decoration:none;color:#46506a}
.taloche-frottoir-b a::before{content:"\F309";font-family:"bootstrap-icons";color:var(--accent);margin-right:.15rem;vertical-align:-.15em}
.taloche-frottoir-b a:hover{color:var(--accent-dark);text-decoration:underline}
.taloche-frottoir-b .frottoir-um{color:var(--muted);font-size:.8em;white-space:nowrap}
.pige-el{grid-column:1/-1}
.pige-el ul{columns:4}
.talochage ul{columns:1}
.gratoir-3:not(:has(.talochage))>.taloche-frottoir-b:first-child:not(.pige-el){grid-column:1/-1}
.gratoir-3:not(:has(.talochage))>.taloche-frottoir-b:first-child:not(.pige-el) ul{columns:4}

.taloche-gravillon-b,.ciment-layage{list-style:none;padding:0;columns:2;column-gap:24px;margin-top:1.4rem}
@media(min-width:768px){.taloche-gravillon-b,.ciment-layage{columns:4}}
.taloche-gravillon-b li,.ciment-layage li{break-inside:avoid;margin-bottom:.4rem}
.taloche-gravillon-b a,.ciment-layage a{text-decoration:none;color:#46506a}
.taloche-gravillon-b a:hover,.ciment-layage a:hover{color:var(--accent-dark);text-decoration:underline}
.taloche-gravillon-b .frottoir-um{color:var(--muted);font-size:.8em}

.oiseau-toise{position:relative;max-width:520px;margin:1.3rem 0 0;text-align:left}
.coulis-i{display:flex;align-items:center;gap:.6rem;background:#fff;border-radius:999px;padding:.8rem 1.2rem;
  box-shadow:0 14px 30px -18px rgba(0,0,0,.6)}
.coulis-i .bi{color:var(--accent);font-size:1.1rem}
.coulis-i input{border:0;outline:0;width:100%;font-size:1rem;background:transparent;color:var(--ink);font-family:inherit}
.seau-el{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;background:#fff;border:1px solid var(--line);
  border-radius:16px;box-shadow:var(--shadow);list-style:none;margin:0;padding:.35rem;max-height:340px;overflow:auto}
.seau-el li{margin:0}
.seau-el a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .8rem;border-radius:10px;
  text-decoration:none;color:var(--ink)}
.seau-el a:hover{background:var(--hero-soft)}
.seau-el small{color:var(--muted);font-weight:600}

.dressage-um{position:relative}
.gobetis-in{position:absolute;left:0;right:0;top:100%;z-index:50;background:#fff;border:1px solid var(--line);
  border-radius:12px;box-shadow:var(--shadow);list-style:none;margin:.25rem 0 0;padding:.25rem;max-height:240px;overflow:auto}
.gobetis-in li{padding:.5rem .7rem;border-radius:8px;cursor:pointer;font-size:.88rem;color:var(--ink)}
.gobetis-in li:hover{background:var(--hero-soft)}

.mire-gratoir{padding:58px 16px}
.mire-gratoir .betonniere-tyrolienne{max-width:1080px;position:relative;overflow:hidden;border-radius:28px;padding:44px 42px;color:#fff;
  background:linear-gradient(115deg,var(--primary-dark),var(--hero-end));display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:10px 32px;align-items:center}
.mire-gratoir .betonniere-tyrolienne::after{content:"";position:absolute;right:-70px;bottom:-90px;width:260px;height:260px;
  border-radius:0 50% 50% 50%;transform:rotate(45deg);background:var(--hero-glow);pointer-events:none}
.mire-gratoir h2{color:#fff;font-size:clamp(1.45rem,2.8vw,2.1rem);margin:0;grid-column:1;text-wrap:balance}
.mire-gratoir p{color:var(--hero-sub);margin:0;grid-column:1;max-width:62ch}
.mire-gratoir .pioche-layage{grid-column:2;grid-row:1/span 2;position:relative;z-index:1}

.mire-niveau{background:var(--footer-bg);color:var(--footer-text)}
.mire-niveau .betonniere-tyrolienne{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px;padding:54px 20px 26px}
.mire-niveau h4{color:#fff;font-size:1rem;margin:0 0 .8rem}
.mire-niveau p{font-size:.9rem;line-height:1.75;color:var(--footer-text);margin:0;max-width:56ch}
.mire-niveau a{color:var(--footer-link);text-decoration:none;display:block;margin-bottom:.4rem;font-size:.9rem}
.mire-niveau a:hover{color:#fff}
.cordeau-aplomb-b{grid-column:1/-1;columns:5;column-gap:24px;border-top:1px solid rgba(255,255,255,.08);padding-top:22px}
.cordeau-aplomb-b h4{column-span:all}
.cordeau-aplomb-b a{font-size:.82rem;margin-bottom:.25rem}
.riflard-9{display:block;color:var(--hero-badge);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;
  margin:.7rem 0 .3rem;break-after:avoid}
.lissage{border-top:1px solid rgba(255,255,255,.08);text-align:center;padding:16px 20px;font-size:.8rem;color:var(--footer-muted)}

.talochage-a h1{margin-bottom:.6rem}
.talochage-a h2{margin:1.8rem 0 .5rem;font-size:1.12rem;color:var(--primary-dark)}
.talochage-a p{color:#424c63;font-size:.96rem}
.talochage-a a{color:var(--accent-dark)}
.projeteuse-beurrage{font-size:3.4rem;color:var(--green)}

.oiseau-3{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;opacity:0}
.layage-i{display:none}

.tyrolienne-2{padding:54px 0 0}
.tyrolienne-2 h1{margin:.2rem 0 .7rem;line-height:1.15;font-size:clamp(1.8rem,3.4vw,2.6rem)}
.platoir-in{padding-top:30px}
.berthelet-laye{display:block;position:relative;overflow:hidden;text-decoration:none;color:#fff;border-radius:24px;
  padding:2.1rem 2.3rem;margin-bottom:2.2rem;background:linear-gradient(130deg,var(--hero-start),var(--hero-end))}
.berthelet-laye>*{position:relative;z-index:1}
.oiseau-um{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.76rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--hero-badge);margin-bottom:.7rem}
.berthelet-laye h2{color:#fff;font-size:1.65rem;line-height:1.2;margin:0 0 .6rem;max-width:26ch}
.berthelet-laye p{color:var(--hero-sub);font-size:1rem;line-height:1.6;margin:0 0 1rem;max-width:64ch}
.marteline-ot{display:inline-flex;align-items:center;gap:.45rem;font-weight:700;color:#fff}
.malaxeur-2{display:grid;gap:10px}
.auge-um{display:flex;align-items:flex-start;gap:1.2rem;padding:1.2rem 1.2rem;border:1px solid var(--line);border-radius:18px;
  text-decoration:none;color:var(--ink);transition:border-color .16s}
.auge-um:hover{border-color:var(--primary-2)}
.lissage-el{flex:none;min-width:2ch;font-family:var(--font-head),sans-serif;font-weight:700;font-size:1.4rem;line-height:1.1;color:var(--accent)}
.lissage-i{flex:1}
.lissage-i h3{font-size:1.1rem;line-height:1.32;margin:0 0 .3rem}
.lissage-i p{color:var(--muted);font-size:.9rem;line-height:1.6;margin:0}
.malaxeur-ot{flex:none;align-self:center;color:var(--accent)}
.aplomb-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sable-9{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.2rem 1.3rem;
  text-decoration:none;color:var(--ink)}
.sable-9:hover{border-color:var(--primary-2)}
.sable-9 h3{font-size:1.02rem;line-height:1.3;margin:0 0 .4rem}
.sable-9 p{color:var(--muted);font-size:.88rem;line-height:1.5;margin:0 0 .9rem;display:-webkit-box;-webkit-line-clamp:3;
  -webkit-box-orient:vertical;overflow:hidden}
.ciseau-u{margin-top:auto;display:inline-flex;align-items:center;gap:.4rem;color:var(--accent-dark);font-weight:700;font-size:.9rem}
.truelle-broche{font-size:.84rem;color:var(--muted);margin-bottom:1rem}
.truelle-broche a{color:var(--accent-dark);text-decoration:none}
.niveau-brouette h1{font-size:clamp(1.8rem,3.2vw,2.5rem);line-height:1.16;margin-bottom:1.2rem}
.auge-a{font-size:1.05rem;line-height:1.8;color:#2c3648}
.auge-a h2{font-size:1.42rem;margin:2.1rem 0 .8rem;line-height:1.28}
.auge-a h3{font-size:1.14rem;margin:1.5rem 0 .5rem}
.auge-a p{margin:0 0 1.1rem}
.auge-a ul,.auge-a ol{margin:0 0 1.1rem;padding-left:1.3rem}
.auge-a li{margin-bottom:.45rem}
.auge-a a{color:var(--accent-dark)}
.jointoyeur-um{margin-top:2.4rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.jointoyeur-um h3{font-size:1.04rem;margin-bottom:.7rem}
.cordeau-in{display:flex;flex-wrap:wrap;gap:.45rem}
.cordeau-in a{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:.32rem .8rem;font-size:.86rem;
  text-decoration:none;color:var(--primary)}
.cordeau-in a:hover{background:var(--hero-soft);color:var(--accent-dark)}

@media(max-width:1100px){
  .cordeau-aplomb-b{columns:4}
}
@media(max-width:980px){
  .marteline-7 .betonniere-tyrolienne{grid-template-columns:1fr;gap:32px}
  .boucharde-9{margin:0 auto;max-width:520px;width:100%}
  .mortier-toise,.pelle-pelle{grid-template-columns:1fr}
  .tyrolienne{position:static}
  .broche-tamis-b{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .marteline-7{padding:36px 0 92px;border-radius:0 0 30px 30px}
  .boucharde-pioche .betonniere-tyrolienne{grid-template-columns:1fr 1fr}
  .treteau-9:nth-child(3){border-left:0}
  .treteau-9:nth-child(n+3){border-top:1px solid var(--line)}
  .truelle-2{grid-template-columns:1fr;gap:24px}
  .aplomb-gratoir,.gratoir-3,.auge-u,.tyrolienne-ot{grid-template-columns:1fr}
  .laye-badigeon-b{text-align:left}
  .pige-el ul,.gratoir-3:not(:has(.talochage))>.taloche-frottoir-b:first-child:not(.pige-el) ul{columns:2}
  .mire-gratoir .betonniere-tyrolienne{grid-template-columns:1fr;padding:34px 26px}
  .mire-gratoir .pioche-layage{grid-column:1;grid-row:auto;justify-self:start;margin-top:.8rem}
  .mire-niveau .betonniere-tyrolienne{grid-template-columns:1fr 1fr;gap:24px}
  .laitance-u{grid-column:1/-1}
  .cordeau-aplomb-b{columns:3}
  .aplomb-3{grid-template-columns:1fr}
  .frottoir-2 .pioche-layage{display:none}
  .aplomb-2{padding:54px 0}
  .layage-i{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:70;background:#fff;border-top:1px solid var(--line);
    padding:.6rem .9rem;box-shadow:0 -8px 22px rgba(19,30,56,.12)}
  .layage-i .pioche-layage{width:100%}
  body{padding-bottom:68px}
}
@media(max-width:600px){
  body{font-size:15px}
  .betonniere-tyrolienne{padding:0 16px}
  .massette-7 .betonniere-tyrolienne{height:60px}
  .lissage-7{font-size:1.04rem}
  .lissage-7 small{font-size:.6rem}
  .barbotine-3{width:36px;height:36px}
  .berthelet-um{display:none}
  .layage-3 span{display:none}
  .marteline-7 h1{font-size:1.85rem}
  .broche-tamis-b{grid-template-columns:1fr}
  .boucharde-pioche{padding:0 12px}
  .treteau-9{padding:.8rem .7rem;gap:.55rem}
  .treteau-9 .bi{width:36px;height:36px;font-size:1.15rem;border-radius:11px}
  .treteau-9 b{font-size:.98rem}
  .treteau-9 span{font-size:.74rem}
  .ragreage-9{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:.95rem 1rem;align-items:start}
  .rejointoyage-7{width:40px;height:40px;font-size:1rem}
  .ciseau-el{grid-column:2;justify-self:start;font-size:.9rem}
  .aplomb-gratoir{padding:1.5rem 1.3rem}
  .ciment-3{font-size:2.2rem}
  .niveau-bouchardage{font-size:.86rem}
  .aplomb-gratoir+.seau thead{display:none}
  .aplomb-gratoir+.seau tbody tr{display:grid;grid-template-columns:1fr auto;column-gap:.8rem;row-gap:.25rem;padding:.85rem .95rem}
  .aplomb-gratoir+.seau tbody th,.aplomb-gratoir+.seau tbody td{padding:0}
  .aplomb-gratoir+.seau tbody th{grid-column:1/-1}
  .aplomb-gratoir+.seau tbody td:nth-of-type(1){grid-column:1/-1;color:var(--muted);font-size:.84rem}
  .aplomb-gratoir+.seau tbody td:nth-of-type(3){grid-column:1/-1;color:var(--muted);font-size:.82rem}
  .boucharde-9 form{padding:1rem 1rem 1.2rem}
  .oiseau-i .riflard-berthelet{grid-template-columns:1fr}
  .oiseau-i .niveau-a:first-of-type .eponge-ot{grid-template-columns:1fr}
  .laitance-3,.beurrage-laitance{display:none}
  .oiseau-gravillon,.boucharde-el{margin-top:.6rem}
  .taloche-frottoir-b ul,.pige-el ul,.gratoir-3:not(:has(.talochage))>.taloche-frottoir-b:first-child:not(.pige-el) ul{columns:1}
  .mire-niveau .betonniere-tyrolienne{grid-template-columns:1fr}
  .cordeau-aplomb-b{columns:2}
  .berthelet-laye{padding:1.6rem 1.3rem}
  .berthelet-laye h2{font-size:1.32rem}
  .malaxeur-ot{display:none}
  .taloche-gravillon-b,.ciment-layage{columns:2}
  .gobetis-el{font-size:.88rem}
}

.broche-marteline{grid-template-columns:168px minmax(0,1fr) auto;padding:.7rem 1.3rem .7rem .7rem}
.broche-7{position:relative;border-radius:14px;overflow:hidden;align-self:stretch;min-height:112px;background:var(--bg-soft2)}
.broche-7 img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.broche-7 .rejointoyage-7{position:absolute;left:8px;top:8px;width:36px;height:36px;font-size:.95rem;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.grattage-betonniere-b{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:1.5rem}
.grattage-betonniere-b .pige-gachee{margin-top:0}
.ciment-berthelet{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;position:sticky;top:96px}
.ciment-berthelet img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.ciment-berthelet figcaption{font-size:.84rem;color:var(--muted);line-height:1.55;padding:.75rem 1rem .9rem}
.tamis-2{float:right;width:46%;margin:.35rem 0 1rem 1.5rem;border-radius:16px;overflow:hidden;background:var(--bg-soft2)}
.tamis-2 img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.tamis-2 figcaption{font-size:.78rem;color:var(--muted);line-height:1.45;padding:.45rem .7rem .55rem}
.auge-a h2{clear:both}
@media(max-width:900px){.grattage-betonniere-b{grid-template-columns:1fr}.ciment-berthelet{position:static;max-width:560px}}
@media(max-width:600px){
  .broche-marteline{grid-template-columns:1fr;padding:.8rem}
  .broche-7{min-height:0;aspect-ratio:2/1}
  .broche-marteline .ciseau-el{grid-column:1}
  .tamis-2{float:none;width:100%;margin:.4rem 0 1.2rem}
}

.eponge-ot>.brouette-ot:last-child:nth-child(odd){grid-column:1/-1}
@media(max-width:980px){
  .marteline-7 .betonniere-tyrolienne{display:flex;flex-direction:column;gap:0}
  .marteline-7 .betonniere-tyrolienne>div:first-child{display:contents}
  .marteline-7 .betonniere-tyrolienne>div:first-child>*{order:4}
  .marteline-7 .betonniere-tyrolienne>div:first-child>.gratoir-ot{order:1;align-self:flex-start}
  .marteline-7 .betonniere-tyrolienne>div:first-child>h1{order:2}
  .marteline-7 .betonniere-tyrolienne>div:last-child{order:3;margin:.4rem 0 1.4rem}
}
.rejointoyage-smille .ravalement-9{opacity:0;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.rejointoyage-smille.taloche-taloche .ravalement-9{opacity:1;animation:gacheeEntre .6s cubic-bezier(.2,.75,.25,1) backwards}
.rejointoyage-smille.taloche-taloche .ravalement-9:nth-child(2){animation-delay:.2s}
.rejointoyage-smille.taloche-taloche .ravalement-9:nth-child(3){animation-delay:.4s}
.rejointoyage-smille .ravalement-9::after{content:"";position:absolute;left:1.3rem;right:1.3rem;bottom:.7rem;height:3px;border-radius:3px;
  background:var(--accent);transform:scaleX(0);transform-origin:left center;opacity:.85}
.rejointoyage-smille .ravalement-9.laye-a{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 14px 30px -14px rgba(19,30,56,.35)}
.rejointoyage-smille .ravalement-9.laye-a::after{animation:gacheeJauge 2.9s linear forwards}
.rejointoyage-smille .ravalement-9.laye-a .gravillon-3{animation:gacheeRebond 1.45s ease-in-out infinite}
@keyframes gacheeEntre{from{opacity:0;transform:scale(.93)}to{opacity:1;transform:none}}
@keyframes gacheeJauge{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes gacheeRebond{0%,100%{transform:translateY(0)}35%{transform:translateY(-6px)}60%{transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){
  .rejointoyage-smille .ravalement-9,.rejointoyage-smille .ravalement-9::after,.rejointoyage-smille .ravalement-9 .gravillon-3{animation:none!important;opacity:1;transform:none}
}
