.pfqe-app{
  --pf-bg:#080b0e;--pf-surface:#0e1318;--pf-surface2:#161d24;--pf-line:#2a3742;--pf-line2:#3a4a58;
  --pf-ink:#dde8ef;--pf-bright:#f2f7fa;--pf-muted:#8fa3b3;--pf-faint:#5c7080;--pf-accent:#d95f0a;
  --pf-accent-soft:rgba(217,95,10,.12);
  --pf-sans:'DM Sans',-apple-system,Segoe UI,Roboto,sans-serif;--pf-display:'Bebas Neue',Impact,sans-serif;--pf-mono:'DM Mono',ui-monospace,Menlo,monospace;
  max-width:1080px;margin:0 auto;font-family:var(--pf-sans);color:var(--pf-ink);font-size:15px;line-height:1.5;box-sizing:border-box;background:var(--pf-bg);border:1px solid var(--pf-line)}
.pfqe-app *{box-sizing:border-box}
.pfqe-header{background:transparent;border-bottom:1px solid var(--pf-line);color:var(--pf-bright);padding:16px 22px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.pfqe-brand{display:flex;align-items:center;gap:12px}
.pfqe-logo{width:36px;height:36px;background:var(--pf-accent);display:grid;place-items:center;font-weight:700;color:#fff;font-family:var(--pf-display);font-size:20px;letter-spacing:1px}
.pfqe-h1{font-family:var(--pf-display);font-size:24px;letter-spacing:.5px;color:var(--pf-bright);line-height:1}
.pfqe-sub{font-family:var(--pf-mono);font-size:11px;color:var(--pf-faint);text-transform:uppercase;letter-spacing:1.5px;margin-top:3px}
.pfqe-card .pfqe-sub{color:var(--pf-muted)}
.pfqe-modeswitch{display:flex;border:1px solid var(--pf-line2);background:var(--pf-surface)}
.pfqe-mode{background:none;border:0;color:var(--pf-muted);padding:8px 16px;cursor:pointer;font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:1.2px}
.pfqe-mode.is-active{background:var(--pf-accent);color:#fff}
.pfqe-app.pfqe-nohead{background:transparent;border:0}
.pfqe-app.pfqe-nohead .pfqe-header{border:0;padding:0 0 14px;justify-content:flex-end}
.pfqe-app.pfqe-nohead .pfqe-brand{display:none}
.pfqe-app.pfqe-nohead .pfqe-wrap{padding:0}
.pfqe-pwbox{display:none;align-items:center;gap:10px;background:var(--pf-surface2);color:var(--pf-ink);padding:11px 22px;font-family:var(--pf-mono);font-size:12px;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--pf-line)}
.pfqe-app.pfqe-pwopen .pfqe-pwbox{display:flex;flex-wrap:wrap}
.pfqe-pw{padding:7px 9px;border:1px solid var(--pf-line2);background:var(--pf-bg);color:#fff;font-size:14px;width:130px;font-family:var(--pf-sans)}
.pfqe-pwgo{background:var(--pf-accent);color:#fff;border:0;padding:7px 16px;font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:1px;cursor:pointer}
.pfqe-pwerr{color:#e0795f;font-size:12px}
.pfqe-wrap{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:840px){.pfqe-wrap{grid-template-columns:1fr}}
.pfqe-card{background:var(--pf-surface);border:1px solid var(--pf-line);padding:20px 22px}
.pfqe-cardtitle{margin:0 0 16px;font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--pf-accent);font-weight:500}
.pfqe-admin-h{color:#b07fc9}
.pfqe-label{display:block;font-family:var(--pf-mono);font-size:11px;color:var(--pf-muted);margin:12px 0 5px;text-transform:uppercase;letter-spacing:1px}
.pfqe-in{width:100%;padding:10px 11px;border:1px solid var(--pf-line2);font-size:15px;background:var(--pf-surface2);color:var(--pf-ink);font-family:var(--pf-sans)}
.pfqe-in[readonly]{background:var(--pf-bg);color:var(--pf-faint)}
.pfqe-in:focus{outline:0;border-color:var(--pf-accent)}
.pfqe-in option{background:var(--pf-surface2);color:var(--pf-ink)}
.pfqe-row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.pfqe-seg{display:flex;gap:0;border:1px solid var(--pf-line2);margin-bottom:4px}
.pfqe-imode{flex:1;background:var(--pf-surface);border:0;padding:9px 10px;cursor:pointer;font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--pf-muted)}
.pfqe-imode.is-active{background:var(--pf-surface2);color:var(--pf-accent)}
.pfqe-matchnote{font-family:var(--pf-mono);font-size:11px;color:var(--pf-muted);margin-top:10px;text-transform:uppercase;letter-spacing:.5px}
.pfqe-matchnote b{color:var(--pf-ink)}
.pfqe-upload{width:100%;margin-top:14px;opacity:.5;cursor:not-allowed;border-style:dashed}
.pfqe-total{font-family:var(--pf-display);font-size:52px;color:var(--pf-accent);margin:4px 0 2px;line-height:1;letter-spacing:.5px}
.pfqe-lines{margin-top:18px}
.pfqe-li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--pf-line);font-size:14px}
.pfqe-li span:last-child{font-weight:500;font-variant-numeric:tabular-nums}
.pfqe-li-tot{border-bottom:0;border-top:2px solid var(--pf-accent);margin-top:6px;padding-top:12px;font-size:16px;text-transform:uppercase;font-family:var(--pf-mono);letter-spacing:1px}
.pfqe-pill{display:inline-block;font-family:var(--pf-mono);font-size:10px;padding:3px 9px;background:var(--pf-accent-soft);color:var(--pf-accent);text-transform:uppercase;letter-spacing:1px;vertical-align:middle}
.pfqe-pill-admin{background:rgba(176,127,201,.15);color:#b07fc9}
.pfqe-admin-only{display:none}
.pfqe-app.pfqe-admin .pfqe-admin-only{display:block}
.pfqe-app.pfqe-admin .pfqe-settings{grid-column:1/-1}
.pfqe-breakdown{margin-top:18px}
.pfqe-tbl{width:100%;border-collapse:collapse;font-size:13px}
.pfqe-tbl th,.pfqe-tbl td{padding:7px 6px;text-align:right;border-bottom:1px solid var(--pf-line)}
.pfqe-tbl th:first-child,.pfqe-tbl td:first-child{text-align:left}
.pfqe-tbl th{color:var(--pf-muted);font-family:var(--pf-mono);font-weight:400;font-size:10px;text-transform:uppercase;letter-spacing:1px}
.pfqe-tbl td{font-variant-numeric:tabular-nums}
.pfqe-tbl tr.pfqe-trtot td{border-top:2px solid var(--pf-accent);border-bottom:0;font-weight:500;padding-top:9px}
.pfqe-note{background:var(--pf-surface2);border-left:2px solid var(--pf-accent);padding:11px 13px;font-size:12px;color:var(--pf-muted);margin-top:14px;line-height:1.5}
.pfqe-btnrow{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}
.pfqe-btn{background:var(--pf-accent);color:#fff;border:1px solid var(--pf-accent);padding:11px 18px;font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:1.3px;cursor:pointer}
.pfqe-ghost{background:transparent;color:var(--pf-accent);border:1px solid rgba(217,95,10,.5)}
.pfqe-savemsg{font-family:var(--pf-mono);font-size:11px;color:var(--pf-muted);margin-top:8px;text-transform:uppercase;letter-spacing:.5px}

/* ===== Shared full-screen chrome (nav + footer + main) ===== */
html:has(body.pfqe-fs){background:#080b0e}
body.pfqe-fs{margin:0;background:#080b0e;color:#dde8ef;font-family:'DM Sans',-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}
body.pfqe-fs a{text-decoration:none}
.pfqe-nav{position:sticky;top:0;z-index:50;background:rgba(8,11,14,.92);backdrop-filter:blur(8px);border-bottom:1px solid #2a3742}
body.admin-bar .pfqe-nav{top:32px}
@media(max-width:782px){body.admin-bar .pfqe-nav{top:46px}}
.pfqe-nav-inner{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.pfqe-nav-brand{font-family:'Bebas Neue',sans-serif;font-size:26px;letter-spacing:2px;color:#f2f7fa}
.pfqe-nav-brand:hover{color:#d95f0a}
.pfqe-nav-links{display:flex;align-items:center;gap:26px}
.pfqe-nav-links a{font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#8fa3b3}
.pfqe-nav-links a:hover{color:#dde8ef}
.pfqe-nav-links a.is-current{color:#d95f0a}
.pfqe-nav-cta{border:1px solid rgba(217,95,10,.5);color:#d95f0a !important;padding:9px 18px}
.pfqe-nav-cta:hover{background:#d95f0a;color:#fff !important}
.pfqe-nav-toggle{display:none;background:none;border:0;color:#dde8ef;font-size:22px;cursor:pointer}
.pfqe-fs-main{max-width:1200px;margin:0 auto;padding:0 24px}
.pfqe-fs-head{padding:44px 0 8px}
.pfqe-fs-eyebrow{font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:3px;color:#d95f0a;margin-bottom:10px}
.pfqe-fs-title{font-family:'Bebas Neue',sans-serif;font-size:64px;line-height:.95;letter-spacing:1px;color:#f2f7fa;margin:0}
.pfqe-fs-title span{color:#d95f0a}
.pfqe-fs-lede{color:#8fa3b3;font-size:16px;max-width:560px;margin:14px 0 26px}
.pfqe-fs .pfqe-app{max-width:100%;border:0;background:transparent}
.pfqe-fs .pfqe-app .pfqe-wrap{padding:0}
.pfqe-fs .pfqe-app .pfqe-header{border:0;padding:0 0 14px;justify-content:flex-end}
.pfqe-fs .pfqe-app .pfqe-brand{display:none}
.pfqe-site-foot{border-top:1px solid #2a3742;margin-top:40px}
.pfqe-site-foot-inner{max-width:1200px;margin:0 auto;padding:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-family:'DM Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#5c7080}
.pfqe-foot-brand{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:2px;color:#3a4a58}
@media(max-width:760px){
  .pfqe-nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#0e1318;border-bottom:1px solid #2a3742;flex-direction:column;align-items:flex-start;gap:0;padding:8px 24px 16px}
  .pfqe-nav.open .pfqe-nav-links{display:flex}
  .pfqe-nav-links a{padding:10px 0}
  .pfqe-nav-toggle{display:block}
  .pfqe-fs-title,.pfqe-hero-title{font-size:48px}
}

/* ===== Homepage ===== */
.pfqe-home{color:#dde8ef;font-family:'DM Sans',sans-serif}
.pfqe-hero{padding:70px 0 60px}
.pfqe-hero-eyebrow{font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:3px;color:#d95f0a;margin-bottom:18px}
.pfqe-hero-title{font-family:'Bebas Neue',sans-serif;font-size:120px;line-height:.9;letter-spacing:1px;color:#f2f7fa;margin:0}
.pfqe-hero-title span{color:#d95f0a}
.pfqe-hero-lede{color:#8fa3b3;font-size:18px;max-width:600px;margin:24px 0 30px;line-height:1.6}
.pfqe-hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.pfqe-cta{display:inline-block;font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:1.5px;padding:14px 26px;cursor:pointer}
.pfqe-cta-solid{background:#d95f0a;color:#fff;border:1px solid #d95f0a}
.pfqe-cta-solid:hover{background:#b94e08}
.pfqe-cta-ghost{background:transparent;color:#d95f0a;border:1px solid rgba(217,95,10,.5)}
.pfqe-cta-ghost:hover{background:rgba(217,95,10,.12)}
.pfqe-stats{display:grid;grid-template-columns:repeat(3,auto);gap:48px;margin-top:50px;justify-content:start}
@media(max-width:600px){.pfqe-stats{grid-template-columns:1fr;gap:24px}}
.pfqe-stat-n{font-family:'Bebas Neue',sans-serif;font-size:54px;line-height:1;color:#f2f7fa}
.pfqe-stat-n span{color:#d95f0a}
.pfqe-stat-l{font-family:'DM Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#8fa3b3;margin-top:4px}
.pfqe-marquee{width:100vw;margin-left:calc(-50vw + 50%);overflow:hidden;white-space:nowrap;border-top:1px solid #2a3742;border-bottom:1px solid #2a3742;padding:14px 0;background:#0e1318}
.pfqe-marquee span{display:inline-block;font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#5c7080;animation:pfqe-scroll 40s linear infinite}
@keyframes pfqe-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}
.pfqe-sec{padding:64px 0;border-bottom:1px solid #161d24}
.pfqe-sec-num{font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:3px;color:#d95f0a;margin-bottom:14px}
.pfqe-sec-h{font-family:'Bebas Neue',sans-serif;font-size:56px;line-height:1;letter-spacing:.5px;color:#f2f7fa;margin:0 0 16px}
.pfqe-sec-h span{color:#d95f0a}
.pfqe-sec-lede{color:#8fa3b3;font-size:16px;max-width:640px;margin:0 0 36px;line-height:1.6}
.pfqe-svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:#2a3742;border:1px solid #2a3742}
.pfqe-svc-card{background:#0e1318;padding:28px 26px}
.pfqe-svc-card:hover{background:#161d24}
.pfqe-svc-num{font-family:'DM Mono',monospace;font-size:13px;color:#d95f0a;margin-bottom:14px}
.pfqe-svc-h{font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:.5px;color:#f2f7fa;margin:0 0 10px}
.pfqe-svc-p{color:#8fa3b3;font-size:14px;line-height:1.6;margin:0}
.pfqe-about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px}
.pfqe-about-num{font-family:'DM Mono',monospace;font-size:12px;color:#d95f0a;margin-bottom:10px}
.pfqe-about-h{font-family:'Bebas Neue',sans-serif;font-size:24px;letter-spacing:.5px;color:#f2f7fa;margin:0 0 8px}
.pfqe-about-p{color:#8fa3b3;font-size:14px;line-height:1.6;margin:0}
.pfqe-cap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:#2a3742;border:1px solid #2a3742}
.pfqe-cap-item{background:#0e1318;padding:22px 24px;display:flex;flex-direction:column;gap:5px}
.pfqe-cap-h{font-family:'Bebas Neue',sans-serif;font-size:24px;letter-spacing:.5px;color:#f2f7fa}
.pfqe-cap-p{font-family:'DM Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#8fa3b3}
.pfqe-cap-cta{margin-top:54px;text-align:center;padding:50px 24px;border:1px solid #2a3742;background:#0e1318}
.pfqe-cap-cta .pfqe-sec-h{margin-top:0}
.pfqe-cap-cta .pfqe-sec-lede{margin-left:auto;margin-right:auto}
.pfqe-contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:40px}
@media(max-width:760px){.pfqe-contact-grid{grid-template-columns:1fr;gap:28px}}
.pfqe-ci{padding:14px 0;border-bottom:1px solid #161d24}
.pfqe-ci-l{display:block;font-family:'DM Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#5c7080;margin-bottom:5px}
.pfqe-ci-v{color:#dde8ef;font-size:15px;line-height:1.5}
.pfqe-ci-v a{color:#d95f0a}
.pfqe-form{background:#0e1318;border:1px solid #2a3742;padding:26px}
.pfqe-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pfqe-form textarea.pfqe-in{font-family:'DM Sans',sans-serif;resize:vertical}
.pfqe-form-note{font-family:'DM Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#5c7080;margin-top:10px;line-height:1.5}

/* ===== CAD upload + drawing results ===== */
.pfqe-uploadwrap{margin-top:14px}
.pfqe-upstatus{font-family:'DM Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--pf-muted);margin-top:8px;min-height:14px}
.pfqe-upstatus.busy{color:var(--pf-accent)}
.pfqe-upstatus.err{color:#e0795f}
.pfqe-drawing{margin-top:14px;background:var(--pf-surface2);border:1px solid var(--pf-line);padding:14px}
.pfqe-drawhit{font-family:'DM Mono',monospace;font-size:12px;color:var(--pf-accent);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}
.pfqe-drawhit.warn{color:#caa46a}
.pfqe-drawhit b{color:var(--pf-bright)}
.pfqe-bomtbl{width:100%;border-collapse:collapse;font-size:12px}
.pfqe-bomtbl th,.pfqe-bomtbl td{padding:5px 6px;text-align:left;border-bottom:1px solid var(--pf-line)}
.pfqe-bomtbl th{font-family:'DM Mono',monospace;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--pf-muted);font-weight:400}
.pfqe-bomtbl td.m{font-family:'DM Mono',monospace;color:var(--pf-muted);white-space:nowrap}
.pfqe-tag{font-family:'DM Mono',monospace;font-size:9px;padding:2px 7px;text-transform:uppercase;letter-spacing:.5px}
.pfqe-tag.fab{background:var(--pf-accent-soft);color:var(--pf-accent)}
.pfqe-tag.buy{background:rgba(143,163,179,.14);color:var(--pf-muted)}
.pfqe-drawmeta{font-family:'DM Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--pf-faint);margin-top:10px}

/* ===== Request a Quote ===== */
.pfqe-reqbtn{width:100%;margin-top:16px;background:var(--pf-accent);color:#fff;border:1px solid var(--pf-accent);
  padding:13px 18px;font-family:var(--pf-mono);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:1.3px;cursor:pointer}
.pfqe-reqbtn:hover{background:#b94e08}
.pfqe-quoteform{margin-top:14px;background:var(--pf-surface2);border:1px solid var(--pf-line);padding:16px}
.pfqe-qf-title{font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--pf-accent);margin-bottom:6px}
.pfqe-qf-status{font-family:var(--pf-mono);font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--pf-muted);margin-top:8px;min-height:14px}
.pfqe-qf-status.busy{color:var(--pf-accent)}
.pfqe-qf-status.err{color:#e0795f}
.pfqe-qf-thanks{font-family:var(--pf-sans);font-size:15px;color:var(--pf-bright);line-height:1.5;padding:6px 0}

/* nav login / logout link */
.pfqe-nav-login{font-family:'DM Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#5c7080 !important;display:inline-flex;align-items:center;gap:5px}
.pfqe-nav-login:hover{color:#dde8ef !important}
