:root{--green:#78ae25;--ink:#151613;--paper:#f2f1ec;--muted:#73766f;--line:#d5d7cf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:-999px}.skip:focus{left:20px;top:20px;z-index:10;background:#fff;padding:10px}.header{position:absolute;z-index:3;top:0;left:0;width:100%;height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1112px)/2));color:#fff}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:44px;color:var(--green)}.brand span{display:grid;line-height:.9}.brand strong{font:800 23px/1 Manrope,sans-serif;letter-spacing:-1.1px}.brand em{font:700 15px/1.1 Manrope,sans-serif;color:var(--green);font-style:normal;letter-spacing:-.4px}.nav{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:600}.nav a:not(.nav-call){opacity:.88}.nav a:hover{color:var(--green)}.nav-call{border:1px solid #ffffff66;padding:10px 17px;border-radius:2px}.menu-button{display:none}.hero{min-height:690px;position:relative;overflow:hidden;color:#fff;display:grid;align-items:center}.hero-photo{position:absolute;inset:0;background:url('assets/quarry.jpg') center/cover no-repeat;filter:saturate(.75) contrast(1.03)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,11,7,.91) 0%,rgba(9,11,7,.75) 36%,rgba(9,11,7,.14) 76%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 40%)}.hero-arc{position:absolute;width:950px;height:950px;border-radius:50%;border:4px solid var(--green);opacity:.75;left:-450px;bottom:-680px}.arc-two{width:980px;height:980px;border-color:#a3cf59;left:-473px;bottom:-704px}.hero-content{position:relative;padding-top:70px}.eyebrow{margin:0 0 15px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;font-size:11px;color:#e8e9e2}.eyebrow.green{color:#668f23}.hero h1,.intro h2,.section h2,.contact h2{font-family:Manrope,sans-serif;letter-spacing:-3px;margin:0;font-weight:800}.hero h1{font-size:clamp(49px,7vw,88px);line-height:.98;max-width:680px}.hero h1 span,.contact h2 span{color:var(--green)}.hero-copy{font-size:18px;line-height:1.6;max-width:500px;color:#e7e8e1;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;gap:25px;align-items:center;padding:15px 20px;border-radius:2px;font-size:14px;font-weight:700;transition:.2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:#10140b}.button-primary span,.button-dark span{font-size:21px;line-height:12px}.button-ghost{border:1px solid #ffffff66}.button-dark{background:var(--ink);color:#fff;margin-top:19px}.hero-bottom{position:absolute;bottom:29px;left:0;right:0;display:flex;gap:15px;text-transform:uppercase;letter-spacing:1.4px;font-size:10px;color:#ddd}.section{padding:112px 0}.intro-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:90px;align-items:end}.intro h2,.section h2{font-size:clamp(36px,4.5vw,58px);line-height:1.05;max-width:650px}.intro p:not(.eyebrow),.materials-copy>p:not(.eyebrow){font-size:17px;color:#5e625c;line-height:1.65;margin:0 0 24px}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid var(--green);padding-bottom:7px}.text-link span{color:var(--green);padding-left:8px}.services{background:#dedfd8}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:42px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bfc1b8}.service-grid article{padding:28px 30px 18px 0;border-right:1px solid #bfc1b8;margin-right:28px}.service-grid article:last-child{border:0}.number{font-size:12px;color:var(--green);font-weight:700}.service-grid h3{font:800 25px/1.1 Manrope,sans-serif;letter-spacing:-1px;margin:45px 0 14px}.service-grid p{font-size:15px;line-height:1.55;color:#62655f;margin:0;max-width:280px}.materials{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px}.material-list{border-top:1px solid var(--line)}.material-list div{padding:19px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:170px 1fr;gap:16px;font-size:14px}.material-list b{font-size:15px}.material-list span{color:#696d65;line-height:1.45}.contact{background:var(--ink);color:#fff;padding:94px 0;position:relative;overflow:hidden}.contact:after{content:"";position:absolute;width:650px;height:650px;border:3px solid var(--green);border-radius:50%;right:-440px;top:-260px;opacity:.8}.contact-inner{display:flex;justify-content:space-between;gap:40px;position:relative;z-index:1}.contact h2{font-size:clamp(38px,5vw,64px);line-height:1.03}.contact-details{display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding-top:30px}.big-phone{font:800 clamp(28px,3vw,40px)/1 Manrope,sans-serif;letter-spacing:-1.7px;color:var(--green)}.contact-row{font-size:15px;line-height:1.5;color:#e1e3dd}.contact-row span{color:var(--green);padding-left:11px}footer{background:#0c0d0a;color:#a9ada3;padding:27px 0}footer .container{display:flex;align-items:center;justify-content:space-between;gap:20px}footer p{font-size:12px;margin:0}.footer-brand .brand-mark{width:31px}.footer-brand strong{font-size:18px}.footer-brand em{font-size:12px}
@media(max-width:720px){.header{height:74px;padding:0 20px}.brand-mark{width:35px}.brand strong{font-size:19px}.brand em{font-size:12px}.menu-button{display:block;background:none;border:0;color:#fff;font:700 13px "DM Sans";text-transform:uppercase;letter-spacing:1px}.nav{display:none;position:absolute;top:74px;left:0;width:100%;padding:22px;background:#151613;flex-direction:column;align-items:flex-start;gap:20px}.nav.open{display:flex}.hero{min-height:650px}.hero-photo{background-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(9,11,7,.9),rgba(9,11,7,.53)),linear-gradient(0deg,rgba(0,0,0,.45),transparent 45%)}.container{width:min(100% - 40px,1160px)}.hero-content{padding-top:45px}.hero h1{letter-spacing:-2.4px}.hero-copy{font-size:16px;max-width:400px}.hero-bottom{display:none}.section{padding:72px 0}.intro-grid,.materials{grid-template-columns:1fr;gap:30px}.intro h2,.section h2{letter-spacing:-2px}.section-title{display:block;margin-bottom:26px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid #bfc1b8;margin:0;padding:23px 0}.service-grid h3{margin:24px 0 9px}.material-list div{grid-template-columns:1fr;gap:5px}.contact{padding:70px 0}.contact-inner{display:block}.contact-details{padding-top:32px}.contact:after{right:-510px}.contact h2{letter-spacing:-2px}footer .container{align-items:flex-start;flex-direction:column}.button{padding:14px 16px}.brand img{width:175px}}

.brand{gap:0}.brand img{display:block;width:230px;height:auto}.footer-brand img{width:168px}
@media(max-width:720px){.brand img{width:175px}.footer-brand img{width:150px}}

/* Business-card colour system and finishing details */
:root{--green:#44831b;--green-bright:#5f9e26;--ink:#05050f;--paper:#f1efe8;--muted:#5e6258;--line:#cecfc5}.header{border-bottom:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(5,5,15,.58),transparent)}.nav-call{background:rgba(5,5,15,.35);border-color:rgba(255,255,255,.32)}.nav-call:hover{background:var(--green);border-color:var(--green);color:#fff!important}.hero-photo{filter:saturate(.66) contrast(1.08) brightness(.86)}.hero-shade{background:linear-gradient(90deg,rgba(5,5,15,.96) 0%,rgba(5,5,15,.77) 39%,rgba(5,5,15,.18) 78%),linear-gradient(0deg,rgba(5,5,15,.56),transparent 42%)}.hero h1{color:#f7f8f5}.hero h1 span,.contact h2 span{color:#6aa72d}.eyebrow.green{color:#4b871d}.button-primary{background:#4b8a1e;color:#fff;box-shadow:0 8px 20px rgba(50,100,15,.2)}.button-primary:hover{background:#5b9f28}.button-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}.intro,.materials{position:relative}.intro:before,.materials:before{content:"";display:block;width:48px;height:4px;background:var(--green);margin-bottom:27px}.services{background:#e1e0d8;border-top:1px solid #d1d1c8;border-bottom:1px solid #d1d1c8}.number{color:#4b871d}.material-list b{color:#171910}.contact{background:#05050f}.contact:after{border-color:#4b8a1e}.big-phone{color:#6aa72d}footer{background:#03030a;color:#aeb2a8;border-top:1px solid rgba(255,255,255,.1)}
