/* Circuit: a consumer unit and its circuit chart. Plaster and drawing grid, carbon ink, live brown, neutral blue,
   earth green-and-yellow, hazard yellow. Hard 2px edges and offset shadows, small radii, nothing blurred. */
@font-face{font-family:'Barlow Condensed';src:url(/designs/circuit/barlow-condensed-700.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url(/designs/circuit/barlow-condensed-600.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url(/designs/circuit/jetbrains-mono-500.woff2) format('woff2');font-weight:500;font-display:swap}
:root{
 --plaster:#f3f1ec;--paper:#fbfaf7;--wash:#ebe7df;--line:#d3cdc1;--edge:#857f73;
 --ink:#141b26;--text:#2a3240;--muted:#535b67;
 --live:#99582a;--live-deep:#7a4a2a;--live-tint:#f5ebe2;--neutral:#1f5fbf;--earth-g:#48bb78;--earth-y:#ffd21f;--hazard:#ffd21f;
 --slate:#222b38;--recess:#161d28;--black:#0b1018;--module:#e8e5de;--toggle:#3a4352;
 --earth-hatch:repeating-linear-gradient(-45deg,var(--earth-g) 0 7px,var(--earth-y) 7px 14px);
 --head:'Barlow Condensed','Arial Narrow','Roboto Condensed',sans-serif;
 --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
 --body:system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{margin:0;color:var(--text);font:17px/1.6 var(--body);-webkit-font-smoothing:antialiased;background-color:var(--plaster);background-image:linear-gradient(rgba(20,27,38,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(20,27,38,.045) 1px,transparent 1px);background-size:24px 24px}
h1,h2,h3{font-family:var(--head);font-weight:700;color:var(--ink);margin:0;text-transform:uppercase;letter-spacing:.005em}
p{margin:0}a{color:inherit}img{max-width:100%;height:auto;display:block}
:focus-visible{outline:3px solid var(--neutral);outline-offset:3px}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:12px;z-index:100;background:var(--hazard);color:var(--ink);padding:12px 16px;font-weight:700;border:2px solid var(--ink)}
.skip:focus{left:16px}

/* Top strips */
.demo{background:var(--slate);color:#e6e9ee;text-align:center;font-size:14px;padding:8px 16px}
.hazard-line{background:var(--hazard);color:var(--ink);text-align:center;font-size:14px;line-height:1.45;padding:9px 16px}
.hazard-line a{font-weight:700;white-space:nowrap;text-underline-offset:3px}
.hazard-limit{font-weight:700}

/* Header */
.site-header{position:sticky;top:0;z-index:10;background:var(--ink);color:#fff}
.header-inner{display:flex;align-items:center;gap:32px;min-height:68px;padding-top:10px;padding-bottom:10px}
.wordmark{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font:700 23px/1 var(--head);text-transform:uppercase;letter-spacing:.03em}
.mark{flex:none}
.site-header nav{display:flex;gap:30px;margin-left:auto}
.site-header nav a{font:600 16px/1 var(--head);text-transform:uppercase;letter-spacing:.09em;color:#c9cfd8;text-decoration:none;padding:14px 0}
.site-header nav a:hover{color:var(--hazard)}
.earth{height:5px;background:var(--earth-hatch)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 26px;background:var(--live);color:#fff;text-decoration:none;border:2px solid var(--ink);border-radius:3px;box-shadow:3px 3px 0 var(--ink);font:700 19px/1 var(--head);text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:background .15s,transform .1s,box-shadow .1s}
.btn:hover{background:var(--live-deep)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn-small{min-height:44px;padding:10px 18px;font-size:16px;border-color:var(--black);box-shadow:2px 2px 0 #000}
.btn-light{background:var(--hazard);color:var(--ink);border-color:var(--black);box-shadow:3px 3px 0 #000}.btn-light:hover{background:#fff}

/* Kickers and section heads */
.kicker{display:block;font:500 13px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--live-deep);margin:0 0 10px}
.kicker-mark{display:inline-block;width:10px;height:10px;background:var(--live);margin-right:10px;vertical-align:0}
.section{padding:96px 0}
.section-head{position:relative;border-bottom:2px solid var(--ink);padding-bottom:16px;margin-bottom:44px}
.section-head::before,.section-head::after{content:'';position:absolute;bottom:-6px;width:10px;height:10px;background:var(--plaster);border:2px solid var(--ink);border-radius:50%}
.section-head::before{left:-5px}.section-head::after{right:-5px}
.section-head h2,.closing h2{font-size:clamp(36px,4.2vw,56px);line-height:.94;text-wrap:balance}
.section-head-plain{margin-bottom:24px}
.section-lede{font-size:18px;color:var(--muted);max-width:36em}

/* Hero */
.hero{padding:56px 0 40px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);grid-template-areas:'kicker board' 'title board' 'lede board' 'facts board' '. board';grid-template-rows:auto auto auto auto 1fr;column-gap:72px;align-items:start}
.hero-kicker{grid-area:kicker;margin-top:8px}
.hero-title{grid-area:title;font-size:clamp(46px,5.7vw,84px);line-height:.9;letter-spacing:-.003em;margin:14px 0 26px;text-wrap:balance}
.hero-title .live{color:var(--live)}
.lede{grid-area:lede;font-size:19px;line-height:1.55;max-width:33em}
.facts{grid-area:facts;list-style:none;padding:0;margin:36px 0 0;display:grid;gap:12px}
.facts li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start;background:var(--paper);border:2px solid var(--ink);border-radius:3px;box-shadow:3px 3px 0 var(--ink);padding:13px 16px 13px 12px}
.fact-no{font:500 13px/1 var(--mono);background:var(--ink);color:var(--plaster);text-align:center;padding:5px 0;border-radius:2px;margin-top:2px}
.facts li:nth-child(2) .fact-no{background:var(--live)}
.facts strong{display:block;font:700 18px/1.15 var(--head);text-transform:uppercase;letter-spacing:.05em;color:var(--ink)}
.facts div span{display:block;font-size:15px;line-height:1.45;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}

/* The consumer unit: enclosure, DIN rail with breakers, circuit chart holding the form */
.board{grid-area:board;background:var(--slate);border:2px solid var(--black);border-radius:6px;box-shadow:5px 5px 0 var(--ink);padding:12px 14px 12px}
.board-top{display:flex;align-items:center;gap:12px;padding:2px 2px 12px;font:500 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#b4bcc8}
.board-title{margin-left:auto}
.screw{flex:none;width:13px;height:13px;border-radius:50%;border:1px solid var(--black);background:linear-gradient(45deg,transparent 42%,#3d4654 42% 58%,transparent 58%),#9aa2ae}
.board-status{display:inline-flex;align-items:center;gap:8px;color:#e6e9ee}
.board-led{width:9px;height:9px;border-radius:50%;background:#5b6573;border:1px solid var(--black);transition:background .2s}
.board:has(.is-on) .board-led{background:var(--hazard)}.board.is-sent .board-led{background:var(--earth-g)}
.rail{--slot:62px;--knob:28px;--travel:28px;display:grid;grid-template-columns:1.55fr repeat(4,minmax(0,1fr));gap:10px;padding:12px 12px 12px;margin-bottom:12px;background:linear-gradient(#2e3846,#2e3846) 0 58px/100% 16px no-repeat,var(--recess);border:2px solid var(--black);border-radius:3px}
.breaker{display:grid;justify-items:center;gap:7px;min-width:0}
.b-way{font:500 11px/1 var(--mono);color:#9aa3af;text-transform:uppercase;letter-spacing:.06em}
.b-body{width:100%;max-width:66px;display:grid;justify-items:center;gap:7px;padding:8px 0 9px;background:var(--module);border:2px solid var(--black);border-radius:3px}
.breaker-main .b-body{max-width:104px}
.b-window{width:18px;height:6px;background:#a3a9b2;border:1px solid var(--black);transition:background .2s}
.b-slot{position:relative;width:28px;height:var(--slot);background:#1b222d;border-radius:2px}
.breaker-main .b-slot{width:46px}
.b-toggle{position:absolute;left:3px;right:3px;bottom:3px;height:var(--knob);display:grid;place-items:center;background:var(--toggle);border-radius:2px;box-shadow:inset 0 -3px 0 rgba(0,0,0,.35);font:500 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;color:#fff;transition:transform .28s cubic-bezier(.3,1.4,.5,1),background .2s}
.b-on{display:none}
.b-label{font:600 15px/1 var(--head);text-transform:uppercase;letter-spacing:.07em;color:#c9cfd8;transition:color .2s;white-space:nowrap}
.breaker.is-on .b-toggle{transform:translateY(calc(-1 * var(--travel)));background:var(--live)}
.breaker.is-on .b-on{display:block}.breaker.is-on .b-off{display:none}
.breaker.is-on .b-window{background:var(--earth-g)}
.breaker.is-on .b-label{color:var(--hazard)}
.chart{background:var(--paper);border:2px solid var(--black);border-radius:2px;padding:26px 26px 22px}
.board-foot{display:flex;align-items:center;gap:8px;padding:12px 2px 0}
.term{width:26px;height:10px;border:1px solid var(--black);border-radius:1px}
.term-l{background:var(--live)}.term-n{background:var(--neutral)}.term-e{background:var(--earth-hatch)}
.board-foot .screw{margin-left:auto}
.form-foot{font-size:14px;line-height:1.5;color:var(--muted);margin-top:14px}
.form-foot a{color:var(--live-deep);text-underline-offset:3px}

/* Enquiry form (shared lf-* classes) */
.lf-form{display:block}
.lf-legend{font:700 27px/1.05 var(--head);text-transform:uppercase;letter-spacing:.01em;color:var(--ink);padding:0;margin-bottom:6px}
.lf-sublegend{font-size:15px;color:var(--ink);margin-bottom:2px}
.lf-tiles{display:grid;grid-template-columns:1fr;gap:8px}
.lf-step>.lf-tiles{grid-template-columns:1fr 1fr;counter-reset:circuit}
.lf-audience .lf-tiles{grid-template-columns:1fr 1fr}
.lf-tile{position:relative;display:flex;align-items:center;min-height:56px;padding:11px 44px 11px 14px;background:#fff;border:2px solid var(--line);border-radius:3px;font:600 16px/1.25 var(--body);color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.lf-tile:hover{border-color:var(--edge)}
.lf-tile input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.lf-tile::after{content:'';position:absolute;right:13px;top:50%;width:16px;height:16px;margin-top:-8px;border:2px solid var(--edge);border-radius:2px;background:#fff}
.lf-step>.lf-tiles .lf-tile{padding-right:52px}
.lf-step>.lf-tiles .lf-tile::after{counter-increment:circuit;content:'C' counter(circuit);content:'C' counter(circuit) / '';width:auto;height:auto;margin-top:0;transform:translateY(-50%);padding:3px 6px;font:500 11px/1 var(--mono);color:var(--muted);border:1px solid var(--line);border-radius:2px}
.lf-tile:has(input:checked){border-color:var(--ink);background:var(--live-tint);box-shadow:2px 2px 0 var(--ink)}
.lf-tile:has(input:checked)::after{background:var(--live);border-color:var(--live)}
.lf-step>.lf-tiles .lf-tile:has(input:checked)::after{color:#fff;background:var(--ink);border-color:var(--ink)}
.lf-tile:has(input:focus-visible){outline:3px solid var(--neutral);outline-offset:2px}
.lf-field{display:flex;flex-wrap:wrap;align-content:start;gap:7px 5px;font-size:15px;font-weight:600;color:var(--ink)}
.lf-field>input,.lf-field>textarea,.lf-field>select{flex-basis:100%}
.lf-field span{font-weight:400;color:var(--muted)}
.lf-form input:not([type=radio]):not([type=checkbox]),.lf-form textarea,.lf-form select{width:100%;min-height:50px;font:17px/1.4 var(--body);padding:12px 14px;background:#fff;color:var(--ink);border:2px solid var(--edge);border-radius:3px}
.lf-form textarea{resize:vertical;min-height:110px}
.lf-form textarea::placeholder{color:#6b7280}
.lf-form input:focus,.lf-form textarea:focus,.lf-form select:focus{border-color:var(--ink);outline:3px solid var(--neutral);outline-offset:1px}
.lf-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lf-consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--text)}
.lf-consent input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--live);flex-shrink:0}
.lf-next,.lf-submit{width:100%;min-height:54px;padding:15px;background:var(--live);color:#fff;border:2px solid var(--ink);border-radius:3px;box-shadow:3px 3px 0 var(--ink);font:700 19px/1 var(--head);text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:background .15s,transform .1s,box-shadow .1s}
.lf-next:hover,.lf-submit:hover{background:var(--live-deep)}
.lf-next:active,.lf-submit:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.lf-actions{display:flex;gap:12px}
.lf-back{min-height:54px;padding:0 20px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-radius:3px;font:700 17px/1 var(--head);text-transform:uppercase;letter-spacing:.07em;cursor:pointer}
.lf-back:hover{background:var(--wash)}
.lf-submit:disabled{opacity:.6;cursor:wait}
.lf-note{font:500 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:center}
.lf-result{margin:16px 0 0;padding:12px 14px;background:var(--wash);border:2px solid var(--ink);border-radius:3px;font-size:16px;font-weight:600;color:var(--ink)}
.lf-result:empty{display:none}
.trap{position:absolute;left:-10000px}

/* Services: the circuit chart */
.circuits{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.circuit{--core:var(--live);position:relative;display:flex;flex-direction:column;gap:12px;background:var(--paper);border:2px solid var(--ink);border-radius:3px;box-shadow:4px 4px 0 var(--ink);padding:28px 22px 6px}
.circuit::before{content:'';position:absolute;left:0;right:0;top:0;height:6px;background:var(--core);border-bottom:2px solid var(--ink)}
.circuit:nth-child(4n+2){--core:var(--neutral)}.circuit:nth-child(4n+3){--core:var(--earth-hatch)}.circuit:nth-child(4n+4){--core:var(--slate)}
.circuit-code{display:flex;align-items:center;gap:10px;margin:0}
.code-chip{font:500 13px/1 var(--mono);letter-spacing:.04em;background:var(--ink);color:var(--plaster);padding:5px 8px;border-radius:2px}
.code-rule{flex:1;height:2px;background:repeating-linear-gradient(90deg,var(--ink) 0 3px,transparent 3px 7px)}
.circuit h3{font-size:25px;line-height:1.02;letter-spacing:.01em;text-wrap:balance}
.circuit-text{font-size:16px;line-height:1.55;color:var(--muted);flex:1}
.circuit-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;border-top:1px solid var(--line);font:600 16px/1.15 var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--live-deep);text-decoration:none}
.circuit-link::after{content:'→';font-family:var(--body);font-size:18px;transition:transform .15s}
.circuit-link:hover{color:var(--ink)}.circuit-link:hover::after{transform:translateX(4px)}

/* How it works: three steps on one cable */
.how{background:var(--paper);border-block:2px solid var(--ink)}
.how .section-head::before,.how .section-head::after{background:var(--paper)}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;position:relative}
.steps::before{content:'';position:absolute;left:-8px;right:-8px;top:30px;height:24px;border-block:2px solid var(--ink);background:linear-gradient(var(--live),var(--live)) 0 3px/100% 4px no-repeat,linear-gradient(var(--neutral),var(--neutral)) 0 9px/100% 4px no-repeat,repeating-linear-gradient(90deg,var(--earth-g) 0 10px,var(--earth-y) 10px 20px) 0 15px/100% 4px no-repeat,#cfc9bd}
.step{position:relative;background:var(--plaster);border:2px solid var(--ink);border-radius:3px;box-shadow:4px 4px 0 var(--ink);padding:22px 24px 26px}
.step-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 20px}
.step-no{font:500 13px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;background:var(--ink);color:var(--plaster);padding:6px 10px;border-radius:2px}
.step:nth-child(2) .step-no{background:var(--live)}
.core{width:20px;height:20px;border-radius:50%;border:2px solid var(--ink)}
.core-1{background:var(--live)}.core-2{background:var(--neutral)}.core-3{background:var(--earth-hatch)}
.step h3{font-size:26px;line-height:1.02;margin-bottom:10px;text-wrap:balance}
.step p{color:var(--muted);font-size:16px}

/* Before the electrician calls */
.prep-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:center}
.photo{margin:0;background:var(--paper);border:2px solid var(--ink);border-radius:3px;box-shadow:5px 5px 0 var(--ink);padding:10px}
.photo img{width:100%;border:1px solid var(--ink)}
.photo figcaption{font:500 12px/1.5 var(--mono);color:var(--muted);padding:10px 2px 0}
.checklist{list-style:none;padding:0;margin:28px 0 0}
.checklist li{position:relative;padding:15px 0 15px 34px;border-top:1px solid var(--line)}
.checklist li:last-child{border-bottom:1px solid var(--line)}
.checklist li::before{content:'';position:absolute;left:0;top:20px;width:16px;height:16px;border:2px solid var(--ink);border-radius:2px;background:var(--paper)}
.checklist li:nth-child(odd)::before{background:linear-gradient(var(--live),var(--live)) center/6px 6px no-repeat,var(--paper)}
.checklist strong{font:700 19px/1.2 var(--head);text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}
.checklist p{margin-top:3px;font-size:16px;color:var(--muted)}

/* Areas: postcode chips */
.areas{background:var(--wash);border-block:2px solid var(--ink)}
.areas .section-head::before,.areas .section-head::after{background:var(--wash)}
.area-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}
.area-card{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;min-height:68px;background:var(--paper);border:2px solid var(--ink);border-radius:3px;padding:12px 16px}
.area-name{font:700 21px/1.1 var(--head);text-transform:uppercase;letter-spacing:.03em;color:var(--ink)}
a.area-name{text-decoration:underline;text-decoration-color:var(--live);text-decoration-thickness:2px;text-underline-offset:4px;padding:8px 0}
a.area-name:hover{color:var(--live-deep)}
.postcodes{display:flex;flex-wrap:wrap;gap:6px}
.pc{font:500 13px/1 var(--mono);letter-spacing:.04em;background:var(--ink);color:var(--plaster);padding:6px 8px;border-radius:2px}
.note{font-size:16px;color:var(--muted);margin-top:22px;max-width:46em}
.note a{color:var(--live-deep);font-weight:600;text-underline-offset:3px}
.note+.btn{margin-top:24px}

/* Questions */
.faq-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.6fr);gap:64px;align-items:start}
.faq-grid .section-head{position:sticky;top:110px}
.faqs{display:grid;gap:12px}
details{background:var(--paper);border:2px solid var(--ink);border-radius:3px;box-shadow:3px 3px 0 var(--ink)}
summary{list-style:none;cursor:pointer;position:relative;min-height:60px;display:flex;align-items:center;padding:16px 64px 16px 20px;font:600 22px/1.2 var(--head);letter-spacing:.01em;color:var(--ink)}
summary::-webkit-details-marker{display:none}
summary::before{content:'';position:absolute;right:16px;top:50%;width:28px;height:28px;margin-top:-14px;border:2px solid var(--ink);border-radius:2px;background:var(--plaster)}
summary::after{content:'+';position:absolute;right:16px;top:50%;width:32px;margin-top:-13px;text-align:center;font:500 20px/26px var(--mono);color:var(--live-deep)}
details[open] summary::after{content:'−'}
details[open] summary{border-bottom:1px solid var(--line)}
summary:hover{color:var(--live-deep)}
details p{padding:16px 20px 20px;color:var(--text);max-width:44em}

/* About this service */
.about-service{padding-top:0}
.disclosure-box{display:grid;grid-template-columns:32px minmax(0,1fr);gap:16px;align-items:start;background:var(--wash);border:2px dashed var(--ink);border-radius:3px;padding:24px 26px}
.info{width:30px;height:30px;border:2px solid var(--live-deep);border-radius:50%;display:grid;place-items:center;font:700 18px/1 var(--head);color:var(--live-deep)}
.disclosure-box h2{font-size:19px;letter-spacing:.07em;margin:4px 0 6px}
.disclosure-box p{font-size:16px;max-width:60em}

/* Closing call to action */
.closing{background:var(--slate);color:#fff;border-top:2px solid var(--ink);position:relative}
.closing::before{content:'';position:absolute;left:0;right:0;top:0;height:6px;background:var(--earth-hatch)}
.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:72px 0 68px}
.closing h2{color:#fff;max-width:19ch}

/* Footer */
.site-footer{background:var(--ink);color:#c3cad4;padding:56px 0 32px;font-size:15px}
.wordmark-footer{font-size:26px;margin:0}
.footer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.disclosure{max-width:36em;margin-top:14px}
.site-footer nav{display:flex;flex-wrap:wrap;gap:0 28px;align-content:start;justify-content:flex-end}
.site-footer nav a{color:#fff;text-underline-offset:4px;padding:10px 0}
.site-footer nav a:hover{color:var(--hazard)}
.legal{font-size:13px;line-height:1.6;color:#9aa3af;margin:28px 0 0;max-width:820px}
.footer-base{margin-top:36px;font:500 12px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:#9aa3af}
.footer-base span{display:block;padding-top:20px;border-top:1px solid #2c3646}
.mobile-cta{display:none}

/* Service and area pages */
.page{padding:48px 0 96px}
.page-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);grid-template-areas:'head head' 'prose cta';column-gap:72px;row-gap:44px;align-items:start}
.page-head{grid-area:head;position:relative;border-bottom:2px solid var(--ink);padding-bottom:30px}
.page-head-wide{margin-bottom:36px}
.crumb ol{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;font:500 12px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.crumb li+li::before{content:'/';margin-right:10px;color:var(--edge)}
.crumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--live-deep);text-underline-offset:3px}
.page-code{margin:0 0 16px;max-width:320px}
.page-head h1{font-size:clamp(42px,5.4vw,76px);line-height:.92;margin:0 0 22px;text-wrap:balance}
.page-head .lede{max-width:38em}
.prose{grid-area:prose;font-size:18px;max-width:40em}
.prose p{margin:0 0 20px}
.prose h2{font-size:30px;line-height:1;margin:48px 0 14px}.prose h2:first-child{margin-top:0}
.prose ul{list-style:none;margin:0 0 22px;padding:0}
.prose li{position:relative;padding-left:24px;margin:8px 0}
.prose li::before{content:'';position:absolute;left:2px;top:.62em;width:8px;height:8px;background:var(--live)}
.prose a{color:var(--live-deep)}
.trust-facts{margin-top:44px;padding:24px 26px;background:var(--paper);border:2px solid var(--ink);border-radius:3px;box-shadow:4px 4px 0 var(--ink);font-size:17px}
.trust-facts h2{font-size:24px;margin:0 0 6px}
.trust-facts p{margin:10px 0}
.trust-facts a{color:var(--live-deep)}
.trust-disclosure{color:var(--muted);font-size:15px}
.side-cta{grid-area:cta;position:sticky;top:104px;background:var(--slate);border:2px solid var(--black);border-radius:5px;box-shadow:4px 4px 0 var(--ink);padding:12px}
.side-rail{display:flex;justify-content:center;gap:10px;background:var(--recess);border:2px solid var(--black);border-radius:3px;padding:12px;margin-bottom:12px}
.mini-breaker{position:relative;width:32px;height:52px;background:var(--module);border:2px solid var(--black);border-radius:2px}
.mini-breaker::after{content:'';position:absolute;left:8px;right:8px;bottom:6px;height:16px;background:var(--toggle);border-radius:1px}
.mini-breaker.is-on::after{bottom:auto;top:6px;background:var(--live)}
.side-body{background:var(--paper);border:2px solid var(--black);border-radius:2px;padding:22px}
.side-body h2{font-size:28px;line-height:1}
.side-body p{color:var(--muted);font-size:16px;margin:10px 0 20px}
.side-body .btn{width:100%}
.related{margin-top:64px}
.related h2{font-size:26px}
.chips{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.chips a{display:inline-flex;align-items:center;min-height:46px;padding:0 16px;background:var(--paper);border:2px solid var(--ink);border-radius:3px;box-shadow:2px 2px 0 var(--ink);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
.chips a:hover{background:var(--ink);color:var(--plaster)}

@media(max-width:1100px){
 .circuits{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hero-grid{column-gap:48px}
}
@media(max-width:960px){
 .site-header nav{display:none}.header-inner .btn-small{margin-left:auto}
 .hero{padding:36px 0 64px}
 .hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:'kicker' 'title' 'lede' 'board' 'facts';grid-template-rows:none}
 .board{margin:32px 0 36px}
 .facts{margin-top:0}
 .steps{grid-template-columns:minmax(0,1fr);gap:28px}
 .steps::before{left:30px;right:auto;top:-8px;bottom:-8px;width:24px;height:auto;border-block:0;border-inline:2px solid var(--ink);background:linear-gradient(var(--live),var(--live)) 3px 0/4px 100% no-repeat,linear-gradient(var(--neutral),var(--neutral)) 9px 0/4px 100% no-repeat,repeating-linear-gradient(180deg,var(--earth-g) 0 10px,var(--earth-y) 10px 20px) 15px 0/4px 100% no-repeat,#cfc9bd}
 .prep-grid,.faq-grid,.footer-grid,.page-grid{grid-template-columns:minmax(0,1fr);gap:40px}
 .page-grid{grid-template-areas:'head' 'cta' 'prose'}
 .faq-grid{gap:0}.faq-grid .section-head{position:relative}.side-cta{position:static}
 .site-footer nav{justify-content:flex-start}
}
@media(max-width:600px){
 .wrap{padding:0 16px}
 .section{padding:64px 0}
 .header-inner{min-height:58px}.header-inner .btn-small{display:none}
 .wordmark{font-size:20px;gap:10px}.mark{width:26px;height:26px}
 .demo,.hazard-line{font-size:13px}
 .hero-title{font-size:clamp(38px,11.2vw,52px);margin:10px 0 20px}
 .lede{font-size:17px}
 .board{padding:8px 8px 10px;border-radius:5px;box-shadow:3px 3px 0 var(--ink)}
 .board-top{padding:2px 2px 8px;font-size:11px}
 .rail{--slot:44px;--knob:20px;--travel:18px;grid-template-columns:1.35fr repeat(4,minmax(0,1fr));gap:5px;padding:9px 6px;margin-bottom:8px;background:linear-gradient(#2e3846,#2e3846) 0 42px/100% 12px no-repeat,var(--recess)}
 .b-body{padding:6px 0 7px;gap:5px}
 .b-slot{width:22px}.breaker-main .b-slot{width:34px}
 .b-toggle{font-size:8px;letter-spacing:0}
 .b-label{font-size:12px;letter-spacing:.04em}
 .b-way{font-size:10px}
 .chart{padding:20px 14px 18px}
 .lf-legend{font-size:24px}
 .lf-step>.lf-tiles,.lf-pair{grid-template-columns:minmax(0,1fr)}
 .board-foot{padding-top:10px}
 .circuits{grid-template-columns:minmax(0,1fr)}
 .section-head{margin-bottom:32px}
 .area-grid{grid-template-columns:minmax(0,1fr)}
 summary{font-size:20px}
 .disclosure-box{grid-template-columns:30px minmax(0,1fr);gap:12px;padding:20px 16px}
 .closing-inner{flex-direction:column;align-items:flex-start;padding:56px 0}
 .closing .btn{width:100%}
 .page{padding-top:28px}
 .mobile-cta:not([hidden]){display:flex;position:fixed;left:16px;right:16px;bottom:16px;z-index:20}
 .site-footer{padding-bottom:104px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
