/* Locksmiths Canada — design system, extracted from lc-prototype.html. Do not hand-edit; regenerate from the prototype. */
:root{--paper:#F2F2F0;--paper2:#E7E7E4;--card:#FFF;--ink:#16181B;--ink60:#535A61;--ink30:#909699;--steel:#22323F;--steel2:#2E4454;--steel-lt:#DEE6EB;--rule:#D5D7D4;--cu:#B5763A;--cu2:#945C27;--cu-lt:#F5E9DC;--ok:#147A52;--red:#C8102E;--r-s:5px;--r-m:10px;--r-l:15px;--r-xl:20px;--gut:clamp(16px,4vw,44px);--max:1390px}
body{background:var(--paper);color:var(--ink);font-family:'Inter Tight',system-ui,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid var(--cu);outline-offset:2px}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gut)}
.mono{font-family:'IBM Plex Mono',monospace;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.dsp{font-family:'Instrument Sans',sans-serif;letter-spacing:-.035em;line-height:1.05}
.top{background:var(--steel);color:#A8BDC9;font-size:12.5px}
.top__in{display:flex;justify-content:space-between;align-items:center;height:36px;gap:12px}
.top__l{display:flex;gap:8px;align-items:center;min-width:0}
.mp{width:11px;height:11px;background:var(--red);flex:none;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.top a{color:#A8BDC9}
.top a:hover{color:#fff}
.hd{position:sticky;top:0;z-index:70;background:var(--paper);border-bottom:1px solid var(--rule)}
.hd__in{display:flex;align-items:center;gap:clamp(10px,2vw,22px);height:70px}
.mk{display:flex;align-items:center;gap:9px;flex:none}
.mk__g{width:33px;height:33px;border-radius:9px;background:var(--steel);flex:none;display:grid;place-items:center;position:relative}
.mk__g::before{content:"";width:12px;height:12px;border:2.5px solid var(--cu);border-radius:50%;position:absolute;top:6px}
.mk__g::after{content:"";width:2.5px;height:11px;background:var(--cu);position:absolute;bottom:5px;box-shadow:3px -3px 0 -.5px var(--cu),3px 0 0 -.5px var(--cu)}
.mk__t{font-family:'Instrument Sans',sans-serif;font-weight:700;font-size:15px;letter-spacing:-.03em;line-height:1.1}
.mk__t s{display:block;text-decoration:none;font-size:9.5px;font-weight:500;letter-spacing:.16em;color:var(--cu);font-family:'IBM Plex Mono',monospace}
.geo{display:flex;align-items:center;gap:7px;height:40px;padding:0 13px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;flex:none;white-space:nowrap}
.geo:hover{border-color:var(--ink30)}
.geo s{text-decoration:none;color:var(--ink60);font-weight:500}
.cr{width:0;height:0;border:4px solid transparent;border-top-color:var(--ink30);margin-top:4px}
.sb{flex:1;min-width:0;position:relative}
.sb input{width:100%;height:40px;padding:0 14px 0 38px;border:1px solid var(--rule);border-radius:var(--r-m);background:var(--card);font:inherit;font-size:14px}
.sb input:focus{border-color:var(--steel);outline:none}
.sb svg{position:absolute;left:13px;top:11px}
.nv{display:flex;gap:18px;flex:none}
.nv a{font-size:14px;font-weight:500;color:var(--ink60)}
.nv a:hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;padding:0 17px;border-radius:var(--r-m);font-weight:600;font-size:14px;border:1px solid transparent;cursor:pointer;font-family:inherit;transition:.15s;white-space:nowrap}
.btn--p{background:var(--steel);color:#fff}
.btn--p:hover{background:var(--steel2)}
.btn--c{background:var(--cu);color:#fff}
.btn--c:hover{background:var(--cu2)}
.btn--g{background:transparent;border-color:var(--rule)}
.btn--g:hover{border-color:var(--ink)}
.btn--sm{height:34px;padding:0 13px;font-size:13px}
.bg{display:none;width:40px;height:40px;border:1px solid var(--rule);border-radius:var(--r-m);background:var(--card);position:relative;cursor:pointer}
.bg i{position:absolute;left:10px;width:18px;height:2px;background:var(--ink);border-radius:2px}
.bg i:nth-child(1){top:13px}
.bg i:nth-child(2){top:19px}
.bg i:nth-child(3){top:25px}
.cn{font-size:13px;padding:16px 0 0}
.cn ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.cn li{display:flex;align-items:center;gap:6px;color:var(--ink60)}
.cn li+li::before{content:"\203A";color:var(--ink30)}
.cn a:hover{color:var(--ink);text-decoration:underline}
.cn [aria-current]{color:var(--ink);font-weight:600}
h1,h2,h3{font-family:'Instrument Sans',sans-serif;letter-spacing:-.035em}
h1{font-weight:700;line-height:1.04}
h2{font-weight:600;font-size:clamp(21px,2.7vw,30px)}
h3{font-weight:600;font-size:16.5px;letter-spacing:-.02em}
.sec{padding:clamp(30px,5vw,58px) 0}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px}
.sh p{font-size:14px;color:var(--ink60);margin-top:5px}
.sh a{font-size:13.5px;font-weight:600;color:var(--cu);white-space:nowrap}
.eyb{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink60);margin-bottom:14px}
.eyb::before{content:"";width:22px;height:1.5px;background:var(--cu)}
.lede{font-size:clamp(15.5px,1.7vw,18px);color:var(--ink60);max-width:50ch;margin-bottom:22px}
.tg-s{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:600;padding:3px 7px;border-radius:4px;white-space:nowrap}
.tg-ok{background:rgba(20,122,82,.11);color:var(--ok)}
.tg-24{background:var(--cu-lt);color:var(--cu2)}
.tg-nn{background:var(--paper2);color:var(--ink60)}
.hero{padding:clamp(38px,6vw,72px) 0 clamp(26px,4vw,40px)}
.hero__g{display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(24px,4.5vw,58px);align-items:start}
.hero h1{font-size:clamp(32px,5.2vw,57px);margin-bottom:16px}
.hero h1 em{font-style:normal;color:var(--cu)}
.find{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-xl);padding:18px}
.find__r{display:grid;grid-template-columns:1fr 1fr auto;gap:9px}
.fld{display:flex;flex-direction:column;gap:5px}
.fld label{font-size:10.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--ink60)}
.fld select{height:44px;padding:0 12px;border:1px solid var(--rule);border-radius:var(--r-m);font:inherit;font-size:14.5px;background:var(--paper);color:var(--ink)}
.fld select:focus{border-color:var(--steel);outline:none}
.find .btn{align-self:flex-end;height:44px}
.find__q{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px;padding-top:13px;border-top:1px solid var(--paper2)}
.find__q span{font-size:12px;color:var(--ink60);margin-right:3px}
.qp{font-size:12.5px;padding:4px 10px;background:var(--paper);border:1px solid var(--rule);border-radius:20px;color:var(--ink60)}
.qp:hover{border-color:var(--steel);color:var(--steel)}
.stats{display:flex;flex-wrap:wrap;gap:22px;margin-top:22px;padding-top:18px;border-top:1px solid var(--rule)}
.stat__n{font-family:'Instrument Sans',sans-serif;font-weight:700;font-size:22px;letter-spacing:-.045em;display:block}
.stat__l{font-size:12px;color:var(--ink60)}
.fee{background:var(--steel);color:#D5E2E9;border-radius:var(--r-xl);padding:22px;overflow:hidden;position:relative}
.fee__h{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#7E99A9;margin-bottom:15px}
.fee__t{font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:19px;color:#fff;letter-spacing:-.025em;margin-bottom:16px}
.fr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.11)}
.fr:last-of-type{border:none}
.fr__l{font-size:13.5px;color:#9FB6C2}
.fr__v{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:17px;color:#fff}
.fr__v.bad{color:#E8A08D;text-decoration:line-through;opacity:.75}
.fee__n{margin-top:14px;padding-top:13px;border-top:1px solid rgba(255,255,255,.12);font-size:12.5px;color:#7E99A9}
.prov{display:grid;grid-template-columns:repeat(auto-fill,minmax(198px,1fr));gap:9px}
.pv{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);padding:15px 17px;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:.14s}
.pv:hover{border-color:var(--steel);transform:translateY(-2px)}
.pv__l{display:flex;flex-direction:column}
.pv__ab{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--cu);font-weight:600}
.pv__n{font-weight:600;font-size:15px}
.pv__c{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink60)}
.svc{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:9px}
.sv{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);padding:16px;display:flex;flex-direction:column;gap:4px;transition:.14s}
.sv:hover{border-color:var(--steel);transform:translateY(-2px)}
.sv__i{font-size:19px;margin-bottom:5px}
.sv__n{font-weight:600;font-size:15px}
.sv__d{font-size:12.5px;color:var(--ink60);flex:1}
.sv__c{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--cu);margin-top:8px;padding-top:8px;border-top:1px solid var(--paper2)}
.how{background:var(--card);border-block:1px solid var(--rule)}
.how__g{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,40px)}
.hw__n{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;color:var(--cu)}
.hw h3{margin:7px 0}
.hw p{font-size:14px;color:var(--ink60)}
.lay{display:grid;grid-template-columns:1fr 336px;gap:clamp(18px,3vw,32px);align-items:start}
.filt{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:15px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.filt__l{font-size:10.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--ink60);width:100%}
.fp{font-size:13px;padding:6px 12px;border:1px solid var(--rule);border-radius:20px;background:var(--paper);cursor:pointer;font-family:inherit;color:var(--ink60)}
.fp:hover{border-color:var(--steel);color:var(--steel)}
.fp.on{background:var(--steel);border-color:var(--steel);color:#fff;font-weight:600}
.lc{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);margin-bottom:10px;display:grid;grid-template-columns:118px 1fr;overflow:hidden;transition:.14s}
.lc:hover{border-color:var(--steel)}
.lc--top{border-left:3px solid var(--cu)}
.lc__fee{background:var(--paper);border-right:1px solid var(--rule);padding:18px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}
.lc__fee em{font-style:normal;font-size:9.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--ink60)}
.lc__fee b{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:27px;letter-spacing:-.05em}
.lc__fee s{text-decoration:none;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ink60)}
.lc__fee.none b{font-size:15px;color:var(--ink30);font-family:'Inter Tight',sans-serif;font-weight:500;letter-spacing:0}
.lc__b{padding:17px 18px;min-width:0}
.lc__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.lc__n{font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:17.5px;letter-spacing:-.02em}
.lc__tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.lc__rt{font-family:'IBM Plex Mono',monospace;font-size:13px;white-space:nowrap}
.lc__rt s{text-decoration:none;color:var(--ink60)}
.lc__m{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--ink60);margin:9px 0}
.lc__m b{color:var(--ink);font-weight:600}
.areas{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}
.ac{font-size:11.5px;padding:3px 9px;border-radius:14px;background:var(--steel-lt);color:var(--steel)}
.ac--x{background:transparent;border:1px dashed var(--rule);color:var(--ink60)}
.lc__act{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.side{position:sticky;top:86px;display:grid;gap:11px}
.map{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);overflow:hidden}
.map__c{height:224px;position:relative;background:linear-gradient(90deg,rgba(34,50,63,.06) 1px,transparent 1px) 0 0/26px 26px,linear-gradient(rgba(34,50,63,.06) 1px,transparent 1px) 0 0/26px 26px,var(--steel-lt)}
.pin{position:absolute;width:24px;height:24px;border-radius:50% 50% 50% 3px;background:var(--cu);transform:rotate(45deg);border:2.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.pin--q{background:var(--steel)}
.map__f{padding:11px 15px;font-size:12.5px;color:var(--ink60);border-top:1px solid var(--rule)}
.box{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:17px}
.box h3{margin-bottom:11px}
.pr{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--paper2);font-size:13.5px}
.pr:last-child{border:none}
.pr b{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:13px;white-space:nowrap}
.box__n{font-size:12px;color:var(--ink30);margin-top:10px}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{padding:15px 0;font-weight:600;cursor:pointer;font-size:15.5px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";color:var(--cu);font-size:19px;line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq details div{padding:0 0 15px;color:var(--ink60);font-size:14.5px;max-width:70ch}
.intro{max-width:72ch;color:var(--ink60);font-size:15px}
.intro p{margin-bottom:12px}
.links{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}
.links ul{list-style:none;display:grid;gap:6px;font-size:13.5px}
.links h4{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink60);margin-bottom:9px}
.links a{color:var(--ink60)}
.links a:hover{color:var(--cu)}
.ph{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-xl);padding:23px;display:flex;gap:21px;margin-bottom:14px}
.ph__ph{width:108px;height:108px;border-radius:var(--r-l);background:var(--paper2);flex:none;display:grid;place-items:center;font-size:32px;color:var(--ink30)}
.ph h1{font-size:clamp(24px,3.3vw,35px);margin-bottom:8px}
.ph__m{display:flex;flex-wrap:wrap;gap:15px;font-size:14px;color:var(--ink60);margin:10px 0}
.vb{background:rgba(20,122,82,.06);border:1px solid rgba(20,122,82,.22);border-radius:var(--r-m);padding:13px 16px;margin:13px 0;font-size:13.5px}
.vb strong{color:var(--ok);display:block;margin-bottom:3px}
.frm{display:grid;gap:11px}
.frm label{display:grid;gap:5px;font-size:12.5px;font-weight:600;color:var(--ink60)}
.frm input,.frm textarea{padding:11px 13px;border:1px solid var(--rule);border-radius:var(--r-m);font:inherit;font-size:14.5px;background:var(--paper);color:var(--ink);font-weight:400}
.frm input:focus,.frm textarea:focus{border-color:var(--steel);outline:none}
.frm__2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:20px}
.st{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);padding:13px 15px}
.st.on{border-color:var(--steel);background:var(--steel);color:#fff}
.st__n{font-family:'IBM Plex Mono',monospace;font-size:11px;opacity:.6}
.st__t{font-weight:600;font-size:13.5px;margin-top:2px}
.ft{background:var(--steel);color:#9FB6C2;padding:42px 0 24px;font-size:13.5px;margin-top:18px}
.ft__g{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:26px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.12)}
.ft h4{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:#fff;margin-bottom:11px}
.ft ul{list-style:none;display:grid;gap:7px}
.ft a:hover{color:#fff}
.ft__b{display:flex;justify-content:space-between;gap:16px;padding-top:18px;font-size:12.5px;flex-wrap:wrap}
.ft__d{background:rgba(0,0,0,.2);border-radius:var(--r-m);padding:12px 15px;margin-top:16px;font-size:12px;color:#7E99A9;max-width:70ch}
.art{max-width:none}
.art__g{display:grid;grid-template-columns:1fr 280px;gap:clamp(22px,4vw,52px);align-items:start}
.art__b{max-width:70ch}
.art__b h2{margin:30px 0 12px;font-size:clamp(20px,2.4vw,26px)}
.art__b h3{margin:22px 0 9px}
.art__b p{margin-bottom:14px;color:var(--ink60);font-size:15.5px}
.art__b ul,.art__b ol{margin:0 0 15px 20px;color:var(--ink60);font-size:15.5px}
.art__b li{margin-bottom:6px}
.art__b strong{color:var(--ink)}
.art__lead{font-size:18px!important;color:var(--ink)!important;line-height:1.5}
.art__meta{display:flex;flex-wrap:wrap;gap:15px;font-size:13px;color:var(--ink60);padding:13px 0;border-block:1px solid var(--rule);margin-bottom:24px}
.tbl{width:100%;border-collapse:collapse;margin:16px 0;font-size:14.5px}
.tbl th{text-align:left;font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink60);padding:9px 12px;background:var(--paper2);font-weight:600}
.tbl td{padding:10px 12px;border-bottom:1px solid var(--rule)}
.tbl td:last-child{font-family:'IBM Plex Mono',monospace;font-weight:600;white-space:nowrap}
.pull{background:var(--card);border-left:3px solid var(--cu);border-radius:0 var(--r-m) var(--r-m) 0;padding:16px 19px;margin:20px 0;font-size:15px}
.toc{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:16px;position:sticky;top:86px}
.toc h4{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink60);margin-bottom:10px}
.toc ol{list-style:none;display:grid;gap:8px;font-size:13.5px;counter-reset:t}
.toc li{counter-increment:t;display:flex;gap:9px;color:var(--ink60)}
.toc li::before{content:counter(t,decimal-leading-zero);font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--cu);flex:none;padding-top:2px}
.toc a:hover{color:var(--ink)}
.empty{background:var(--card);border:1px dashed var(--rule);border-radius:var(--r-l);padding:28px 24px;text-align:center;margin:14px 0}
.empty h3{margin-bottom:8px}
.empty p{font-size:14px;color:var(--ink60);max-width:46ch;margin:0 auto 16px}
.near{display:grid;gap:8px;margin-top:18px;text-align:left}
.nr{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-m);font-size:14px}
.nr b{font-weight:600}
.nr s{text-decoration:none;font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink60)}
.pls{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:start}
.pl{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-xl);padding:22px;display:flex;flex-direction:column;gap:4px}
.pl--hi{border-color:var(--cu);border-width:2px;position:relative}
.pl--hi::before{content:"Most locksmiths pick this";position:absolute;top:-11px;left:22px;background:var(--cu);color:#fff;font-size:10.5px;font-weight:600;letter-spacing:.06em;padding:3px 10px;border-radius:20px}
.pl__n{font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:18px;letter-spacing:-.02em}
.pl__p{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:32px;letter-spacing:-.05em;margin:8px 0 2px}
.pl__p s{text-decoration:none;font-size:13px;font-weight:400;color:var(--ink60);letter-spacing:0}
.pl__d{font-size:13.5px;color:var(--ink60);margin-bottom:14px;min-height:38px}
.pl ul{list-style:none;display:grid;gap:8px;font-size:13.5px;margin-bottom:18px;flex:1}
.pl li{display:flex;gap:9px;align-items:flex-start}
.pl li::before{content:"\2713";color:var(--ok);font-weight:700;flex:none}
.pl li.no{color:var(--ink30)}
.pl li.no::before{content:"\2014";color:var(--ink30)}
.sres{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.sres__q{font-family:'IBM Plex Mono',monospace;font-size:14px;background:var(--card);border:1px solid var(--rule);border-radius:20px;padding:6px 14px}
.grp{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink60);margin:22px 0 10px}
.sr{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);padding:14px 17px;display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:7px}
.sr:hover{border-color:var(--steel)}
.sr__n{font-weight:600;font-size:15px}
.sr__d{font-size:12.5px;color:var(--ink60)}
.sr__r{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink60);white-space:nowrap}
.rv__sum{display:flex;gap:26px;align-items:center;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--rule);margin-bottom:4px}
.rv__big{font-family:'Instrument Sans',sans-serif;font-weight:700;font-size:46px;letter-spacing:-.05em;line-height:1}
.rv__st{font-size:14px;color:var(--cu);letter-spacing:.1em}
.rv__c{font-size:12.5px;color:var(--ink60);margin-top:3px}
.rv__bars{flex:1;min-width:180px;display:grid;gap:5px}
.rvb{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--ink60)}
.rvb__t{flex:1;height:6px;background:var(--paper2);border-radius:3px;overflow:hidden}
.rvb__t i{display:block;height:100%;background:var(--cu);border-radius:3px}
.rvb__n{font-family:'IBM Plex Mono',monospace;font-size:11px;width:22px;text-align:right}
.rv{padding:16px 0;border-bottom:1px solid var(--paper2)}
.rv:last-child{border:none}
.rv__h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:5px}
.rv__n{font-weight:600;font-size:14.5px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.rv__d{font-size:12px;color:var(--ink30);white-space:nowrap}
.rv__job{font-size:12px;color:var(--ink60);margin-bottom:6px}
.rv p{font-size:14px;color:var(--ink60)}
.rv__reply{margin-top:10px;padding:11px 14px;background:var(--paper);border-left:2px solid var(--steel);border-radius:0 var(--r-s) var(--r-s) 0;font-size:13.5px;color:var(--ink60)}
.rv__reply b{color:var(--ink);display:block;margin-bottom:3px;font-size:12.5px}
.dash{display:grid;grid-template-columns:190px 1fr;gap:20px;align-items:start}
.dnav{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:9px;display:grid;gap:2px;position:sticky;top:86px}
.dnav a{padding:9px 12px;border-radius:var(--r-s);font-size:13.5px;color:var(--ink60);font-weight:500}
.dnav a.on{background:var(--steel);color:#fff;font-weight:600}
.dnav a:hover:not(.on){background:var(--paper)}
.dnav hr{border:none;border-top:1px solid var(--rule);margin:7px 4px}
.kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.kp{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:16px}
.kp__l{font-size:10.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--ink60)}
.kp__v{font-family:'Instrument Sans',sans-serif;font-weight:700;font-size:29px;letter-spacing:-.05em;margin:5px 0 2px}
.kp__t{font-size:12px;color:var(--ok);font-weight:600}
.kp__t.dn{color:var(--cu2)}
.inb{display:grid;gap:7px}
.im{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);padding:14px 16px;display:flex;gap:13px;align-items:flex-start}
.im--new{border-left:3px solid var(--cu);background:var(--cu-lt)}
.im__b{flex:1;min-width:0}
.im__t{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.im__n{font-weight:600;font-size:14.5px}
.im__d{font-size:11.5px;color:var(--ink30);white-space:nowrap;font-family:'IBM Plex Mono',monospace}
.im__m{font-size:12.5px;color:var(--ink60);margin:3px 0 6px}
.im__x{font-size:13.5px;color:var(--ink60)}
.im__src{font-size:11.5px;color:var(--ink30);margin-top:7px;font-family:'IBM Plex Mono',monospace}
.bar2{display:grid;gap:7px}
.b2{display:flex;align-items:center;gap:10px;font-size:13px}
.b2__l{width:150px;color:var(--ink60);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.b2__t{flex:1;height:8px;background:var(--paper2);border-radius:4px;overflow:hidden}
.b2__t i{display:block;height:100%;background:var(--steel);border-radius:4px}
.b2__n{font-family:'IBM Plex Mono',monospace;font-size:12px;width:26px;text-align:right}
.nudge{background:var(--cu-lt);border:1px solid rgba(181,118,58,.3);border-radius:var(--r-m);padding:14px 17px;margin-bottom:14px;display:flex;gap:13px;align-items:center;flex-wrap:wrap}
.nudge__b{flex:1;min-width:200px;font-size:13.5px;color:var(--cu2)}
.nudge__b b{display:block;color:var(--ink);margin-bottom:2px;font-size:14px}
.cmp{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);overflow:hidden}
.cmp th,.cmp td{padding:13px 15px;border-bottom:1px solid var(--paper2);text-align:left;vertical-align:top}
.cmp thead th{background:var(--paper);border-bottom:1px solid var(--rule)}
.cmp th:first-child,.cmp td:first-child{width:180px;color:var(--ink60);font-size:12.5px;font-weight:500}
.cmp__n{font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:16px;letter-spacing:-.02em}
.cmp__f{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:19px;letter-spacing:-.04em}
.cmp .win{color:var(--ok);font-weight:600}
.cmp tr:last-child td{border-bottom:none}
.mbar{display:none}
@media(max-width:700px){.mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;gap:8px;padding:10px 14px;background:var(--card);border-top:1px solid var(--rule);box-shadow:0 -4px 16px rgba(0,0,0,.07)}
.mbar .btn{flex:1}
body{padding-bottom:66px}
.kpi{grid-template-columns:1fr 1fr}
.dash{grid-template-columns:1fr}
.dnav{position:static;display:flex;overflow-x:auto;gap:4px}
.dnav hr{display:none}
.dnav a{white-space:nowrap}
.cmp th:first-child,.cmp td:first-child{width:110px}
.cmp th,.cmp td{padding:10px 11px;font-size:13px}
}
.gi{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:11px}
.gc{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:19px;display:flex;flex-direction:column;gap:7px;transition:.14s}
.gc:hover{border-color:var(--steel);transform:translateY(-2px)}
.gc__k{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--cu);letter-spacing:.08em;text-transform:uppercase}
.gc__t{font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:17px;letter-spacing:-.025em}
.gc__d{font-size:13.5px;color:var(--ink60);flex:1}
.gc__m{font-size:11.5px;color:var(--ink30);padding-top:9px;border-top:1px solid var(--paper2)}
.fresh{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r-m);padding:11px 15px;margin-bottom:12px;font-size:12.5px;color:var(--ink60)}
.fresh__d{width:7px;height:7px;border-radius:50%;background:var(--ok);flex:none}
.fresh b{font-family:'IBM Plex Mono',monospace;font-weight:600;color:var(--ink);font-size:12px}
.fresh a{margin-left:auto;font-weight:600;color:var(--cu)}
.stamp{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink30);margin-top:7px}
.stamp::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ink30)}
.stale{color:var(--cu2)}
.stale::before{background:var(--cu)}
.disc{background:var(--paper2);border-radius:var(--r-m);padding:12px 15px;font-size:12.5px;color:var(--ink60);margin:14px 0}
.tr__g{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.tc{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-l);padding:19px}
.tc__i{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:13px;margin-bottom:11px}
.tc--y .tc__i{background:rgba(20,122,82,.12);color:var(--ok)}
.tc--n .tc__i{background:var(--paper2);color:var(--ink60)}
.tc h3{margin-bottom:6px}
.tc p{font-size:13.5px;color:var(--ink60)}
@media(max-width:700px){.tr__g{grid-template-columns:1fr}
}
@media(max-width:980px){.hero__g,.lay,.how__g,.art__g{grid-template-columns:1fr}
.pls{grid-template-columns:1fr}
.toc{position:static}
.links{grid-template-columns:1fr 1fr}
.side{position:static}
.ft__g{grid-template-columns:1fr 1fr}
.nv{display:none}
.steps{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){.sb{display:none}
.bg{display:block}
.hd__in{height:62px}
.find__r{grid-template-columns:1fr}
.lc{grid-template-columns:1fr}
.lc__fee{flex-direction:row;justify-content:flex-start;gap:9px;border-right:none;border-bottom:1px solid var(--rule);padding:11px 16px}
.lc__fee b{font-size:21px}
.ph{flex-direction:column}
.frm__2{grid-template-columns:1fr}
.links{grid-template-columns:1fr}
.cn li:not(:first-child):not(:last-child):not(:nth-last-child(2)){display:none}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}
}
/* Side gutters: 100px on desktop, mobile and tablet left as they were.
   Everything on the site sits inside .wrap, so this one variable governs the
   header, the footer, every band on the Elementor pages and every view
   rendered by lc-templates.php. 981px is the same breakpoint the rest of the
   stylesheet already switches on. */
@media(min-width:981px){:root{--gut:100px}}

/* Elementor bridge: full-bleed bands, no theme gutters */

.lc-band{width:100%;display:block}
.e-con>.elementor-widget-html,.elementor-widget-html:has(>.lc-band){width:100%;max-width:100%}
.e-con:has(>.elementor-widget-html>.lc-band){align-items:stretch;padding:0;--padding-inline-start:0px;--padding-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px}
.elementor-location-header,.elementor-location-footer{width:100%}
.elementor-location-footer .ft{margin-top:0}
/* the mobile call bar only reserves space when it is actually on the page */
@media(max-width:700px){body{padding-bottom:0}
body:has(.mbar){padding-bottom:66px}
}

