.partners{padding:76px 0 62px;border-top:1px solid var(--line,#d9d8cf);border-bottom:1px solid var(--line,#d9d8cf)}
.partners-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:36px}
.partners-kicker{margin:0 0 15px;color:var(--accent,#9c5038);font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.partners h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);line-height:1.12;letter-spacing:-.035em;font-weight:400;margin:0}
.partners-intro{margin:12px 0 0;font-size:14px;color:var(--muted,#6b7067);line-height:1.6}
.partners-controls{display:flex;gap:7px;flex-shrink:0}
.partners-control{width:42px;height:42px;border:1px solid var(--line,#d9d8cf);border-radius:50%;background:transparent;display:grid;place-items:center;color:var(--ink,#303b32);cursor:pointer;transition:background .2s,border-color .2s;padding:0}
.partners-control:hover{background:#fff;border-color:#9a9e91}
.partners-control svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.partners-control:focus-visible,.partner-tile:focus-visible,.partners-viewport:focus-visible{outline:2px solid var(--accent,#9c5038);outline-offset:4px}
.partners-viewport{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y;cursor:grab;mask-image:linear-gradient(to right,transparent,#000 16px,#000 calc(100% - 16px),transparent);padding:6px 0 10px;-webkit-overflow-scrolling:touch}
.partners-viewport::-webkit-scrollbar{display:none}
.partners-viewport:active{cursor:grabbing}
.partners-track{display:flex;width:max-content}
.partners-group{display:flex;gap:18px;padding-right:18px;flex:none}
.partner-tile{appearance:none;flex:0 0 196px;width:196px;height:122px;padding:24px;border:1px solid #e3e1d9;border-radius:22px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .25s,box-shadow .25s,transform .25s;background-clip:padding-box;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
.partner-mark{display:flex;align-items:center;justify-content:center;filter:grayscale(1);opacity:.52;transition:filter .35s,opacity .35s;pointer-events:none}
.partner-mark img{display:block;object-fit:contain;max-width:126px;max-height:55px;width:auto;height:auto;-webkit-user-drag:none}
.partner-mark--moniers img{max-width:91px;max-height:61px}
.partner-mark--ise img{max-width:91px;max-height:51px}
.partner-mark--btk{background:#343d35;padding:9px 11px;border-radius:1px}
.partner-mark--btk img{max-width:103px;max-height:37px}
.partner-mark--metrostav img{max-width:125px;max-height:46px}
.partner-mark--centes img{max-width:63px;max-height:63px}
.partner-mark--peri img{max-width:92px;max-height:53px}
.partner-mark--lorencic img{max-width:116px;max-height:60px}
.partner-mark--durica img{max-width:146px;max-height:56px}
/* The official FeroMAX header contains the logo at its left edge. Keep the
   original file intact and display that region at its original aspect ratio. */
.partner-mark--feromax{position:relative;width:126px;height:55px;overflow:hidden}
.partner-mark--feromax img{position:absolute;left:0;top:0;width:500px;height:auto;max-width:none;max-height:none;object-fit:initial}
.partner-tile[aria-pressed=true]{border-color:#b7baac;box-shadow:0 4px 16px #303b3208;transform:translateY(-2px)}
.partner-tile[aria-pressed=true] .partner-mark,.partner-tile:focus-visible .partner-mark{filter:grayscale(0);opacity:1}
@media(hover:hover){.partner-tile:hover{border-color:#b7baac;transform:translateY(-2px)}.partner-tile:hover .partner-mark{filter:grayscale(0);opacity:1}}
.partners-help{font-size:12px;color:var(--muted,#6b7067);margin:18px 0 0;display:flex;align-items:center;gap:8px}
.partners-help svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.3}
.partners-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:640px){.partners{padding:43px 0 35px}.partners-heading{align-items:flex-start;gap:14px;margin-bottom:25px}.partners h2{font-size:34px;max-width:260px}.partners-intro{font-size:12px;max-width:240px;margin-top:10px}.partners-controls{gap:5px;flex-wrap:wrap;width:36px}.partners-control{width:36px;height:36px}.partners-control[data-step]{display:none}.partners-kicker{font-size:10px;letter-spacing:.17em;margin-bottom:13px}.partners-group{gap:14px;padding-right:14px}.partner-tile{flex-basis:160px;width:160px;height:108px;padding:18px;border-radius:20px}.partner-mark img{max-width:108px;max-height:47px}.partner-mark--moniers img{max-width:79px;max-height:54px}.partner-mark--ise img{max-width:80px;max-height:44px}.partner-mark--btk{padding:8px 9px}.partner-mark--btk img{max-width:87px;max-height:32px}.partner-mark--centes img{max-width:55px;max-height:55px}.partners-help{font-size:11px;line-height:1.5;margin-top:14px}}
@media(prefers-reduced-motion:reduce){.partner-tile,.partner-mark,.partners-control{transition:none}.partner-tile[aria-pressed=true]{transform:none}}
@media(max-width:640px){.partner-mark--peri img{max-width:80px;max-height:46px}.partner-mark--lorencic img{max-width:104px;max-height:54px}.partner-mark--durica img{max-width:124px;max-height:47px}.partner-mark--feromax{width:108px;height:47px}.partner-mark--feromax img{width:430px;max-width:none;max-height:none}}

/* Explicit width prevents viewBox-only SVGs collapsing in a flex item. */
.partner-mark--assyx img,.partner-mark--doka img,.partner-mark--hilti img{width:126px}

/* Isolate the approved layout from older site partner-list rules. */
.partners>.partners-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:nowrap}
.partners>.partners-viewport{display:block}
@media(max-width:640px){.partners>.partners-heading{align-items:flex-start;gap:14px}}
