/* Reuse the RCBO series-card frame animation; only simplify the contents. */
.vres-explorer{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);border:1px solid #e1e6ec}
.vres-board{position:relative;align-self:start;margin-top:60px;color:#1b2027}
.vres-board>svg{display:block;width:100%;height:auto}
.vres-points{position:absolute;inset:0 0 auto;height:100%}
.vres-point{position:absolute;top:69%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:92px;padding:10px 16px;border:1px solid #cbd3dc;border-radius:4px;background:white;color:#1b2027;font:600 14px/1.4 Poppins,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.vres-point--mcb{left:27%}.vres-point--rccb{left:51%}.vres-point--rcbo{left:75%}
.vres-point>span{width:7px;height:7px;border-radius:50%;background:#d71920}
.vres-point:hover,.vres-point[aria-pressed=true]{background:#1b2027;color:white;border-color:#1b2027}
.vres-point:focus-visible,.vres-detail-links a:focus-visible{outline:3px solid #d71920;outline-offset:3px}
.vres-board-caption{text-align:center;font-size:13px;color:#687482;margin:0 0 28px}
.vres-details{padding:32px;border-left:1px solid #e1e6ec;background:#f5f7fa;min-width:0}
.vres-detail[hidden]{display:none!important}
.vres-detail-image{height:230px;display:flex;align-items:center;justify-content:center;background:white;border:1px solid #e1e6ec;margin-bottom:24px}
.vres-detail-image img{width:100%;height:100%;object-fit:contain}
.vres-detail h3{margin:0 0 12px;font-size:26px;line-height:1.3;color:#1b2027}
.vres-detail p{font-size:14px;line-height:1.7;color:#3b4652;margin:0 0 16px}
.vres-detail .vres-detail-name{font-weight:600;color:#1b2027}
.vres-detail-links{display:flex;flex-wrap:wrap;gap:8px 24px}
.vres-detail-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;font-weight:600;color:#d71920;text-decoration:none}
.vres-detail-links a:hover{text-decoration:underline;text-underline-offset:4px}
.vres-explorer-note{font-size:13px;color:#687482;line-height:1.7;margin:20px 0 0;max-width:90ch}
@media(max-width:760px){.vres-explorer{grid-template-columns:1fr}.vres-board{margin-top:16px}.vres-points{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 16px 20px}.vres-point{position:static;transform:none;min-width:0;padding:10px 6px;font-size:13px}.vres-details{border-left:0;border-top:1px solid #e1e6ec;padding:24px}.vres-detail h3{font-size:23px}.vres-detail-image{height:220px}.vres-board-caption{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.vres-point{transition:none}}
.viox-solution-page--residential-buildings .viox-solution-products {
  --mcb-red: #d71920;
  --mcb-ink: #1b2027;
  --mcb-border: #e1e6ec;
}
.viox-solution-page--residential-buildings .viox-mcb-series-card__media {
  background: #fff;
}
.viox-solution-page--residential-buildings .viox-mcb-series-card__media img {
  object-fit: contain;
}
.viox-solution-page--residential-buildings .viox-mcb-series-card__body {
  min-height: 104px;
  padding: 22px;
}
.viox-solution-page--residential-buildings .viox-mcb-series-card h3,
.viox-solution-page--residential-buildings .viox-mcb-series-card h4 {
  display: block;
  min-height: 0;
  overflow: visible;
  -webkit-line-clamp: unset;
  line-clamp: unset;
  color: var(--mcb-ink);
}
.vres .viox-solution-hero h1 { max-width: 19ch; font-size: clamp(36px, 3.7vw, 54px); line-height: 1.12; }
.vres .viox-solution-hero__media img { position: absolute; inset: 0; }
.vres-functions, .vres-circuits, .vres-request { padding: 88px 0; }
.vres-functions, .vres-request { background: #fff; }
.vres-circuits { background: #1b2027; color: #d7dee6; }
.vres-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; margin-bottom: 44px; }
.vres .vres-heading h2, .vres .vres-request h2 { font-size: clamp(28px, 3vw, 40px); line-height: 1.18; }
.vres-heading p, .vres-request p { margin: 0; line-height: 1.75; color: #3b4652; }
.vres .vres-circuits h2, .vres .vres-circuits dt { color: #fff; }
.vres .vres-circuits p { color: #d7dee6; }
.vres-map { padding: 48px 40px 34px; background: #f5f7fa; border: 1px solid #e1e6ec; }
.vres-map__origin { position: relative; text-align: center; padding-bottom: 54px; }
.vres-map__origin::after { content: ''; position: absolute; bottom: 0; left: 50%; height: 38px; border-left: 1px solid #d71920; }
.vres-map strong, .vres-map span { display: block; }
.vres-map__origin-icon { width: 120px; height: 120px; margin: 0 auto 22px; color: #1b2027; }
.vres-map__origin-icon svg, .vres-map__device svg { display: block; width: 100%; height: 100%; }
.vres-map .vres-icon-accent { stroke: #d71920; }
.vres-map__origin strong { font-size: 25px; color: #1b2027; }
.vres-map__origin > span:last-child { max-width: 600px; margin: 8px auto 0; color: #3b4652; line-height: 1.6; }
.vres-map__branches { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid #d71920; }
.vres-map__node { position: relative; min-width: 0; padding: 45px 30px 28px; color: #1b2027; text-align: center; text-decoration: none; }
.vres-map__node + .vres-map__node { border-left: 1px solid #e1e6ec; }
.vres-map__node::before { content: ''; position: absolute; top: 0; left: 50%; height: 27px; border-left: 1px solid #d71920; }
.vres-map__device { width: 88px; height: 100px; margin: 0 auto 22px; color: #1b2027; transition: color .3s cubic-bezier(.16,1,.3,1), transform .3s cubic-bezier(.16,1,.3,1); }
.vres-map__node strong { font-size: 27px; line-height: 1.1; color: #1b2027; }
.vres-map__node > span:not(.vres-map__device) { margin-top: 10px; color: #1b2027; font-size: 17px; font-weight: 600; line-height: 1.45; }
.vres-map__node small { display: block; max-width: 31ch; min-height: 48px; margin: 9px auto 0; color: #3b4652; font-size: 14px; line-height: 1.65; }
.vres-map__node em { display: inline-flex; align-items: center; gap: 7px; margin-top: 18px; color: #b51218; font-size: 13px; font-style: normal; font-weight: 700; line-height: 1.4; }
.vres-map__node em span { transition: transform .3s cubic-bezier(.16,1,.3,1); }
.vres-map__node:hover .vres-map__device, .vres-map__node:focus-visible .vres-map__device { color: #d71920; transform: translateY(-4px); }
.vres-map__node:hover em span, .vres-map__node:focus-visible em span { transform: translateX(4px); }
.vres-map__node:focus-visible { outline: 3px solid #d71920; outline-offset: -3px; }
.vres-map__note { border-top: 1px solid #e1e6ec; padding-top: 22px; margin: 16px 0 0; font-size: 14px; color: #3b4652; line-height: 1.7; }
.vres-extras { display: grid; grid-template-columns: 1fr 2fr; gap: 36px; margin-top: 32px; }
.vres-extras h3 { margin: 0; font-size: 22px; }
.vres-extras p { margin: 0; line-height: 1.75; }
.vres-extras a, .vres-request a { color: #b51218; text-underline-offset: 4px; }
.vres-loads { display: grid; grid-template-columns: 1fr 1fr; gap: 0 64px; margin: 0; }
.vres-loads > div { padding: 26px 0; border-top: 1px solid #53606c; }
.vres-loads dt { font-size: 20px; font-weight: 600; }
.vres-loads dd { margin: 12px 0 0; line-height: 1.75; }
.vres-product-group + .vres-product-group { margin-top: 64px; }
.vres-group-head { display: flex; align-items: start; justify-content: space-between; gap: 36px; border-top: 1px solid #cbd3dc; padding-top: 26px; margin-bottom: 30px; }
.vres-group-head h3 { font-size: 24px; margin: 0 0 12px; }
.vres-group-head p { max-width: 75ch; margin: 0; line-height: 1.7; }
.vres-group-head > a { flex-shrink: 0; padding: 12px 0; color: #b51218; font-weight: 600; text-underline-offset: 4px; }
.vres .vres-products-three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.vres-request-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.vres-request p { margin: 24px 0; }
.vres-request-list { margin: 0; }
.vres-request-list > div { padding: 22px 0; border-top: 1px solid #e1e6ec; }
.vres-request-list dt { font-size: 19px; font-weight: 600; color: #1b2027; }
.vres-request-list dd { margin: 8px 0 0; color: #3b4652; line-height: 1.7; }
.vres .viox-solution-cta h2, .vres .viox-solution-cta p { color: #fff; }
.vres .viox-solution-cta [data-vres-quote] { background: linear-gradient(to right,#1b2027 50%,#fff 50%); background-size: 201% 100%; background-position: right center; color: #1b2027; border: 0; min-height: 50px; padding: 16px 26px; border-radius: 6px; transition: background-position .35s ease,color .25s ease; }
.vres .viox-solution-cta [data-vres-quote]:hover, .vres .viox-solution-cta [data-vres-quote]:focus-visible { background-position: left center; color: #fff; }
@media(max-width:1024px) {
  .vres-heading { gap: 32px; }
  .vres-group-head { flex-direction: column; gap: 10px; }
  .vres-request-grid { gap: 40px; }
  .vres .vres-products-three { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:720px) {
  .vres-functions, .vres-circuits, .vres-request { padding: 56px 0; }
  .vres-heading, .vres-extras, .vres-request-grid, .vres-loads { grid-template-columns: 1fr; gap: 24px; }
  .vres-map { padding: 32px 22px 24px; }
  .vres-map__origin { padding-bottom: 44px; }
  .vres-map__origin::after { height: 28px; }
  .vres-map__origin-icon { width: 104px; height: 104px; margin-bottom: 18px; }
  .vres-map__origin strong { font-size: 22px; }
  .vres-map__branches { grid-template-columns: 1fr; border-top: 1px solid #d71920; }
  .vres-map__node { display: grid; grid-template-columns: 72px minmax(0,1fr); column-gap: 20px; padding: 30px 8px; text-align: left; }
  .vres-map__node + .vres-map__node { border-left: 0; border-top: 1px solid #e1e6ec; }
  .vres-map__node::before { display: none; }
  .vres-map__device { grid-row: 1 / span 4; width: 68px; height: 80px; margin: 0; align-self: center; }
  .vres-map__node strong, .vres-map__node > span:not(.vres-map__device), .vres-map__node small, .vres-map__node em { grid-column: 2; }
  .vres-map__node strong { font-size: 23px; }
  .vres-map__node > span:not(.vres-map__device) { margin-top: 5px; font-size: 15px; }
  .vres-map__node small { min-height: 0; margin: 5px 0 0; }
  .vres-map__node em { margin-top: 12px; }
  .vres .viox-solution-hero h1 { font-size: 36px; }
}
@media(max-width:480px) { .vres .vres-products-three { grid-template-columns: 1fr; } }
.viox-solution-page--residential-buildings .viox-mcb-series-card__link:focus-visible {
  outline: 3px solid var(--mcb-red);
  outline-offset: -5px;
}
@media (prefers-reduced-motion: reduce) {
  .viox-solution-page--residential-buildings .viox-mcb-series-card,
  .viox-solution-page--residential-buildings .viox-mcb-series-card::after,
  .viox-solution-page--residential-buildings .viox-mcb-series-card *,
  .vres-map__device,
  .vres-map__node em span {
    transition: none !important;
  }
}
