/* svc720. Leviton smart panel showcase. Page scoped, every class starts with lv-.
   Palette only: navy #081127 #0a1526 #0d1b2e, amber #f5a524 #f7b23a, green #4ade80,
   grey #8a94a6, off-white #f4f6fb #c7d0dd. No red anywhere on this page. */
.lv-sec{padding:64px 0;border-top:1px solid rgba(255,255,255,.06);background:var(--rdn-bg,#081127)}
.lv-sec--alt{background:#0a1526}
.lv-wrap{max-width:1120px;margin:0 auto;padding:0 clamp(1rem,5vw,3rem)}
.lv-eyebrow{margin:0 0 8px;color:var(--c-amber,#f5a524);font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.4}
.lv-h2{margin:0 0 12px;color:#fff;font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.65rem,4.8vw,2.4rem);line-height:1.15;font-weight:600;text-wrap:balance}
.lv-lede{margin:0 0 24px;color:var(--c-2,#c7d0dd);font-size:17px;line-height:1.6;max-width:62ch}
.lv-note{margin:12px 0 0;color:var(--c-3,#8a94a6);font-size:15px;line-height:1.5;max-width:70ch}
.lv-note a,.lv-lede a,.lv-src{color:var(--c-2,#c7d0dd);text-decoration:underline;text-underline-offset:3px}
.lv-note a:hover,.lv-lede a:hover,.lv-src:hover{color:var(--c-amber,#f5a524)}
.lv-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* the job in numbers */
.lv-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
@media (min-width:768px){.lv-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
.lv-stat{margin:0;padding:16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.lv-stat svg{display:block;width:26px;height:26px;margin:0 0 8px;color:var(--c-amber,#f5a524)}
.lv-stat__n{display:block;color:#fff;font-family:var(--font-serif,Georgia,serif);font-size:clamp(2rem,7vw,2.6rem);line-height:1;font-weight:600}
.lv-stat__l{display:block;margin-top:4px;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.35}

/* two column layout */
.lv-split{display:grid;gap:24px;align-items:center}
.lv-split__media{min-width:0}
@media (min-width:900px){
  .lv-split{grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:48px}
  .lv-split--flip{grid-template-columns:minmax(0,460px) minmax(0,1fr)}
  .lv-split--flip .lv-split__media{order:-1}
}

/* before and after slider */
.lv-ba-fig{margin:0}
.lv-ba{--pos:50%;position:relative;width:100%;max-width:460px;aspect-ratio:3/4;margin:0 auto;border-radius:14px;overflow:hidden;background:#0d1b2e;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize}
.lv-ba img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;pointer-events:none;-webkit-user-drag:none}
.lv-ba__before{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.lv-ba__line{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;margin-left:-1.5px;background:var(--c-amber,#f5a524);pointer-events:none}
.lv-ba__handle{position:absolute;top:50%;left:var(--pos);display:grid;place-items:center;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;border:3px solid var(--c-amber,#f5a524);background:#081127;color:var(--c-amber,#f5a524);cursor:ew-resize;box-shadow:0 2px 10px rgba(0,0,0,.45)}
.lv-ba__handle:focus-visible{outline:3px solid #fff;outline-offset:3px}
.lv-ba__handle svg{width:22px;height:22px}
.lv-ba__tag{position:absolute;top:12px;padding:8px 10px;border-radius:999px;background:rgba(8,17,39,.85);color:#fff;font-size:15px;font-weight:700;line-height:1.2;letter-spacing:.03em;pointer-events:none}
.lv-ba__tag--before{left:12px}
.lv-ba__tag--after{right:12px;background:var(--c-amber,#f5a524);color:#081127}
.lv-ba__cap{max-width:460px;margin:8px auto 0;color:var(--c-2,#c7d0dd);font-size:15px;line-height:1.5;text-align:center}

/* the five step story */
.lv-tabs{display:flex;gap:8px;margin:0 0 16px;padding:4px 2px 8px;overflow-x:auto;scrollbar-width:thin}
.lv-tabs[hidden]{display:none}
.lv-tab{flex:0 0 auto;min-height:44px;padding:12px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--c-2,#c7d0dd);font:inherit;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer}
.lv-tab b{margin-right:6px;color:var(--c-amber,#f5a524)}
.lv-tab[aria-selected="true"]{background:var(--c-amber,#f5a524);border-color:var(--c-amber,#f5a524);color:#081127}
.lv-tab[aria-selected="true"] b{color:#081127}
.lv-tab:focus-visible{outline:3px solid #fff;outline-offset:2px}
.lv-steps{display:grid;gap:24px}
.lv-step{display:grid;gap:12px;margin:0}
.lv-step[hidden]{display:none}
.lv-step img{display:block;width:100%;max-width:420px;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:14px;background:#0d1b2e}
.lv-step figcaption{max-width:52ch;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.6}
.lv-step figcaption b{display:block;margin-bottom:4px;color:#fff;font-size:18px;line-height:1.3}
@media (min-width:768px){.lv-step{grid-template-columns:minmax(0,380px) minmax(0,1fr);align-items:center;gap:32px}}

/* what the breakers do */
.lv-feats{display:grid;gap:12px;margin:0;padding:0;list-style:none}
@media (min-width:700px){.lv-feats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.lv-feats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
.lv-feat{display:grid;grid-template-columns:36px minmax(0,1fr);gap:4px 12px;align-content:start;margin:0;padding:16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.lv-feat svg{grid-row:span 3;width:30px;height:30px;color:var(--c-amber,#f5a524)}
.lv-feat h3{margin:0;color:#fff;font-family:var(--font-sans,system-ui,sans-serif);font-size:18px;line-height:1.3;font-weight:700}
.lv-feat p{margin:0;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.5}
.lv-feat .lv-src{justify-self:start;font-size:15px;color:var(--c-3,#8a94a6);min-height:24px}
.lv-limit{display:flex;gap:12px;align-items:flex-start;margin:16px 0 0;padding:16px 16px;border-radius:12px;border:1px solid rgba(245,165,36,.35);background:rgba(245,165,36,.07);color:var(--c-1,#fff);font-size:16px;line-height:1.5}
.lv-limit svg{flex:0 0 auto;width:22px;height:22px;margin-top:4px;color:var(--c-amber,#f5a524)}
.lv-limit a{color:var(--c-2,#c7d0dd);text-decoration:underline;text-underline-offset:3px}

/* panel map */
.lv-map{display:grid;gap:16px;grid-template-areas:"head" "ctl" "panel" "note"}
.lv-map__head{grid-area:head;min-width:0}
.lv-map__head .lv-lede{margin-bottom:0}
.lv-map__ctl{grid-area:ctl;min-width:0}
.lv-map .lv-panel{grid-area:panel}
.lv-map__note{grid-area:note;margin:0}
@media (min-width:900px){.lv-map{grid-template-columns:minmax(0,1fr) 340px;grid-template-rows:auto auto auto 1fr;grid-template-areas:"head panel" "ctl panel" "note panel" ". panel";column-gap:56px;row-gap:16px;align-items:start}}
.lv-panel{max-width:340px;width:100%;margin:0 auto;padding:16px 14px;border-radius:14px;background:#0d1b2e;border:1px solid rgba(255,255,255,.12)}
.lv-panel__cols{display:grid;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr);gap:4px}
.lv-panel__bus{background:linear-gradient(var(--c-3,#8a94a6),var(--c-3,#8a94a6)) center/4px 100% no-repeat}
.lv-col{display:grid;grid-auto-rows:8px;gap:4px}
@media (min-width:900px){.lv-col{grid-auto-rows:12px;gap:4px}}
.lv-bk{display:block;border-radius:3px;transition:opacity .2s var(--rdn-ease,ease)}
.lv-bk--2{grid-row:span 2}
.lv-bk--sp{background:var(--c-2,#c7d0dd)}
.lv-bk--af{background:var(--c-amber,#f5a524)}
.lv-bk--dp{background:var(--c-3,#8a94a6)}
.lv-bk--pv{background:var(--rdn-green,#4ade80)}
.lv-bk--open{border:1px dashed rgba(255,255,255,.2);background:transparent}
.lv-panel[data-show] .lv-bk{opacity:.15}
.lv-panel[data-show="af"] .lv-bk--af,.lv-panel[data-show="sp"] .lv-bk--sp,.lv-panel[data-show="dp"] .lv-bk--dp,.lv-panel[data-show="pv"] .lv-bk--pv{opacity:1}
.lv-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.lv-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--c-1,#fff);font:inherit;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer}
.lv-chip i{display:inline-block;width:14px;height:14px;border-radius:3px}
.lv-chip[aria-pressed="true"]{border-color:var(--c-amber,#f5a524);background:rgba(245,165,36,.14)}
.lv-chip:focus-visible{outline:3px solid #fff;outline-offset:2px}
.lv-readout{min-height:3.2em;margin:0;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.6}

/* standard vs this one */
.lv-table-wrap{max-width:820px}
.lv-table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.4}
.lv-table th,.lv-table td{padding:12px 6px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:middle}
.lv-table thead th{color:var(--c-3,#8a94a6);font-size:15px;font-weight:700;text-align:center}
.lv-table thead th:first-child{text-align:left}
.lv-table tbody th{color:var(--c-1,#fff);font-weight:600;text-align:left}
.lv-table td{width:23%;text-align:center}
.lv-table svg{width:22px;height:22px;vertical-align:middle}
.lv-yes{color:var(--rdn-green,#4ade80)}
.lv-no{color:var(--c-3,#8a94a6)}

/* the money */
.lv-scale{position:relative;height:14px;margin:32px 0 0;border-radius:999px;background:rgba(255,255,255,.08)}
.lv-scale__band{position:absolute;top:0;bottom:0;border-radius:999px;background:var(--c-3,#8a94a6)}
.lv-scale__mark{position:absolute;top:-8px;width:6px;height:30px;margin-left:-3px;border-radius:3px;background:var(--c-amber,#f5a524)}
.lv-scale__axis{position:relative;height:24px;margin-top:8px;color:var(--c-3,#8a94a6);font-size:15px}
.lv-scale__axis span{position:absolute;top:0;white-space:nowrap}
.lv-h3{margin:24px 0 0;color:#fff;font-family:var(--font-sans,system-ui,sans-serif);font-size:19px;font-weight:700;line-height:1.3}
.lv-keys{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.lv-keys li{display:grid;grid-template-columns:14px minmax(0,1fr);gap:12px;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.5}
.lv-keys i{width:14px;height:14px;margin-top:4px;border-radius:3px}
.lv-keys strong{color:var(--c-1,#fff)}
.lv-buys{display:grid;gap:8px;margin:24px 0 0;padding:0;list-style:none}
@media (min-width:768px){.lv-buys{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lv-buys li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:var(--c-1,#fff);font-size:16px;line-height:1.5}
.lv-buys svg{width:22px;height:22px;margin-top:1px;color:var(--c-amber,#f5a524)}

/* who it is for */
.lv-fit{display:grid;gap:12px}
@media (min-width:900px){.lv-fit{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}}
.lv-fit__card{margin:0;padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.lv-fit__card h3{margin:0 0 12px;color:#fff;font-family:var(--font-sans,system-ui,sans-serif);font-size:19px;line-height:1.3;font-weight:700}
.lv-fit__list{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.lv-fit__list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.5}
.lv-fit__list svg{width:20px;height:20px;margin-top:4px}
.lv-fit__list a{color:var(--c-amber,#f5a524);text-decoration:underline;text-underline-offset:3px}
.lv-fit__card--no{border-color:rgba(138,148,166,.35)}
.lv-fit__card img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:10px}
.lv-fit__card figcaption{margin-top:12px;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.5}

/* questions */
.lv-faq{display:grid;gap:8px;max-width:820px}
.lv-faq details{border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.lv-faq summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:16px 16px;color:#fff;font-size:17px;font-weight:600;line-height:1.4;cursor:pointer;list-style:none}
.lv-faq summary::-webkit-details-marker{display:none}
.lv-faq summary::after{content:"+";flex:0 0 auto;color:var(--c-amber,#f5a524);font-size:24px;line-height:1;transition:transform .2s var(--rdn-ease,ease)}
.lv-faq details[open] summary::after{transform:rotate(45deg)}
.lv-faq summary:focus-visible{outline:3px solid var(--c-amber,#f5a524);outline-offset:2px;border-radius:12px}
.lv-faq details p{margin:0;padding:0 16px 16px;color:var(--c-2,#c7d0dd);font-size:16px;line-height:1.6}

/* svc720c: links inside a sentence go back to inline (WCAG 2.5.8 inline exception). The site wide 44px link rule stretched the line. */
.lv-sec :is(p,span)>a:not([class*="btn"]){display:inline;min-height:0}

@media (prefers-reduced-motion:reduce){.lv-bk,.lv-faq summary::after{transition:none}}
