/* GroundUp bold pass: hard edges, heavy type, lime on black. Loaded last on every page. */
:root{--gu-lime:#A6E22E;--gu-amber:#F2A51B;--gu-steel:#1A1C1E;--gu-steel2:#232629}
/* ---- controls: industrial sliders, cut-corner fields, heavy buttons ---- */
input[type=range],.gt input[type=range],.calc input[type=range],.rng input[type=range],.mini input[type=range]{-webkit-appearance:none;appearance:none;height:14px;border-radius:0;border:0;padding:0;min-height:0;outline:none;cursor:pointer;
  background:linear-gradient(90deg,var(--gu-lime) var(--p,30%),#1f2123 var(--p,30%)),repeating-linear-gradient(90deg,transparent 0 9px,rgba(0,0,0,.35) 9px 10px);background-blend-mode:normal;box-shadow:inset 0 2px 0 rgba(0,0,0,.6)}
input[type=range]::-webkit-slider-thumb,.gu .calc input[type=range]::-webkit-slider-thumb,.gt input[type=range]::-webkit-slider-thumb,.calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:30px!important;height:30px!important;border-radius:0!important;background:var(--gu-lime)!important;border:3px solid #0B0B0B!important;box-shadow:0 0 0 2px var(--gu-lime),0 6px 14px rgba(0,0,0,.6);clip-path:polygon(22% 0,100% 0,78% 100%,0 100%)!important;cursor:grab;transition:transform .12s}
input[type=range]:active::-webkit-slider-thumb{transform:scale(1.08);cursor:grabbing}
input[type=range]::-moz-range-thumb{width:22px;height:26px;border-radius:0;background:var(--gu-lime);border:3px solid #0B0B0B;box-shadow:0 0 0 2px var(--gu-lime)}
.gt-play input[type=range]::-webkit-slider-thumb{background:#fff!important;clip-path:none!important;width:22px!important;height:22px!important;border-radius:50%!important;border:3px solid var(--gu-lime)!important;box-shadow:none!important}
.f input,.f select,.f textarea,input.i,select.i,textarea.i,.gt input[type=text],.gt-ask input,.job input[type=text]{border-radius:0!important;border:2px solid #2c2c2c!important;background:#111!important;font-weight:600;clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%)}
.f input:focus,.f select:focus,.f textarea:focus,.gt input[type=text]:focus,.gt-ask input:focus{border-color:var(--gu-lime)!important;box-shadow:none!important;background:#0b0b0b!important}
.b,.gt-chips button,.chips button,.steps button span{border-radius:0}
.b{border:2px solid #333;background:#161616;font:800 14px 'Barlow Condensed',sans-serif!important;letter-spacing:.06em;text-transform:uppercase}
.b:hover{border-color:var(--gu-lime);color:#fff}
.b.lime,.b.lime:hover{background:var(--gu-lime);border-color:var(--gu-lime);color:#0B0B0B;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}
.gt-chips button{border:2px solid #333;background:#161616;font-weight:800}.gt-chips button.on{border-color:var(--gu-lime);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}
.seg{border:2px solid #333}.seg button{font:800 13px 'Barlow Condensed',sans-serif;letter-spacing:.05em;text-transform:uppercase}
.tile{border:2px solid #2c2c2c;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%)}.tile.on{border-color:var(--gu-lime);background:#16200a}
.card,.gt-panel,.kpi,.key,.gt-key,.gt-tally div,.sumcard,.gt-yours{border-radius:0}
.card{border:1px solid #262626;border-top:4px solid var(--gu-lime)}
.card.flat{border:0}
/* heavy numbers everywhere */
.kpi b,.gt-key b,.gt-tally b,.two b,.gt-impact b,.sumline b,.sumline.big #k-mats,.ben .big,.save b{font-style:italic;letter-spacing:-.01em}
/* steps bar */
.steps button{font-size:18px}.steps button span{width:30px;height:30px;border-width:3px;clip-path:polygon(20% 0,100% 0,80% 100%,0 100%)}
/* details summaries */
details.more>summary{font-size:16px;color:#fff}details.more>summary:before{font-size:22px}
/* mat cards: chamfer + tag + tread */
.gt-mc{border:2px solid #2a2a2a;clip-path:polygon(0 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%);background:linear-gradient(180deg,#181a1b,#0f1011)}
.gt-mc:hover{border-color:var(--gu-lime)}
.gt-mc h3{font-style:italic;font-size:30px}
.gt-tag{clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);font-size:14px;padding:4px 10px;background:#F2D21B}
/* ownership loop: heavier ring, lit segment */
.gt-loop svg circle[r="150"][stroke="#2a2a2a"]{stroke-width:26;stroke:#1f2224}
.gt-loop .spin circle{stroke-width:8;stroke-dasharray:60 176}
.gt-steps>div{border-left-width:5px;padding:12px 12px}.gt-steps>div.on{background:#141a0b;box-shadow:inset 0 0 0 1px #3d5a14}
.gt-steps b{font-size:26px;font-style:italic}.gt-steps .n{border-width:3px;clip-path:polygon(20% 0,100% 0,80% 100%,0 100%)}
/* "Do the math": weathered steel instead of off-white */
#cost{background:var(--gu-steel)!important;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 2px,transparent 2px 7px),linear-gradient(180deg,#202326,#141618)!important;color:#fff!important;border-top:4px solid var(--gu-lime)!important}
#cost h2{color:#fff!important}#cost h2 span{color:var(--gu-lime)!important}
#cost .ghost{-webkit-text-stroke-color:rgba(166,226,46,.16)!important}
#cost table{background:#0f1113!important}#cost div[style*="border: 1px solid #2E2E2E"],#cost div[style*="border-color"]{border-color:#2e3237!important}
#cost table:not(.gt-ct) td{border-bottom-color:#2a2e32!important;color:#e6e6e6!important}
#cost tr[style*="#1E2A10"]{background:#1E2A10!important}#cost tr[style*="#1E2A10"] td{color:var(--gu-lime)!important}
#cost td[style*="F2A51B"]{color:var(--gu-amber)!important}
#cost p{color:#9a9a9a!important}
#cost tbody td.lit{background:rgba(242,165,27,.12)!important}#cost tbody tr:last-child td.lit{background:#2A3A14!important}
/* chip: cut like the buttons */
.gt-chip{border-left:0;clip-path:polygon(14px 0,100% 0,100% 100%,0 100%,0 14px);padding:14px 14px 14px 20px;background:#0B0B0B;outline:2px solid var(--gu-lime);outline-offset:-2px}
.gt-chip .n{font-size:30px;font-style:italic}.gt-chip .go{font-size:17px;padding:12px 16px}
/* hero ask: heavier */
.gt-ask{border-left:0;background:#0B0B0B;outline:3px solid var(--gu-lime);outline-offset:-3px;clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%)}
.gt-ask .q{font-size:28px;font-style:italic}.gt-ask button{font-size:19px}
/* key tiles: cut corner */
.gt-key.big{clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);border:2px solid #3d5a14}
.gt-key:before{width:6px}
/* summary sheets on the tool pages */
.ten tr.sum-row td,.sum-row td{font-style:italic}
/* why hdpe benefit cards */
.ben .card{border-top-width:6px;clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%)}
.ben .big{font-size:50px}
/* focus ring */
:focus-visible{outline:3px solid var(--gu-lime);outline-offset:2px}
#cost .adv p,#cost .adv div{color:#0B0B0B!important}

/* mobile sticky bar: two equal columns (mobonly flex override was collapsing it) */
@media (max-width:760px){.gu .mobonly.stickybar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.gu .stickybar a{white-space:nowrap}}

/* Do the Math table: three mats side by side; stacks into cards on phones */
.gt-cost{border:1px solid #2e3237;overflow-x:auto}
#cost table.gt-ct{width:100%;border-collapse:collapse;font-size:16px!important;min-width:0!important;background:#0f1113!important;table-layout:auto}
#cost table.gt-ct th{padding:12px 12px!important;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:15px!important;letter-spacing:.06em;text-transform:uppercase;color:#0B0B0B;background:var(--gu-lime);text-align:left;white-space:nowrap}
#cost table.gt-ct td{padding:14px 12px!important;border-bottom:1px solid #2a2e32!important;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:21px!important;line-height:1.05;color:#fff!important;vertical-align:middle;background:transparent!important}
#cost table.gt-ct td:nth-child(3),#cost table.gt-ct td:nth-child(4),#cost table.gt-ct td:nth-child(5){white-space:nowrap}
@media (min-width:701px){#cost table.gt-ct td:first-child{width:150px}}
#cost table.gt-ct td:first-child{font-family:'Barlow',sans-serif;font-weight:600;font-size:16px!important;color:#CFCFCF!important;white-space:normal}
#cost table.gt-ct td small{display:block;font-family:'Barlow',sans-serif;font-weight:500;font-size:12px;color:#9a9a9a;letter-spacing:0}
#cost table.gt-ct tr.t td:nth-child(3),#cost table.gt-ct tr.t td:nth-child(4),#cost table.gt-ct tr.t td:last-child{color:var(--gu-amber)!important}
#cost table.gt-ct tr.c td{color:#dcdcdc!important}
#cost table.gt-ct tr.h td{background:#1E2A10!important;color:var(--gu-lime)!important;border-bottom:0!important}
#cost table.gt-ct tr.h td:first-child{font-weight:700}
@media (max-width:700px){
 .gt-cost{overflow:visible;border:0}
 #cost table.gt-ct{min-width:0!important;display:block;background:transparent!important}
 #cost table.gt-ct thead{display:none}
 #cost table.gt-ct tbody{display:grid;gap:12px}
 #cost table.gt-ct tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid #2e3237;background:#0f1113;padding:4px 14px 12px}
 #cost table.gt-ct tr.h{border-color:var(--gu-lime);background:#1E2A10}
 #cost table.gt-ct td{display:block;border:0!important;padding:10px 4px 2px!important;font-size:20px!important;white-space:normal;background:transparent!important}
 #cost table.gt-ct td:first-child{grid-column:1/-1;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:22px!important;text-transform:uppercase;letter-spacing:.02em;color:#fff!important;border-bottom:1px solid #2e3237!important;padding:12px 4px 10px!important;margin-bottom:4px}
 #cost table.gt-ct tr.h td:first-child{color:var(--gu-lime)!important}
 #cost table.gt-ct td::before{content:attr(data-l);display:block;font-family:'Barlow',sans-serif;font-weight:600;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8C8C8C;margin-bottom:3px}
 #cost table.gt-ct td:first-child::before{display:none}
}
/* Why HDPE: recycled HDPE vs new composite */
.gt-vs{margin-top:44px}
.gt-vs-hd .h3{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-style:italic;text-transform:uppercase;font-size:clamp(28px,3.2vw,42px);line-height:.95;margin:4px 0 18px;color:#fff}
.gt-vs-hd .li{color:var(--gu-lime)}
.gt-vs-t{border:1px solid #2E2E2E;background:#0f0f0f}
.gt-vs-t .r{display:grid;grid-template-columns:170px 1fr 1fr;border-bottom:1px solid #232323}
.gt-vs-t .r:last-child{border-bottom:0}
.gt-vs-t .r>span{padding:14px 18px;font-size:15px;line-height:1.4;color:#bdbdbd;display:flex;flex-direction:column;justify-content:center}
.gt-vs-t .r>span[role=rowheader]{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:#8c8c8c;align-self:center}
.gt-vs-t .r>span.h{background:#151d0b;border-left:3px solid var(--gu-lime);color:#e6e6e6}
.gt-vs-t .r>span.h b{color:var(--gu-lime);font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:20px;letter-spacing:.01em}
.gt-vs-t .r>span.c b{color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:20px}
.gt-vs-t .r>span small{display:block;font-size:13px;color:#9a9a9a;margin-top:2px}
.gt-vs-t .r.hd>span{padding:12px 18px;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:16px;letter-spacing:.06em;text-transform:uppercase}
.gt-vs-t .r.hd>span.h{color:#0B0B0B;background:var(--gu-lime);border-left:0}
.gt-vs-t .r.hd>span.c{color:#fff;background:#1c1c1c}
@media (max-width:760px){
 .gt-vs{margin-top:32px}
 .gt-vs-t{border:0;background:transparent;display:grid;gap:10px}
 .gt-vs-t .r.hd{display:none}
 .gt-vs-t .r{grid-template-columns:1fr 1fr;border:1px solid #2E2E2E;background:#0f0f0f}
 .gt-vs-t .r>span[role=rowheader]{grid-column:1/-1;padding:10px 14px 8px;border-bottom:1px solid #232323;color:#fff;font-size:16px}
 .gt-vs-t .r>span{padding:10px 14px 12px;font-size:14px}
 .gt-vs-t .r>span.h,.gt-vs-t .r>span.c{border-left:0}
 .gt-vs-t .r>span::before{content:attr(data-l);display:block;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8c8c8c;margin-bottom:4px}
 .gt-vs-t .r>span.h::before{color:var(--gu-lime)}
 .gt-vs-t .r>span b{font-size:18px!important}
}
/* Why HDPE: composite / laminated comparison cards */
.gt-cmp3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}
.gt-cmp3>div{border:1px solid #2E2E2E;background:#111;padding:16px 18px;display:grid;gap:8px}
.gt-cmp3>div.h{border-color:var(--gu-lime);background:#161c0d}
.gt-cmp3 b{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:22px;text-transform:uppercase;letter-spacing:.02em;color:#fff}
.gt-cmp3>div.h b{color:var(--gu-lime)}
.gt-cmp3 span{font-size:15px;line-height:1.55;color:#CFCFCF}
.gt-cmp3 a{color:var(--gu-lime)}
@media (max-width:860px){.gt-cmp3{grid-template-columns:1fr}}

/* ===== Button system: one height, one type size, text never wraps =====
   Primary  = lime chamfered: .btn (lime), .cta, .gt-cta, .navcta, #gt-hgo, form submit, .qbar .cta
   Secondary = outlined: .btn with a border, .gt-b2, .ctas .b, .step .act .b, .qbar .b */
.gu a.btn,.gu button.btn,.cta,.gt-cta,.gt-b2,.ctas .b,.act .b,.qbar .b,.qbar .cta,#gt-hgo,.gu form button[type=submit],.gu form .btn[type=submit]{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;
  font-family:'Barlow Condensed',sans-serif!important;font-weight:900!important;font-size:20px!important;letter-spacing:.06em;text-transform:uppercase;line-height:1!important;
  min-height:54px!important;padding:0 28px!important;white-space:nowrap;text-decoration:none;box-sizing:border-box;cursor:pointer}
/* outlined secondaries get the same height and a visible frame */
.gu a.btn[style*="border: 2px"],.gu button.btn[style*="border: 2px"],.gt-b2,.ctas .b,.act .b,.qbar .b{
  background:transparent!important;border:2px solid #e6e6e6!important;color:#fff!important;padding:0 24px!important;clip-path:none}
.ctas .b:hover,.act .b:hover,.qbar .b:hover,.gt-b2:hover{border-color:var(--gu-lime)!important;color:var(--gu-lime)!important}
/* lime primaries all share the chamfer */
.cta,.gt-cta,.qbar .cta,#gt-hgo,.gu form button[type=submit]{clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%)}
/* small helpers stay small on purpose */
.b.sm,.zoomer .b,.adds .b,details.menu2 .b,.mob .b{min-height:40px!important;padding:8px 12px!important;font-size:14px!important;display:inline-flex!important;align-items:center;justify-content:center}
.hd .cta,.navcta{min-height:46px!important;padding:0 22px!important;font-size:18px!important}
#gt-hgo{min-height:52px!important;padding:0 22px!important}
/* text links next to buttons line up with the button's centre */
.gt-l,.gt-lnk,.lnk{align-self:center}
/* size chips: comfortable tap targets */
.gt-chips button{min-height:40px;padding:0 14px;display:inline-flex;align-items:center}
/* the button system must not override the header's own hide rule on tablets and phones */
@media (max-width:1060px){.hd .cta{display:none!important}}
@media (max-width:760px){.gu a.btn.navcta{display:none!important}}
