:root{--ink:#000000;--green:#000000;--lime:#fb6306;--line:#e0e0e0;--paper:#f8f4f2;font-family:'Barlow',Arial,sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.55}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a94203;outline-offset:4px}.draftbar{padding:7px 4vw;background:var(--green);color:#fff;font-size:.75rem;letter-spacing:.08em;display:flex;justify-content:space-between}.draftbar span{letter-spacing:0}.header{display:flex;align-items:center;justify-content:space-between;padding:22px 4vw;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;line-height:1}.brand>b{font-family:Barlow,Arial;font-size:2.75rem;letter-spacing:-.1em}.brand>b span{color:#fb6306}.brand>div{font-weight:800;letter-spacing:.13em}.brand small{display:block;font-size:.6rem;letter-spacing:.05em;margin-top:8px}nav{display:flex;gap:30px;align-items:center;font-size:.9rem;font-weight:600}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:3px;font-weight:700;border:0;gap:12px}.dark{background:var(--green);color:white}.lime,button.primary{background:var(--lime);color:var(--ink)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--green);color:white}.herocopy{padding:70px 5vw 35px 4vw;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.15em;margin:0 0 22px}h1,h2,h3{font-family:Barlow,Arial,sans-serif;line-height:1.12;font-weight:600;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,4.5vw,4.5rem);margin:0 0 28px}h1 em{font-style:normal;color:var(--lime)}.herocopy>p:not(.eyebrow){max-width:450px;color:#e0e0e0;font-size:1.05rem}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:20px}.actions a:not(.button){font-size:.9rem}.heronote{font-size:.8rem;color:#bfbfbf;margin-top:auto;padding-top:50px}.heroimage{position:relative;min-height:430px}.heroimage img{width:100%;height:100%;object-fit:cover;position:absolute}.heroimage span{position:absolute;bottom:24px;left:24px;background:#fff;padding:12px 18px;font-size:.7rem;color:var(--ink);letter-spacing:.12em}.section{padding:72px 4vw}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.sectionhead h2,h2{font-size:clamp(2rem,3vw,3rem);margin:0}.sectionhead p{color:#646464;max-width:340px}.sectionhead .eyebrow{margin-bottom:12px}.categorygrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 22px}.categorycard{display:block}.categorycard img{width:100%;aspect-ratio:1.55;object-fit:cover;background:var(--paper)}.categorycard h3{font-size:1.35rem;margin:16px 0 8px;letter-spacing:-.03em;display:flex;justify-content:space-between}.categorycard p{color:#646464;margin:0;font-size:.95rem}.designbanner{margin:0 4vw 70px;padding:48px;background:var(--green);color:white;display:grid;grid-template-columns:1fr 1fr;gap:50px}.designbanner p:not(.eyebrow){max-width:390px;color:#e0e0e0}.bannerlist{display:flex;flex-direction:column;justify-content:center}.bannerlist a{border-bottom:1px solid #646464;padding:26px 0;font-size:1.4rem}.bannerlist span{color:var(--lime);margin-right:26px;font-size:.8rem}footer{padding:42px 4vw;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);font-size:.9rem}footer p{color:#646464}.pagehead{padding:45px 4vw 25px;background:var(--paper)}.pagehead h1{font-size:3rem;margin:12px 0}.pagehead p{max-width:700px;color:#646464}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}.tabs button,.tabs a{border:1px solid var(--line);padding:11px 17px;background:white;border-radius:3px;font-size:.9rem}.tabs .active{background:var(--green);color:#fff;border-color:var(--green)}.toolbar{display:flex;gap:20px;align-items:end;margin-bottom:30px}.toolbar label{max-width:440px;flex:1}.toolbar p{margin:0 0 10px;color:#646464}label{display:block;font-size:.875rem;font-weight:600}input,select,textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #bfbfbf;border-radius:3px;background:#fff;color:var(--ink)}textarea{min-height:100px;resize:vertical}.productgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product{border:1px solid var(--line);display:flex;flex-direction:column}.product img{width:100%;aspect-ratio:1.65;object-fit:cover}.product .body{padding:22px;display:flex;flex-direction:column;flex:1}.product h3{font-size:1.4rem;margin:10px 0}.product p{color:#646464;font-size:.95rem}.product .button{margin-top:auto}.tag{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#646464}.calculator{padding:30px 4vw 60px}.calcgrid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.panel{border:1px solid var(--line);padding:28px;background:white;border-radius:4px}.panel h2{font-size:1.6rem;margin-bottom:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fields .full{grid-column:1/-1}.hint{font-size:.875rem;color:#646464}.resultpanel{background:var(--paper);align-self:start}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.metric b{display:block;font-size:1.8rem;letter-spacing:-.04em}.metric span{font-size:.875rem;color:#646464}.diagram{width:100%;height:auto;background:white;border:1px solid var(--line);margin-top:12px}.summary{padding:20px 0;border-top:1px solid var(--line)}.summary p{margin:8px 0}.notice{background:#fff3eb;padding:14px 18px;border-left:3px solid #fb6306;font-size:.875rem;margin:18px 0}.error{color:#a72d22;font-weight:600}.suppliergrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.suppliergrid h2{font-size:1.7rem}.suppliergrid .panel p{color:#646464}.quotegrid{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;max-width:1100px}.plainlink{display:inline-block;text-decoration:underline;margin-top:14px}.empty{padding:40px;background:var(--paper)}@media(max-width:950px){nav{gap:15px}.hero{min-height:530px}.herocopy{padding-top:45px}.categorygrid,.productgrid{grid-template-columns:repeat(2,1fr)}.calcgrid{grid-template-columns:1fr}.heroimage{min-height:380px}footer{flex-wrap:wrap}}@media(max-width:650px){.header{align-items:flex-start;flex-direction:column;padding:18px 5vw}nav{width:100%;flex-wrap:wrap;gap:14px;font-size:.875rem}nav .button{padding:9px 12px}.draftbar span{display:none}.hero{grid-template-columns:1fr}.herocopy{padding:40px 5vw}.heronote{padding-top:25px}.heroimage{min-height:310px}.section{padding:45px 5vw}.sectionhead{display:block}.categorygrid,.productgrid,.suppliergrid,.quotegrid{grid-template-columns:1fr}.designbanner{margin:0 5vw 40px;padding:28px;grid-template-columns:1fr;gap:20px}.sectionhead p{max-width:none}.fields{grid-template-columns:1fr}.panel{padding:20px}.pagehead h1{font-size:2.4rem}.toolbar{align-items:stretch;flex-direction:column}.metrics{gap:8px}.metric b{font-size:1.4rem}footer{padding:30px 5vw}.brand small{font-size:.625rem}}

/* Original GA Fencing logo and colours from gafencing.com.au. */
.brand img{width:106px;height:106px;object-fit:contain;display:block}.header{padding-top:8px;padding-bottom:8px}.button.lime,button.primary{color:#000}.button.dark{background:#000;color:#fff}.header nav .button{background:#fb6306;color:#000}.hero .eyebrow,.bannerlist span{color:#fb6306}.brand{flex-shrink:0}.header nav{font-size:1rem}footer .brand img{width:100px;height:100px}@media(max-width:650px){.header{flex-direction:row;align-items:center;flex-wrap:wrap}.header .brand img{width:84px;height:84px}.header nav{font-size:.9rem}}
/* Catalogue and product details */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cataloghead{padding:44px 4vw 38px;background:#f8f4f2;display:flex;justify-content:space-between;gap:30px;align-items:center;border-bottom:1px solid #e0e0e0}.cataloghead h1{font-size:clamp(2.5rem,4vw,3.5rem);margin:0 0 14px}.cataloghead p:not(.eyebrow){max-width:700px;margin:0;color:#646464}.catalogstat{border-left:2px solid #fb6306;padding-left:28px;min-width:180px}.catalogstat strong{display:block;font-size:3rem;line-height:1}.catalogstat span{font-size:.875rem}.catalogshell{display:grid;grid-template-columns:235px minmax(0,1fr);gap:34px;padding:34px 4vw 60px}.catalogaside{align-self:start}.catalogaside h2{font-size:1.1rem;letter-spacing:0;margin-bottom:20px}.sidenav{display:flex;flex-direction:column;gap:0;align-items:stretch}.sidenav a{padding:12px 10px;display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #e0e0e0;font-weight:500}.sidenav a span{color:#646464;font-size:.875rem}.sidenav .selected{background:#fff3eb;box-shadow:inset 3px 0 #fb6306;font-weight:700}.filterfields{display:grid;gap:18px;margin-top:30px}.resetfilters{background:transparent;border:0;text-align:left;text-decoration:underline;padding:0;font-size:.9rem}.catalogtoolbar{display:flex;gap:15px;align-items:end;scroll-margin-top:20px}.catalogtoolbar .searchlabel{flex:1}.catalogtoolbar input,.catalogtoolbar select{margin:0}.catalogtoolbar label{font-size:.875rem}.catalogtoolbar label:not(.searchlabel){min-width:140px}.resultline{display:flex;justify-content:space-between;gap:20px;color:#646464;font-size:.875rem;align-items:center;margin:8px 0 18px}.resultline span{font-size:.8rem}.catalogresults .productgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.catalogproduct{border:1px solid #e0e0e0;min-width:0}.productfigure{margin:0;position:relative;background:#f8f8f8}.productfigure img{width:100%;height:205px;object-fit:contain;padding:10px;background:#fff;display:block;aspect-ratio:auto}.productfigure figcaption{padding:6px 10px;font-size:.75rem;color:#646464;border-top:1px solid #eee;white-space:normal}.catalogproduct .body{padding:20px}.catalogproduct .body h3{font-size:1.25rem;line-height:1.25}.catalogproduct .body p{font-size:1rem}.productmeta{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:8px}.productmeta span,.detailchips span{background:#f8f4f2;padding:5px 8px;font-size:.8rem}.productlink{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:14px;display:flex;justify-content:space-between;font-weight:600;font-size:.95rem}.profiletile{min-height:238px;background:#f8f4f2;padding:26px;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid #e0e0e0;gap:9px}.profiletile strong{font-size:1.45rem;font-weight:500;line-height:1.2}.profiletile>span:not(.tag),.profiletile small{font-size:.8rem;color:#646464}.profiletile .tag{color:#a94203}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:28px;gap:15px}.pagination button{padding:11px 20px;background:white;border:1px solid #aaa;border-radius:2px}.pagination button:disabled{opacity:.4;cursor:default}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;padding:24px 4vw;font-size:.875rem;color:#646464}.breadcrumbs a{text-decoration:underline}.productdetail{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;padding:15px 4vw 55px}.productmedia{min-width:0}.productmedia .large img{height:480px;padding:25px}.profiletile.large{min-height:440px;padding:50px;gap:20px}.profiletile.large strong{font-size:3rem}.productintro h1{font-size:clamp(2rem,3.5vw,3.3rem);margin-bottom:22px}.detaildescription{font-size:1.125rem;color:#4d4d4d}.detailchips{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.productintro h2{font-size:1.3rem;letter-spacing:0;margin:24px 0 12px}.features{padding-left:20px;margin:0 0 28px}.features li{padding:5px 0}.detailbody{display:grid;grid-template-columns:1.6fr 1fr;gap:5vw;padding:45px 4vw;background:#f8f4f2}.detailbody h2{font-size:1.7rem;margin:0 0 22px}.optiongrid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:35px}.optiongrid>div{background:#fff;padding:20px}.optiongrid span{font-size:.8rem;color:#a94203}.optiongrid h3{font-size:1.125rem;margin:8px 0;letter-spacing:0}.tablewrap{overflow-x:auto;margin-bottom:30px}table{border-collapse:collapse;width:100%;background:#fff;font-size:1rem}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid #e0e0e0}th{font-weight:600}.detailnotes{border-left:1px solid #cfc7c2;padding-left:32px}.detailnotes details{margin-top:28px;font-size:1rem}.detailnotes summary{cursor:pointer;font-weight:600}.referencecodes{display:flex;flex-wrap:wrap;gap:8px}.referencecodes a{padding:10px 14px;background:white;border:1px solid #ddd;font-size:.9rem}.related .productgrid{grid-template-columns:repeat(3,1fr)}@media(max-width:1150px){.catalogresults .productgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogshell{grid-template-columns:210px minmax(0,1fr);gap:22px}.resultline span{display:none}}@media(max-width:750px){.cataloghead{padding:30px 5vw}.catalogstat{display:none}.catalogshell{display:block;padding:24px 5vw 40px}.catalogaside{margin-bottom:25px}.sidenav{display:grid;grid-template-columns:repeat(2,1fr)}.filterfields{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.catalogtoolbar{flex-wrap:wrap}.catalogtoolbar .searchlabel{flex-basis:100%}.catalogtoolbar label:not(.searchlabel){width:100%}.productdetail,.detailbody{grid-template-columns:1fr;padding-left:5vw;padding-right:5vw}.productmedia .large img{height:340px}.detailnotes{border-left:0;border-top:1px solid #cfc7c2;padding:25px 0 0}.profiletile.large{min-height:250px}.related .productgrid{grid-template-columns:1fr}.catalogresults .productgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.productfigure img{height:175px}.catalogproduct .body{padding:15px}.catalogproduct .body h3{font-size:1.15rem}.catalogproduct .body p{font-size:.95rem}.profiletile{padding:18px;min-height:208px}}@media(max-width:450px){.catalogresults .productgrid{grid-template-columns:1fr}.filterfields{grid-template-columns:1fr}.productfigure img{height:240px}.optiongrid{grid-template-columns:1fr}.profiletile.large strong{font-size:2rem}}
.categorytext{aspect-ratio:1.55;background:#f8f4f2;border-top:3px solid #fb6306;padding:28px;display:flex;flex-direction:column;justify-content:center;gap:15px}.categorytext span{font-size:.8rem;letter-spacing:.15em}.categorytext strong{font-size:1.6rem;font-weight:500}.categorytext small{font-size:.9rem}

/* Product image galleries */
.productgallery{min-width:0}.productfigure figcaption{display:flex;justify-content:space-between;gap:12px}.productfigure figcaption span{white-space:nowrap}.productfigure.large>a{display:block;background:#fff}.productfigure.large img{width:100%;height:auto;max-height:620px;object-fit:contain}.gallerycredit{font-size:.875rem;color:#646464;line-height:1.5;margin:12px 0}.gallerythumbs{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px}.gallerythumbs button{flex:0 0 92px;height:78px;padding:4px;border:2px solid #ddd;background:#fff;cursor:pointer}.gallerythumbs button[aria-pressed="true"]{border-color:#fb6306}.gallerythumbs button:focus-visible{outline:3px solid #000;outline-offset:2px}.gallerythumbs img{width:100%;height:100%;object-fit:contain}.gallerycredit a{text-decoration:underline;text-underline-offset:3px}

.catalogproduct .productfigure img{object-fit:contain;background:#fff}

.loadplan,.filebutton,label.file{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;border:1px solid currentColor;border-radius:6px;cursor:pointer;font:inherit;box-sizing:border-box;}
.loadplan input[type=file],.filebutton input[type=file],label.file input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;display:block;}
.loadplan:focus-within,.filebutton:focus-within,label.file:focus-within{outline:3px solid #148b94;outline-offset:3px;}
