.nr91-range {
  --nr91-ink: #172d42;
  --nr91-muted: #657787;
  --nr91-blue: #326bd4;
  --nr91-line: #dce5ed;
  color: var(--nr91-ink);
  background: linear-gradient(180deg, #f4f8fc 0%, #fafdff 65%, #fff 100%);
  font: inherit;
  overflow-wrap: break-word;
}

.nr91-range *,
.nr91-range *::before,
.nr91-range *::after { box-sizing: border-box; }

.nr91-inner { max-width: 1120px; margin: 0 auto; padding: 48px 24px 40px; }
.nr91-heading { display: grid; gap: 22px; }
.nr91-eyebrow { display: flex; align-items: center; gap: 8px; margin: 0 0 18px; color: var(--nr91-muted); font-size: 11px; line-height: 1.4; letter-spacing: .04em; }
.nr91-eyebrow > span { width: 6px; height: 6px; flex-shrink: 0; border-radius: 50%; background: var(--nr91-blue); box-shadow: 0 0 0 4px #e4edf9; }
.nr91-range h2 { margin: 0; font-size: clamp(33px, 8.9vw, 57px); font-weight: 550; letter-spacing: -.055em; line-height: 1.07; }
.nr91-range h2 > span { color: #8191a1; }
.nr91-intro { max-width: 370px; margin: 0; color: #586d7e; font-size: 15px; line-height: 1.6; letter-spacing: -.015em; text-wrap: pretty; }
.nr91-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0 0; padding: 0 0 22px; border-bottom: 1px solid var(--nr91-line); }
.nr91-range button { font: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.nr91-filters button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 43px; padding: 10px 12px; border: 1px solid #dae4ee; border-radius: 100px; color: #536c81; background: #fff9; font-size: 11px; font-weight: 500; line-height: 1.3; letter-spacing: -.012em; transition: color .2s, background-color .2s, border-color .2s; }
.nr91-filters button > span { font-size: 9px; font-variant-numeric: tabular-nums; opacity: .6; }
.nr91-filters button[aria-pressed="true"] { border-color: var(--nr91-ink); color: #fff; background: var(--nr91-ink); }
.nr91-range button:focus-visible { outline: 3px solid var(--nr91-blue); outline-offset: 4px; }
.nr91-gallery-heading { display: flex; justify-content: flex-end; gap: 16px; align-items: baseline; margin: 21px 0 18px; }
.nr91-category-note { margin: 0; font-size: 12px; line-height: 1.45; letter-spacing: -.015em; }
.nr91-count { flex-shrink: 0; margin: 0; color: var(--nr91-muted); font-size: 10px; line-height: 1.45; font-variant-numeric: tabular-nums; }
.nr91-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--nr91-line); border-left: 1px solid var(--nr91-line); }
.nr91-product { min-width: 0; margin: 0; border-right: 1px solid var(--nr91-line); border-bottom: 1px solid var(--nr91-line); background: #fff8; }
.nr91-product[hidden] { display: none; }
.nr91-expansion { display: flex; justify-content: center; padding-top: 22px; }
.nr91-expansion[hidden] { display: none; }
.nr91-expand { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 19px; border: 1px solid #c5d4e3; border-radius: 100px; background: #fff; color: var(--nr91-ink); font-size: 13px !important; font-weight: 500 !important; line-height: 1.4; letter-spacing: -.015em; transition: color .2s, background-color .2s, border-color .2s; }
.nr91-drawing { position: relative; display: grid; place-items: center; height: 126px; overflow: hidden; background-image: linear-gradient(#d6e1ec36 1px, transparent 1px), linear-gradient(90deg, #d6e1ec36 1px, transparent 1px); background-position: center; background-size: 22px 22px; }
.nr91-drawing::after { position: absolute; bottom: 17px; left: 16px; width: 10px; height: 10px; border-bottom: 1px solid #afc0d1; border-left: 1px solid #afc0d1; content: ""; }
.nr91-index { position: absolute; top: 13px; left: 13px; color: #6e879b; font-family: inherit; font-size: 7px; font-weight: 500; line-height: 1; letter-spacing: .09em; }
.nr91-drawing svg { display: block; width: 103px; height: 103px; margin-top: 10px; fill: none; stroke: #53687e; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; }
.nr91-drawing svg :is(path, rect, circle, ellipse, line, polyline, polygon) { vector-effect: non-scaling-stroke; }
.nr91-drawing .nr91-accent { stroke: #2464e8; }
.nr91-product-copy { min-height: 105px; padding: 15px 13px 20px; border-top: 1px solid #e6edf3; }
.nr91-range h3 { margin: 0; font-size: 14px; font-weight: 550; line-height: 1.22; letter-spacing: -.035em; }
.nr91-model { margin: 7px 0 0; color: #657e93; font-size: 10px; font-weight: 450; line-height: 1.5; letter-spacing: -.015em; }
.nr91-benefit { margin: 10px 0 0; color: #465f73; font-size: 12px; line-height: 1.45; letter-spacing: -.02em; text-wrap: pretty; }
.nr91-footer { display: flex; flex-direction: column; gap: 23px; padding-top: 23px; }
.nr91-footer > p { position: relative; margin: 0; padding-left: 16px; color: #637b8f; font-size: 10px; line-height: 1.6; }
.nr91-footnote-mark { position: absolute; left: 0; color: var(--nr91-blue); }
.nr91-footnote-detail { color: #7c8e9e; }
.nr91-plan { display: inline-flex; align-items: center; justify-content: space-between; align-self: flex-start; gap: 26px; min-height: 44px; padding: 10px 0; border: 0; border-bottom: 1px solid #a7bbce; border-radius: 0; color: var(--nr91-ink); background: none; font-size: 14px !important; font-weight: 500 !important; line-height: 1.35; letter-spacing: -.02em; }
.nr91-plan > span { color: var(--nr91-blue); font-size: 21px; font-weight: 400; }

@media (hover: hover) {
  .nr91-filters button:hover { border-color: #8fa8bf; background: #eaf1f8; }
  .nr91-filters button[aria-pressed="true"]:hover { border-color: #284b69; background: #284b69; }
  .nr91-plan:hover { color: var(--nr91-blue); border-color: var(--nr91-blue); }
  .nr91-expand:hover { color: var(--nr91-blue); border-color: #9bb5d0; background: #edf4fc; }
}

@media (min-width: 700px) {
  .nr91-inner { padding-top: 48px; padding-bottom: 44px; }
  .nr91-heading { grid-template-columns: 1.25fr 1fr; align-items: end; gap: 60px; }
  .nr91-eyebrow { font-size: 12px; }
  .nr91-filters { margin-top: 36px; gap: 10px; }
  .nr91-filters button { min-height: 44px; padding: 12px 16px; font-size: 12px; }
  .nr91-filters button > span { font-size: 10px; }
  .nr91-gallery-heading { margin-top: 23px; margin-bottom: 21px; }
  .nr91-category-note { font-size: 14px; }
  .nr91-count { font-size: 11px; }
  .nr91-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .nr91-drawing { height: 184px; }
  .nr91-drawing svg { width: 113px; height: 113px; }
  .nr91-index { top: 16px; left: 17px; font-size: 8px; }
  .nr91-product-copy { min-height: 133px; padding: 19px 17px 23px; }
  .nr91-range h3 { font-size: 16px; }
  .nr91-model { font-size: 10px; }
  .nr91-benefit { font-size: 12px; }
  .nr91-footer { flex-direction: row; align-items: center; justify-content: space-between; gap: 30px; }
  .nr91-footer > p { font-size: 11px; }
  .nr91-plan { align-self: auto; flex-shrink: 0; }
}

@media (min-width: 1000px) {
  .nr91-inner { padding-top: 52px; padding-bottom: 48px; }
  .nr91-heading { grid-template-columns: 1.3fr 1fr; gap: 90px; }
  .nr91-intro { margin-bottom: 4px; font-size: 16px; }
  .nr91-drawing { height: 208px; }
  .nr91-drawing svg { width: 130px; height: 130px; }
  .nr91-product-copy { padding: 21px 21px 25px; }
  .nr91-range h3 { font-size: 18px; }
  .nr91-model { font-size: 11px; }
  .nr91-benefit { font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .nr91-filters button, .nr91-expand { transition: none; }
}
