/* Device listing from Uređaji.svg; modal typography and controls follow the platform. */
.nd-devices-hero.nd-workshops-hero { min-height: clamp(300px, 27.26vw, 471px); border-radius: var(--nd-radius-lg); }
.nd-devices-hero .nd-workshops-hero-overlay { background: rgb(0 0 0 / 47%); }
.nd-devices-hero .nd-workshops-hero-copy { width: min(762px, calc(100% - 64px)); padding-block: 38px; }
.nd-devices-hero .nd-workshops-hero-copy h1 { margin: 0 0 34px; font-size: clamp(38px, 4.2vw, 72px); line-height: 1; }
.nd-devices-hero .nd-workshops-hero-copy p { font-size: 18px; line-height: 28px; }
.nd-devices-list { max-width: 1344px; margin-top: 73px; }
.nd-devices-search { position: relative; width: min(414px, 100%); margin: 0 auto 72px; }
.nd-devices-search input[type="search"] { width: 100%; min-height: 66px; padding: 16px 46px 16px 60px; border: 1px solid var(--nd-border, #d3d7da); border-radius: 40px; background: #fff; color: var(--nd-text); font: inherit; font-size: 17px; }
.nd-devices-search input[type="search"]::placeholder { color: #62676b; opacity: 1; }
.nd-devices-search input[type="search"]:focus-visible { outline: 2px solid var(--nd-blue); outline-offset: 3px; }
.nd-devices-search button { position: absolute; inset: 8px auto 8px 10px; display: grid; place-items: center; width: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--nd-text); cursor: pointer; }
.nd-devices-search button:hover { color: var(--nd-blue); background: var(--nd-footer); }
.nd-devices-search button svg { width: 24px; height: 24px; }
.nd-devices-results { margin: -40px 0 32px; text-align: center; font-size: 15px; color: var(--nd-muted); }
.nd-device-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 46px 64px; }
.nd-device-card { min-width: 0; overflow: hidden; border-radius: var(--nd-radius-lg); background: #fff; box-shadow: var(--nd-shadow); }
.nd-device-card-link { display: flex; flex-direction: column; height: 100%; color: var(--nd-text); text-decoration: none; }
.nd-device-card-link:hover .nd-text-link { color: var(--nd-blue-dark); text-decoration: underline; text-underline-offset: 4px; }
.nd-device-card-link:focus-visible { outline: 3px solid var(--nd-blue); outline-offset: -5px; border-radius: inherit; }
.nd-device-card-image { position: relative; display: block; aspect-ratio: 640 / 500; }
.nd-device-card-image img { position: absolute; top: 50%; left: 50%; display: block; width: 77.5%; height: 87%; max-height: 434px; object-fit: contain; transform: translate(-50%, -50%); }
.nd-device-kind-hand-blender .nd-device-card-image img { width: 67.8%; }
.nd-device-kind-blender .nd-device-card-image img { width: 29.4%; }
.nd-device-kind-meat-mincer .nd-device-card-image img { width: 89%; }
.nd-device-card-copy { display: flex; flex-direction: column; gap: 19px; padding: 6px 8% 48px; }
.nd-device-card-copy h2 { margin: 0; font-size: clamp(25px, 2.1vw, 36px); line-height: 1.2; overflow-wrap: anywhere; }
.nd-device-card-copy .nd-text-link { font-size: 18px; font-weight: 700; }
.nd-devices-list .nd-pagination { margin-top: 64px; }
.nd-devices-empty { padding: 36px; background: var(--nd-footer); border-radius: 24px; text-align: center; }
body.nd-device-dialog-open { overflow: hidden; }
.nd-device-dialog { width: min(940px, calc(100% - 48px)); max-width: none; max-height: calc(100dvh - 48px); margin: auto; padding: 0; border: 0; border-radius: 32px; background: #fff; color: var(--nd-text); box-shadow: 0 24px 80px rgb(0 0 0 / 25%); overscroll-behavior: contain; }
.nd-device-dialog::backdrop { background: rgb(0 0 0 / 55%); }
.nd-device-dialog-inner { position: relative; padding: 40px; }
.nd-device-dialog-close { position: sticky; top: 16px; z-index: 2; display: grid; place-items: center; width: 42px; height: 42px; margin: -20px -20px -22px auto; padding: 10px; border: 0; border-radius: 50%; background: var(--nd-footer); color: var(--nd-text); cursor: pointer; }
.nd-device-dialog-close:hover { background: #e0e7ea; }
.nd-device-dialog-close svg { width: 22px; height: 22px; }
.nd-device-dialog-header { display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); align-items: center; gap: 36px; padding: 20px 20px 30px 0; border-bottom: 1px solid var(--nd-border, #d3d7da); }
.nd-device-dialog-header > img { width: 100%; height: 220px; object-fit: contain; }
.nd-device-dialog-header .nd-eyebrow { margin: 0 0 12px; font-size: 12px; }
.nd-device-dialog-header h2 { margin: 0 0 18px; font-size: clamp(28px, 3vw, 38px); line-height: 1.15; overflow-wrap: anywhere; }
.nd-device-dialog-header p:last-child { margin: 0; font-size: 16px; line-height: 1.6; }
.nd-device-reasons { padding-top: 28px; }
.nd-device-reasons h3 { margin: 0 0 22px; font-size: 26px; line-height: 1.25; }
.nd-device-reasons ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.nd-device-reasons li { display: flex; align-items: flex-start; gap: 15px; padding: 18px 20px; background: var(--nd-footer); border-radius: 18px; }
.nd-device-check { display: grid; place-items: center; flex: 0 0 28px; height: 28px; border-radius: 50%; background: var(--nd-blue); color: #fff; font-weight: 700; }
.nd-device-reasons h4 { margin: 0 0 5px; font-size: 17px; line-height: 1.35; }
.nd-device-reasons p { margin: 0; font-size: 15px; line-height: 1.55; }
.nd-device-dialog-footer { margin-top: 24px; }
.nd-device-dialog-footer > p { margin: 0 0 24px; color: var(--nd-muted); font-size: 12px; line-height: 1.6; }
.nd-device-source.nd-outline-button { max-width: 100%; gap: 12px; background: var(--nd-blue); color: #fff; white-space: normal; text-align: center; }
.nd-device-source.nd-outline-button:hover { background: var(--nd-blue-dark); }
.nd-device-dialog button:focus-visible { outline: 2px solid var(--nd-blue); outline-offset: 3px; }
@media (max-width: 1000px) {
  .nd-device-grid { gap: 32px; }
  .nd-device-card-copy { padding-bottom: 32px; }
  .nd-devices-list { margin-top: 48px; }
  .nd-devices-search { margin-bottom: 48px; }
  .nd-devices-results { margin-top: -20px; }
}
@media (max-width: 700px) {
  .nd-devices-hero.nd-workshops-hero { border-radius: 24px; min-height: 310px; }
  .nd-devices-hero .nd-workshops-hero-copy { width: calc(100% - 36px); padding-block: 30px; }
  .nd-devices-hero .nd-workshops-hero-copy h1 { margin-bottom: 24px; font-size: 38px; }
  .nd-devices-hero .nd-workshops-hero-copy p { font-size: 15px; line-height: 1.65; }
  .nd-devices-list { margin-top: 32px; }
  .nd-devices-search { margin-bottom: 36px; }
  .nd-devices-search input[type="search"] { min-height: 56px; font-size: 16px; }
  .nd-device-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .nd-device-card { border-radius: 24px; }
  .nd-device-card-copy { gap: 14px; padding: 6px 8% 30px; }
  .nd-device-card-copy h2 { font-size: 28px; }
  .nd-device-card-copy .nd-text-link { font-size: 16px; }
  .nd-device-dialog { width: calc(100% - 24px); max-height: calc(100dvh - 24px); border-radius: 24px; }
  .nd-device-dialog-inner { padding: 24px; }
  .nd-device-dialog-close { margin: -10px -10px 0 auto; top: 12px; }
  .nd-device-dialog-header { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 0 0 24px; }
  .nd-device-dialog-header > img { width: min(220px, 100%); height: 180px; margin-inline: auto; }
  .nd-device-dialog-header h2 { font-size: 28px; }
  .nd-device-reasons h3 { font-size: 23px; }
  .nd-device-reasons li { padding: 16px; gap: 12px; }
  .nd-device-reasons h4 { font-size: 16px; }
  .nd-device-reasons p { font-size: 14px; }
}
