/* Generated by build.py from src/. Edit src/ and rebuild. */
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/anton-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/inter-var-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
body{margin:0;background:#F6F7F6}
.ddjp-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1240px;margin:0 auto;padding:1rem clamp(1.1rem,4vw,3.2rem);font-family:"Inter",system-ui,sans-serif}
.ddjp-head img{height:30px;width:auto;display:block}
.ddjp-ctas{display:flex;gap:.5rem;align-items:center}
.ddjp-call{background:#0F7A38;color:#fff;text-decoration:none;font-weight:500;font-size:.95rem;padding:.65rem 1.2rem;border-radius:999px}
.ddjp-call:hover{background:#0C632E}
.ddjp-wa{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#25D366;color:#072714}
.ddjp-foot{border-top:1px solid rgba(15,18,17,.14);font:400 .85rem/1.5 "Inter",system-ui,sans-serif;color:#5A615F;max-width:1240px;margin:0 auto;padding:1.5rem clamp(1.1rem,4vw,3.2rem) 2.5rem}
.ddjp-foot a{color:inherit}
@media (max-width:480px){.ddjp-call{font-size:.85rem;padding:.6rem .95rem}}
/* DDJ Scaffolding cost estimator. Every rule is scoped under .ddje so it can sit
   inside the live site without touching its styles. Colours and fonts read the
   site's own --eb-* / --ddj-* tokens when present and fall back to the same values. */
.ddje{--k:var(--ddj-ink,#0F1211);--p:var(--ddj-paper,#F6F7F6);--w:#FFFFFF;--m:var(--eb-fg-muted,#5A615F);
  --l:var(--eb-line,rgba(15,18,17,.14));--g:var(--ddj-call,#0F7A38);--gh:var(--ddj-call-hover,#0C632E);
  --wa:var(--ddj-wa,#25D366);--wah:var(--ddj-wa-hover,#1FBB5B);--wai:var(--ddj-wa-ink,#072714);
  --fd:var(--eb-font-display,"Anton",Impact,"Arial Narrow",sans-serif);--fb:var(--eb-font-body,"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);
  font-family:var(--fb);color:var(--k);background:var(--p);line-height:1.5;-webkit-font-smoothing:antialiased;box-sizing:border-box}
.ddje *,.ddje *::before,.ddje *::after{box-sizing:inherit}
.ddje-wrap{max-width:1240px;margin:0 auto;padding:clamp(2.5rem,6vw,5rem) clamp(1.1rem,4vw,3.2rem)}
.ddje-eyebrow{color:inherit;font-weight:600;text-transform:uppercase;letter-spacing:.22em;font-size:clamp(.72rem,1.5vw,.9rem);margin:0 0 1rem}
.ddje-h1,.ddje-h2,.ddje-price{color:inherit;font-family:var(--fd);text-transform:uppercase;font-weight:400;letter-spacing:.005em;line-height:.98;margin:0}
.ddje-h1{font-size:clamp(2.4rem,6.5vw,4.5rem);text-wrap:balance}
.ddje-h2{font-size:clamp(1.5rem,3.2vw,2.1rem);margin-bottom:.35rem}
.ddje-lede{color:var(--m);font-size:clamp(1rem,1.6vw,1.2rem);max-width:44rem;margin:1.2rem 0 0}
.ddje-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:clamp(1.5rem,3vw,3rem);margin-top:clamp(2rem,4vw,3rem);align-items:start}
@media (max-width:960px){.ddje-grid{grid-template-columns:1fr}}
.ddje-step{border:0;margin:0 0 2.4rem;padding:0;min-width:0}
.ddje-step[hidden]{display:none}
.ddje-legend{display:flex;align-items:baseline;gap:.8rem;padding:0;margin-bottom:1rem;width:100%}
.ddje-num{font-weight:600;font-size:.8rem;letter-spacing:.18em;color:var(--m)}
.ddje-hint{color:var(--m);font-size:.95rem;margin:-.4rem 0 1rem}
.ddje-group{font-weight:600;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--m);margin:0 0 .6rem}
.ddje-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin-bottom:1.2rem}
.ddje-card{position:relative;display:block;cursor:pointer}
.ddje-card input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.ddje-card-body{display:flex;flex-direction:column;gap:.35rem;height:100%;background:var(--w);border:2px solid var(--l);padding:1rem 1rem 1.05rem;transition:border-color .18s,transform .18s,box-shadow .18s}
.ddje-card:hover .ddje-card-body{border-color:var(--k);transform:translateY(-2px);box-shadow:0 12px 26px -18px rgba(15,18,17,.6)}
.ddje-card input:focus-visible+.ddje-card-body{outline:3px solid var(--g);outline-offset:2px}
.ddje-card input:checked+.ddje-card-body{border-color:var(--k);background:var(--k);color:var(--p)}
.ddje-card input:checked+.ddje-card-body .ddje-card-sub{color:rgba(246,247,246,.72)}
.ddje-card input:disabled+.ddje-card-body{opacity:.4;cursor:not-allowed}
.ddje-card svg{width:46px;height:38px;margin-bottom:.25rem}
.ddje-card-title{font-family:var(--fd);text-transform:uppercase;font-size:1.25rem;line-height:1}
.ddje-card-sub{font-size:.85rem;color:var(--m);line-height:1.35}
.ddje-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.4rem}
.ddje-chip{position:relative;cursor:pointer}
.ddje-chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.ddje-chip span{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;border:2px solid var(--l);background:var(--w);font-weight:500;font-size:.95rem;transition:border-color .15s,background .15s}
.ddje-chip span::before{content:"";width:.9rem;height:.9rem;border:2px solid currentColor;opacity:.5}
.ddje-chip input:checked+span{border-color:var(--k);background:var(--k);color:var(--p)}
.ddje-chip input:checked+span::before{opacity:1;background:var(--g);border-color:var(--g)}
.ddje-chip input:focus-visible+span{outline:3px solid var(--g);outline-offset:2px}
.ddje-chip input:disabled+span{opacity:.35;cursor:not-allowed}
.ddje-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem;margin-bottom:1rem}
.ddje-field label{display:block;font-weight:500;font-size:.9rem;margin-bottom:.35rem}
.ddje-field small{display:block;color:var(--m);font-size:.78rem;margin-top:.3rem}
.ddje-in{width:100%;font:inherit;font-size:1rem;padding:.7rem .8rem;border:2px solid var(--l);background:var(--w);color:var(--k);border-radius:0;appearance:none}
.ddje-in:focus{outline:none;border-color:var(--k)}
select.ddje-in{background-image:linear-gradient(45deg,transparent 50%,var(--k) 50%),linear-gradient(135deg,var(--k) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 12px) 55%;background-size:6px 6px;background-repeat:no-repeat;padding-right:2rem}
.ddje-toggle{display:flex;align-items:center;gap:.7rem;font-weight:500;cursor:pointer;margin:.4rem 0 1rem;width:fit-content}
.ddje-toggle input{width:1.15rem;height:1.15rem;accent-color:var(--g)}
.ddje-extras{display:grid;gap:.5rem}
.ddje-extra{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;background:var(--w);border:2px solid var(--l);padding:.75rem .9rem;cursor:pointer}
.ddje-extra:has(input:checked){border-color:var(--k)}
.ddje-extra input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--g);margin:0}
.ddje-extra b{display:block;font-weight:600;font-size:.95rem}
.ddje-extra em{display:block;font-style:normal;color:var(--m);font-size:.82rem}
.ddje-extra .ddje-qty{width:4.2rem;padding:.4rem .5rem}
.ddje-extra[hidden]{display:none}
.ddje-note{border-left:3px solid var(--g);background:var(--w);padding:.7rem .9rem;font-size:.88rem;color:var(--m);margin:.3rem 0 1rem}
.ddje-note[hidden]{display:none}
.ddje-panel{position:sticky;top:1.5rem;background:var(--k);color:var(--p);padding:clamp(1.4rem,3vw,2rem)}
.ddje-panel .ddje-eyebrow{color:rgba(246,247,246,.7);margin-bottom:.6rem}
.ddje-price{font-size:clamp(2.1rem,4.4vw,2.8rem);line-height:1.02}
.ddje-vat{font-size:.88rem;color:rgba(246,247,246,.72);margin:.55rem 0 1.2rem}
.ddje-empty{color:rgba(246,247,246,.72);font-size:.95rem;margin:0}
.ddje-break{width:100%;border-collapse:collapse;font-size:.9rem;margin:0 0 1rem}
.ddje-break td{padding:.5rem 0;border-top:1px solid rgba(246,247,246,.16);vertical-align:top}
.ddje-break td:last-child{text-align:right;white-space:nowrap;padding-left:1rem;font-variant-numeric:tabular-nums}
.ddje-break tr.ddje-sub td{font-weight:600}
.ddje-break small{display:block;color:rgba(246,247,246,.6);font-size:.78rem}
.ddje-facts{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem;padding:0;list-style:none}
.ddje-facts li{font-size:.78rem;border:1px solid rgba(246,247,246,.25);padding:.25rem .55rem}
.ddje-disc{font-size:.8rem;color:rgba(246,247,246,.66);margin:0 0 1.2rem;line-height:1.45}
.ddje-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;font:inherit;font-weight:600;font-size:1.02rem;padding:.9rem 1.4rem;border-radius:999px;border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .18s,background .18s,box-shadow .18s;margin-bottom:.6rem}
.ddje-btn:hover{transform:translateY(-2px)}
.ddje-btn--quote{background:var(--g);color:#fff;border-color:var(--g)}
.ddje-btn--quote:hover{background:var(--gh);border-color:var(--gh);box-shadow:0 12px 30px -12px var(--g)}
.ddje-btn--wa{background:var(--wa);color:var(--wai)}
.ddje-btn--wa:hover{background:var(--wah)}
.ddje-btn--ghost{background:transparent;color:var(--p);border-color:rgba(246,247,246,.35);font-weight:500;font-size:.92rem;padding:.7rem 1.2rem}
.ddje-btn--ghost:hover{border-color:var(--p)}
.ddje-btn .ddje-arrow{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:rgba(255,255,255,.2);font-size:.85rem}
.ddje-btn[aria-disabled=true]{opacity:.45;pointer-events:none}
.ddje-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ddje [hidden]{display:none !important}
.ddje-mbar{display:none}
@media (max-width:960px){.ddje-mbar{position:fixed;left:.75rem;right:.75rem;bottom:.75rem;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--k);color:var(--p);text-decoration:none;padding:.85rem 1.1rem;box-shadow:0 14px 34px -14px rgba(15,18,17,.7);font-weight:500;font-size:.9rem}
.ddje-mbar span:first-child{font-family:var(--fd);font-size:1.35rem;letter-spacing:.005em}}
.ddje-offscreen{position:fixed;top:0;left:0;opacity:0;pointer-events:none}
/* PWA-only additions: safe areas for notched phones, standalone tweaks, install prompt. */
.ddjp-head{padding-top:max(1rem,env(safe-area-inset-top));padding-left:max(clamp(1.1rem,4vw,3.2rem),env(safe-area-inset-left));padding-right:max(clamp(1.1rem,4vw,3.2rem),env(safe-area-inset-right))}
.ddje-wrap{padding-left:max(clamp(1.1rem,4vw,3.2rem),env(safe-area-inset-left));padding-right:max(clamp(1.1rem,4vw,3.2rem),env(safe-area-inset-right))}
.ddjp-foot{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}
@media (max-width:960px){.ddje-mbar{bottom:calc(.75rem + env(safe-area-inset-bottom));left:max(.75rem,env(safe-area-inset-left));right:max(.75rem,env(safe-area-inset-right))}}
html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}
@media (display-mode:standalone){body{overscroll-behavior-y:none}}
.ddjp-a2hs{display:flex;align-items:center;gap:.8rem;max-width:1240px;margin:0 auto;padding:.85rem 1rem;background:#0F1211;color:#F6F7F6;font:400 .9rem/1.4 "Inter",system-ui,sans-serif;margin-left:max(clamp(1.1rem,4vw,3.2rem),env(safe-area-inset-left));margin-right:max(clamp(1.1rem,4vw,3.2rem),env(safe-area-inset-right))}
@media (min-width:1305px){.ddjp-a2hs{margin-left:auto;margin-right:auto}}
.ddjp-a2hs[hidden]{display:none}
.ddjp-a2hs img{width:40px;height:40px;flex:none}
.ddjp-a2hs p{margin:0;flex:1}
.ddjp-a2hs b{display:block;font-weight:600}
.ddjp-a2hs svg{vertical-align:-3px}
.ddjp-a2hs-btn{font:inherit;font-weight:600;background:#0F7A38;color:#fff;border:0;border-radius:999px;padding:.55rem 1rem;cursor:pointer;flex:none}
.ddjp-a2hs-x{font:inherit;font-size:1.3rem;line-height:1;background:none;border:0;color:#F6F7F6;opacity:.7;cursor:pointer;padding:.3rem .4rem;flex:none}
.ddjp-off{max-width:1240px;margin:.5rem auto 0;text-align:center;font:500 .82rem/1.4 "Inter",system-ui,sans-serif;color:#5A615F}
.ddjp-off[hidden]{display:none}
