/* Trades kit components: quote form, service areas, sample prices, licensing band, illustrated before/after, call band, van hero. Loaded after shop.css + svc.css. */
/* quote form */
.qg{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.qg>*{min-width:0}
.qtx h2{font-size:clamp(30px,3.6vw,52px);margin-bottom:14px}.qtx>p{color:var(--mu);margin:0 0 24px;max-width:460px}
.qcall{display:flex;gap:14px;align-items:center}.qcall i{width:52px;height:52px;border-radius:50%;background:var(--ac);color:var(--bf);display:grid;place-items:center;flex:none}
.qcall small{display:block;font-size:13px;color:var(--mu)}.qcall b{font-family:var(--head);font-size:24px;line-height:1.1}
.qform{background:var(--bg);border:1px solid var(--line);border-radius:calc(var(--r) + 10px);padding:32px;box-shadow:0 30px 70px rgba(0,0,0,.1);display:grid;gap:14px}
.sec.alt .qform{border-color:transparent}
.qform .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qform label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mu);min-width:0}
.qform select,.qform input,.qform textarea{min-height:50px;border-radius:var(--br,var(--r));border:1.5px solid var(--line);background:var(--card);padding:0 14px;font:inherit;font-size:15px;letter-spacing:0;text-transform:none;color:var(--fg);width:100%;min-width:0}
.qform textarea{padding:12px 14px;min-height:96px;resize:vertical}
.qup{display:flex;gap:12px;align-items:center;border:1.5px dashed var(--line);border-radius:var(--br,var(--r));padding:14px 16px;font-size:14px;color:var(--mu)}.qup svg{width:20px;height:20px;color:var(--ac)}.qup b{color:var(--fg)}
.qurg{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.qurg .lbl{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mu);margin-right:6px}
.qurg span:not(.lbl){border:1.5px solid var(--line);border-radius:99px;padding:8px 16px;font-weight:700;font-size:14px}.qurg span.on{background:var(--ac);color:var(--bf);border-color:var(--ac)}
.qform small{color:var(--mu);text-align:center;font-size:12px}
.qsec.dk{background:var(--ink);color:var(--inkfg)}.qsec.dk .qtx>p,.qsec.dk .qcall small,.qsec.dk .fine{color:color-mix(in srgb,var(--inkfg) 70%,transparent)}.qsec.dk .ey{color:var(--ac2,var(--ac))}
.qsec.dk .qform{color:var(--fg)}
/* service areas */
.ag2{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.ag2>*{min-width:0}.asec.flip .amap{order:-1}
.atx h2{font-size:clamp(30px,3.6vw,50px);margin-bottom:14px}.atx>p{color:var(--mu);margin:0 0 22px}
.achips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.achips span{padding:9px 16px;border-radius:99px;background:var(--card);font-weight:600;font-size:14px}
.sec.alt .achips span{background:var(--bg)}
.pc{display:flex;gap:10px;max-width:440px}.pc input{flex:1;min-width:0;min-height:52px;border-radius:var(--br,var(--r));border:1.5px solid var(--line);background:var(--bg);padding:0 16px;font:inherit;color:var(--fg)}
.amap{position:relative;aspect-ratio:1.15;border-radius:calc(var(--r) + 14px);overflow:hidden;background:
 linear-gradient(color-mix(in srgb,var(--fg) 6%,transparent) 1px,transparent 1px) 0 0/44px 44px,
 linear-gradient(90deg,color-mix(in srgb,var(--fg) 6%,transparent) 1px,transparent 1px) 0 0/44px 44px,
 radial-gradient(40% 30% at 18% 80%,color-mix(in srgb,#5fb878 30%,transparent),transparent 70%),
 radial-gradient(30% 40% at 85% 15%,color-mix(in srgb,#4aa3df 30%,transparent),transparent 70%),var(--card)}
.amap .rd{position:absolute;background:color-mix(in srgb,var(--bg) 90%,var(--fg));border:2px solid color-mix(in srgb,var(--fg) 10%,transparent)}
.rd.r1{left:-5%;right:-5%;top:46%;height:16px;transform:rotate(-8deg)}.rd.r2{top:-5%;bottom:-5%;left:58%;width:16px;transform:rotate(12deg)}.rd.r3{left:-5%;right:-5%;top:20%;height:10px;transform:rotate(18deg)}
.amap .rad{position:absolute;left:50%;top:50%;width:64%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:color-mix(in srgb,var(--ac) 16%,transparent);border:2px dashed var(--ac)}
.amap .hub{position:absolute;left:50%;top:50%;width:76px;height:76px;transform:translate(-50%,-50%);border-radius:50%;background:var(--ac);display:grid;place-items:center;box-shadow:0 0 0 10px color-mix(in srgb,var(--ac) 25%,transparent),0 16px 30px rgba(0,0,0,.2)}.amap .hub .g{width:60%}
.mp{position:absolute;display:flex;align-items:center;gap:6px;background:var(--bg);color:var(--fg);border-radius:99px;padding:6px 12px 6px 8px;font-size:12.5px;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.12);white-space:nowrap}.mp svg{width:16px;height:16px;color:var(--ac)}.mp em{font-style:normal}
.mp.p1{left:8%;top:12%}.mp.p2{right:8%;top:30%}.mp.p3{left:12%;bottom:22%}.mp.p4{right:12%;bottom:9%}
.rlbl{position:absolute;left:50%;top:calc(50% + 52px);transform:translateX(-50%);font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--ac);background:var(--bg);padding:3px 10px;border-radius:99px;white-space:nowrap}
/* prices */
.pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pcd{position:relative;border:1px solid var(--line);border-radius:calc(var(--r) + 8px);padding:30px;display:flex;flex-direction:column;background:var(--bg)}.sec.alt .pcd{border-color:transparent}
.pcd.hi{background:var(--ink);color:var(--inkfg);border-color:var(--ink)}.pcd.hi .ticks li::before{background:var(--ac2,var(--ac))}
.pcd .pop{position:absolute;top:-12px;left:30px;background:var(--ac2,var(--ac));color:var(--bf);font-size:12px;font-weight:800;padding:5px 12px;border-radius:99px}
.pcd h3{font-size:21px}.pcd .pr{margin:14px 0 20px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.pcd .pr small{font-size:13px;opacity:.7}.pcd .pr b{font-family:var(--head);font-size:44px;line-height:1}.pcd .pr span{opacity:.7;font-size:14px;margin:0}
.pcd .ticks{flex:1}.pcd .btn{width:100%}
.ptab{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.ptab li{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 4px;border-bottom:1px solid var(--line)}
.ptab b{display:block;font-family:var(--head);font-size:21px}.ptab span{color:var(--mu);font-size:14.5px}.ptab em{font-style:normal;text-align:right;font-family:var(--head);font-size:30px;color:var(--ac);white-space:nowrap;line-height:1.1}.ptab em small{display:block;font-family:var(--body);font-size:12px;color:var(--mu)}
/* licensing / insurance */
.lband{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:calc(var(--r) + 8px);background:var(--card);overflow:hidden}
.lband>div{display:flex;gap:14px;align-items:center;padding:22px 22px;border-right:1px solid var(--line)}.lband>div:last-child{border:0}
.lband i,.lgrid i{width:46px;height:46px;border-radius:50%;background:color-mix(in srgb,var(--ac) 18%,var(--bg));color:var(--ac);display:grid;place-items:center;flex:none}
.lband b,.lgrid b{display:block;font-size:15.5px}.lband span,.lgrid span{font-size:13px;color:var(--mu)}.lband>div>div,.lgrid>div>div{min-width:0}
.lcard{display:grid;grid-template-columns:auto 1fr 1.3fr;gap:36px;align-items:center;background:var(--card);border-radius:calc(var(--r) + 12px);padding:36px 40px}
.lseal{width:110px;height:110px;border-radius:50%;background:var(--ac);display:grid;place-items:center;box-shadow:0 0 0 10px color-mix(in srgb,var(--ac) 22%,transparent)}.lseal .g{width:56%}
.lcard h2{font-size:clamp(24px,2.6vw,34px)}.lgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lgrid>div{display:flex;gap:12px;align-items:center}
/* before / after (illustrated) */
.bxg{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.bx>b{display:block;margin-top:14px;font-size:17px}.bx>span{font-size:13px;color:var(--mu)}
.bxi{position:relative;display:grid;grid-template-columns:1fr 1fr;aspect-ratio:4/3;border-radius:calc(var(--r) + 6px);overflow:hidden}
.bh{position:relative;display:grid;place-items:center;overflow:hidden}.bh .g{width:56%;position:relative;z-index:1}
.bh.b{background:color-mix(in srgb,var(--mu) 30%,var(--card));color:color-mix(in srgb,var(--mu) 70%,var(--fg))}.bh.b .g{transform:rotate(-14deg) translateY(6%);filter:grayscale(1) contrast(.75);opacity:.75}
.bh .gr{position:absolute;inset:0;background:radial-gradient(22% 18% at 30% 70%,rgba(90,70,40,.28),transparent 70%),radial-gradient(18% 14% at 72% 30%,rgba(90,70,40,.22),transparent 70%),repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 6px,transparent 6px 14px)}
.bh .ck{position:absolute;inset:0;width:100%;height:100%;opacity:.35}
.bh.a{background:radial-gradient(70% 70% at 50% 40%,color-mix(in srgb,var(--ac) 30%,var(--bg)),color-mix(in srgb,var(--ac) 14%,var(--card)))}.bh.a .g{filter:drop-shadow(0 12px 16px rgba(0,0,0,.18))}
.sp{position:absolute;font-style:normal;color:var(--ac2,var(--ac));z-index:2}.sp.s1{top:16%;right:18%;font-size:22px}.sp.s2{bottom:20%;left:16%;font-size:14px}.sp.s3{top:30%;left:22%;font-size:11px;opacity:.7}
.bh .tag{position:absolute;top:10px;left:10px;z-index:3;background:rgba(0,0,0,.6);color:#fff;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:99px}.bh.a .tag{left:auto;right:10px;background:var(--ac);color:var(--bf)}
.bxi .hdl{position:absolute;left:50%;top:0;bottom:0;width:3px;background:#fff;transform:translateX(-50%);z-index:4;font-style:normal}
.bxi .hdl::after{content:"⟷";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:#fff;color:#222;display:grid;place-items:center;font-size:16px;box-shadow:0 6px 16px rgba(0,0,0,.2)}
.bxi .hdl{font-size:0}
/* emergency call band */
.cband{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:var(--hbg,var(--ink));color:var(--hfg,var(--inkfg));border-radius:calc(var(--r) + 12px);padding:34px 40px}
.cband .ey{color:var(--ac2,var(--ac));margin-bottom:8px}.cband h2{font-size:clamp(26px,3vw,42px)}.cband h2 em{color:var(--ac2,var(--ac))}.cband p:not(.ey){margin:8px 0 0;opacity:.75;font-size:15px}
.pulse{width:72px;height:72px;border-radius:50%;background:var(--sale,#e5483b);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 10px color-mix(in srgb,var(--sale,#e5483b) 25%,transparent)}.pulse svg{width:28px;height:28px}
.cband .btn.big{min-height:62px;font-size:19px;white-space:nowrap;background:var(--ac);color:var(--bf);box-shadow:none}
/* van hero */
.hx-van{padding:56px 0 70px}.vg{display:grid;grid-template-columns:1fr 1.05fr;gap:50px;align-items:center}.vg>*{min-width:0}.hx-van h1{font-size:clamp(42px,5.6vw,84px);margin-bottom:20px}
.vstage{position:relative;aspect-ratio:1.18;display:flex;align-items:flex-end;justify-content:center;padding:0 4% 12%}
.vbg{position:absolute;inset:0 0 8% 0;border-radius:calc(var(--r)*2 + 20px);background:radial-gradient(70% 60% at 60% 30%,color-mix(in srgb,var(--ac) 26%,var(--card)),var(--card))}
.vansvg{position:relative;width:100%;height:auto;z-index:1}
.vstage .road{position:absolute;left:6%;right:6%;bottom:10%;height:4px;border-radius:2px;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--fg) 30%,transparent) 0 26px,transparent 26px 46px)}
.vstage .fl{z-index:2}.vstage .fl.a{left:-14px;bottom:2%}.vstage .fl.b{right:-8px;top:4%}
/* responsive */
@media (max-width:900px){.qg,.ag2,.vg{grid-template-columns:1fr;gap:36px}.asec.flip .amap{order:0}.pcards,.bxg{grid-template-columns:1fr}.lband{grid-template-columns:1fr 1fr}.lband>div:nth-child(2){border-right:0}.lband>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
 .lcard{grid-template-columns:1fr;padding:30px 26px;gap:22px}.cband{grid-template-columns:1fr;padding:30px 26px;gap:18px}.vstage{max-width:560px;width:100%;margin:0 auto}}
@media (max-width:560px){.qform{padding:22px 18px}.qform .two{grid-template-columns:1fr}.lband{grid-template-columns:1fr}.lband>div{border-right:0;border-bottom:1px solid var(--line)}.lband>div:last-child{border:0}.lgrid{grid-template-columns:1fr}
 .ptab li{flex-direction:column;align-items:flex-start;gap:8px}.ptab em{text-align:left}.mp{font-size:11px;padding:5px 10px 5px 6px}.amap .hub{width:60px;height:60px}.cband .btn.big{font-size:17px;width:100%}.pulse{width:58px;height:58px}
 .vstage .fl.a{left:0;top:4%}.vstage .fl.b{display:none}.pc .btn{padding:0 18px}}
