.has-tab-bar .hero{min-height:0}.has-tab-bar .hero-plain .hero-copy{padding-top:calc(5rem + env(safe-area-inset-top));padding-bottom:var(--space-5)}.has-tab-bar .page{padding-top:calc(4.75rem + env(safe-area-inset-top));padding-bottom:calc(5.75rem + env(safe-area-inset-bottom))}.has-tab-bar .band{padding-block:var(--space-6)}.has-tab-bar .prose{gap:var(--space-4);margin-top:var(--space-4)}.has-tab-bar .svc-hero{padding:calc(5.25rem + env(safe-area-inset-top)) 0 var(--space-6)}.has-tab-bar .svc-hero h1{font-size:clamp(var(--text-5), 8vw, var(--text-6))}.has-tab-bar .svc-stages{padding:var(--space-6) 0 var(--space-3)}.has-tab-bar .svc-stages h2,.has-tab-bar .svc-close h2{font-size:clamp(var(--text-4), 4vw, var(--text-5))}.has-tab-bar .svc-stages ol{gap:var(--space-4);margin-top:var(--space-4)}.has-tab-bar .svc-stage-line{margin:.2rem 0 0}.has-tab-bar .contact-grid{gap:var(--space-5)}.has-tab-bar .contact-intro{grid-column:1/-1}.contact-page,.contact-form-column{width:min(40rem,100% - 2.5rem);margin-inline:auto}.contact-layout{padding-bottom:2.5rem}.contact-board{width:min(64rem,100% - 2.5rem);min-height:22rem;margin:1.75rem auto 0}.contact-board-grid{gap:1.25rem;display:grid}.contact-board .location-card{margin-top:1.25rem}.location-card{border-radius:var(--radius-group);background:var(--color-ink-deep);border:1px solid #be8b3180;flex-direction:column;display:flex;overflow:hidden}.location-map{min-height:11.5rem;position:relative}.location-art{width:100%;height:100%;position:absolute;inset:0}.location-pin-wrap{width:1.25rem;height:1.25rem;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.location-pin{background:var(--color-accent-container);border-radius:50% 50% 50% 0;width:.95rem;height:.95rem;position:absolute;top:0;left:.15rem;transform:rotate(-45deg);box-shadow:0 .4rem .8rem #00000059}.location-pin-pulse{border:2px solid var(--color-accent-container);border-radius:50%;animation:2.6s ease-out infinite location-pulse;position:absolute;inset:-.45rem}@keyframes location-pulse{0%{opacity:.7;transform:scale(.65)}to{opacity:0;transform:scale(1.7)}}.location-glass{color:var(--color-app);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#262c32eb;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem 1.05rem 1.1rem;display:flex}.location-title,.location-street,.location-plus{margin:0}.location-visit{font-family:var(--font-display);font-size:var(--text-4);margin:0;font-weight:500;line-height:1.1}.location-hours{color:var(--color-on-dark-soft);margin:0}.location-title{color:var(--color-accent-container);font-size:var(--text-3);align-items:center;gap:.45rem;font-weight:650;line-height:1.3;display:flex}.location-title-pin{background:var(--color-accent);border-radius:50% 50% 50% 0;flex:none;width:.7rem;height:.7rem;transform:rotate(-45deg)}.location-street{color:var(--color-app);line-height:1.45}.location-plus{color:var(--color-on-dark-soft);font-size:var(--text-1)}.location-actions{flex-wrap:wrap;gap:.5rem;margin-top:.45rem;display:flex}.location-open,.location-directions{border-radius:var(--radius-group);justify-content:center;align-items:center;min-height:2.75rem;padding:0 .9rem;font-weight:650;text-decoration:none;display:inline-flex}.location-open{background:var(--color-surface);color:var(--color-primary)}.location-directions{box-shadow:inset 0 0 0 1px var(--color-on-primary);color:var(--color-on-primary)}.location-card .location-open:hover,.site-footer .location-open:hover{background:var(--color-app);color:var(--color-primary)}.location-card .location-directions:hover,.site-footer .location-directions:hover{color:var(--color-on-primary);background:0 0}.location-open:focus-visible,.location-directions:focus-visible{outline:2px solid var(--color-accent-container);outline-offset:3px}.footer-location{padding-bottom:var(--space-4)}.footer-location .location-card{margin-top:0}.location-card.is-compact .location-map{min-height:8.5rem}@media (width>=720px){.location-card{grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr);min-height:17rem;display:grid}.location-map{min-height:17rem}.location-glass{background:#262c32c7;justify-content:center}.location-card.is-compact{grid-template-columns:12.5rem minmax(0,1fr);min-height:0}.location-card.is-compact .location-map{min-height:9.5rem}.location-card.is-compact .location-glass{padding:.9rem 1rem}}@media (prefers-reduced-motion:reduce){.location-pin-pulse{opacity:.45;animation:none}}.contact-reach h2,.visit-card h2{font-family:var(--font-display);font-size:var(--text-4);margin:0 0 .65rem;font-weight:500;line-height:1.1}.phone-line{flex-wrap:wrap;align-items:center;gap:.45rem .65rem;margin-bottom:.65rem;display:flex}.phone-number{min-height:44px;color:var(--color-primary);font-size:var(--text-4);letter-spacing:-.01em;align-items:center;font-weight:650;text-decoration:none;display:inline-flex}.phone-actions{flex-wrap:wrap;gap:.4rem;display:flex}.phone-action{border:1px solid var(--color-primary);border-radius:var(--radius-group);background:var(--color-primary);min-width:44px;min-height:44px;color:var(--color-surface);font-size:var(--text-2);justify-content:center;align-items:center;gap:.4rem;padding:0 .85rem;font-weight:650;text-decoration:none;display:inline-flex}.phone-action-chat{background:var(--color-surface);color:var(--color-primary);border-color:var(--color-primary)}.phone-action:focus-visible,.phone-number:focus-visible,.contact-email:focus-visible,.visit-map:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.contact-email{min-height:44px;color:var(--color-accent-strong);font-size:var(--text-2);text-underline-offset:.18em;align-items:center;gap:.45rem;text-decoration:underline;display:inline-flex}.contact-clock,.contact-pin{color:var(--color-accent);flex:none}.visit-hours,.visit-address,.footer-hours,.footer-visit>p,.footer-visit>a,.footer-email{align-items:flex-start;gap:.45rem;display:flex}.visit-card{border:1px solid var(--color-accent);border-radius:var(--radius-group);background:var(--color-surface);padding:.9rem 1rem 1rem}.visit-card p{margin:0}.visit-hours,.visit-address,.visit-postal{line-height:1.45}.visit-address,.visit-postal{margin-top:.35rem}.visit-plus{color:var(--color-muted);font-size:var(--text-1);margin-top:.45rem}.visit-map{align-items:center;gap:.45rem;margin-top:.75rem;display:inline-flex}.contact-area{color:var(--color-secondary);margin:.9rem 0 0}.cert-line{align-items:center;gap:var(--space-2) var(--space-4);margin:var(--space-3) 0 0;color:var(--color-secondary);flex-wrap:wrap;line-height:1.4;display:flex}.cert-line .agpo-link{color:var(--color-primary)}.nca-mark{flex-direction:row;align-items:center;gap:.65rem;max-width:22rem;margin:0;display:flex}.nca-mark figcaption{max-width:11rem;color:var(--color-text);font-size:var(--text-1);margin:0;font-weight:650;line-height:1.35}.site-footer .nca-mark figcaption{color:var(--color-app)}.nca-tile{box-sizing:border-box;border-radius:var(--radius-control);background:var(--color-surface);max-width:7.25rem;min-height:2.75rem;box-shadow:inset 0 0 0 1px var(--color-border);flex:none;justify-content:center;align-items:center;padding:.35rem .5rem;line-height:0;display:inline-flex}.nca-logo{object-fit:contain;width:auto;max-width:100px;height:auto;max-height:40px;display:block}.register-row{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.register-copy{flex-wrap:wrap;flex:16rem;align-items:baseline;gap:.2rem .75rem;min-width:min(16rem,100%);margin:0;line-height:1.35;display:flex}.register-line{font-weight:650}.register-categories{font-size:var(--text-2)}.agpo-link{align-items:center;gap:var(--space-2);min-height:2.75rem;color:inherit;font-weight:650;text-decoration:none;display:inline-flex}.agpo-link svg{flex:none}.trust-strip{background:var(--color-surface);border-top:2px solid var(--color-accent);border-bottom:1px solid var(--color-border);padding-block:var(--space-3);color:var(--color-text)}.trust-strip .agpo-link{color:var(--color-primary)}.footer-register{border-top:1px solid #ffffff24}.footer-register .register-row{padding-block:var(--space-3)}.footer-register .register-copy,.footer-register .register-line{color:var(--color-app)}.footer-register .register-categories{color:var(--color-on-dark-soft)}.footer-register .agpo-link{color:var(--color-accent-container)}.footer-agpo{box-sizing:border-box;border-radius:var(--radius-control);background:var(--color-surface);flex:none;justify-content:center;align-items:center;max-width:9.5rem;min-height:2.75rem;padding:.3rem .45rem;line-height:0;display:inline-flex}.footer-agpo img{width:auto;max-width:100%;height:auto;max-height:2.5rem;display:block}.registrations{justify-items:start;gap:var(--space-3);width:fit-content;max-width:100%;margin-top:var(--space-6);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-group);background:var(--color-surface);display:grid}.registrations h2,.registrations .register-line{margin:0}.registrations ul{margin:0;padding-left:1.15rem}.registrations li{line-height:1.45}.enquiry-privacy-note{color:var(--color-muted);font-size:var(--text-1);margin:.35rem 0 0;line-height:1.4}.enquiry-reach-line{flex-wrap:wrap;align-items:center;gap:.35rem .75rem;margin:.35rem 0 0;display:flex}.enquiry-reach-line a{align-items:center;gap:.35rem;min-height:44px;font-weight:650;display:inline-flex}@media (width>=860px){.contact-board-grid{grid-template-columns:minmax(0,1.05fr) minmax(16rem,.95fr);align-items:start;gap:1.5rem}}.site-footer .phone-number{color:var(--color-app);font-size:var(--text-2);font-variant-numeric:tabular-nums}.site-footer .footer-col .phone-action,.site-footer .footer-col .phone-action-chat{background:var(--color-surface);color:var(--color-primary);border-color:#0000}.site-footer .footer-col .phone-action:hover,.site-footer .footer-col .phone-action-chat:hover{background:var(--color-app);color:var(--color-primary)}.site-footer .phone-line{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;margin:0;display:flex}.site-footer .phone-actions{flex-wrap:nowrap}.footer-phones{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.footer-meta,.footer-visit>p.footer-meta{column-gap:var(--space-2);width:100%;color:var(--color-on-dark-soft);text-wrap:pretty;grid-template-columns:1.375rem minmax(0,1fr);align-items:start;margin:0;line-height:1.4;display:grid}.footer-meta svg{margin-top:.1rem}.footer-email span{overflow-wrap:anywhere}.footer-visit{gap:var(--space-3);width:100%;padding-top:var(--space-3);border-top:1px solid #ffffff24;flex-direction:column;margin:0;display:flex}.footer-visit p{margin:0}.footer-place{column-gap:var(--space-2);row-gap:var(--space-1);grid-template-columns:1.375rem minmax(0,1fr);align-items:start;width:100%;display:grid}.footer-place>.contact-pin{margin-top:.1rem}.footer-place-text{color:var(--color-on-dark-soft);text-wrap:pretty;margin:0;line-height:1.4}.footer-plus{color:var(--color-on-dark-soft);font-size:var(--text-1);margin:0;line-height:1.4}.footer-place.has-pin .footer-plus{grid-column:2}.footer-place:not(.has-pin) .footer-plus{grid-column:1/-1}.contact-call{width:100%;height:auto;margin:var(--space-4) 0;text-align:center;white-space:normal;justify-content:center;align-items:center;padding-block:.75rem;display:flex}.contact-details{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.contact-lines{gap:var(--space-2);flex-direction:column;display:flex}.contact-lines p,.contact-phone-row{margin:0}.contact-phone-row{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.contact-tap{align-items:center;min-height:2.75rem;display:inline-flex}.has-tab-bar .site-footer{border-top:2px solid var(--color-accent);background:var(--color-primary);color:var(--color-app);padding-top:0;padding-bottom:0}.footer-main{gap:var(--space-4);padding-block:var(--space-5) var(--space-4);flex-direction:column;display:flex}.footer-navs{flex-direction:column;min-width:0;display:flex}.footer-brand,.footer-contact,.footer-group{min-width:0}.footer-lockup{align-items:center;gap:var(--space-3);min-height:2.75rem;color:inherit;font-weight:650;line-height:1.25;text-decoration:none;display:flex}.footer-lockup>span:last-child{min-width:0}.footer-mark{border-radius:var(--radius-control);background:var(--color-surface);flex:none;place-items:center;width:2.75rem;height:2.75rem;display:grid}.footer-mark .mark{width:auto;height:2.15rem}.footer-brand p{max-width:28rem;margin:var(--space-3) 0 0;color:var(--color-on-dark-soft);text-wrap:pretty;line-height:1.45}.footer-col{align-items:flex-start;gap:var(--space-1);flex-direction:column;width:100%;display:flex}.footer-contact{gap:var(--space-3)}.footer-contact>.footer-label{margin:0}.footer-navs .footer-col{gap:0}.footer-label{margin:0 0 var(--space-1);color:var(--color-accent-container);font-size:var(--text-1);font-weight:650;line-height:1.4}.footer-disclosure{display:none}.footer-chevron{border-bottom:2px solid;border-right:2px solid;flex:none;width:.55rem;height:.55rem;margin-bottom:.2rem;transition:transform .22s;transform:rotate(45deg)}.footer-disclosure[aria-expanded=true] .footer-chevron{margin-top:.2rem;margin-bottom:0;transform:rotate(225deg)}.footer-col a,.footer-phone a,.footer-panel a,.footer-bar a{min-width:2.75rem;max-width:100%;min-height:2.75rem;color:inherit;white-space:normal;align-items:center;text-decoration:none;display:inline-flex}.footer-phone{gap:0 var(--space-4);flex-wrap:wrap;margin:0;display:flex}.footer-col a.footer-meta{min-height:2.75rem;color:var(--color-on-dark-soft);display:grid}.footer-col a.footer-map{align-items:center;gap:var(--space-2);width:fit-content;max-width:100%;min-height:2.75rem;margin-top:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-group);box-shadow:inset 0 0 0 1px var(--color-accent-container);color:var(--color-accent-container);grid-column:1/-1;display:inline-flex}.footer-col a.footer-map:hover{background:var(--color-accent-container);color:var(--color-primary)}.footer-col a.footer-write{color:var(--color-accent-container);font-weight:650}.site-footer a{transition:color .16s,background-color .16s}.site-footer a:hover{color:var(--color-accent-container)}.site-footer a:focus-visible,.footer-disclosure:focus-visible{outline:2px solid var(--color-accent-container);outline-offset:3px}.footer-bar{border-top:1px solid #ffffff24}.footer-bar-inner{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);min-height:3rem;padding-block:var(--space-2);color:var(--color-on-dark-soft);font-size:var(--text-1);flex-wrap:wrap;display:flex}.footer-bar-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.photo-credits{gap:1.25rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.photo-credits li{grid-template-columns:7.5rem minmax(0,1fr);align-items:start;gap:.75rem 1rem;display:grid}.photo-credits img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius-control);background:var(--color-ink-deep);width:100%}.photo-credits p{margin:0}.photo-credit-line{color:var(--color-muted);font-size:var(--text-1);margin-top:.35rem}.photo-credit-line a{color:inherit;white-space:nowrap}@media (width<=480px){.photo-credits li{grid-template-columns:minmax(0,1fr)}.photo-credits img{width:10rem}}.footer-legal{text-wrap:pretty;min-width:0;line-height:1.35}.footer-bar a{padding-inline:var(--space-2);flex:none}@media (width<=859px){.has-tab-bar .site-footer:after{content:"";height:calc(4.75rem + env(safe-area-inset-bottom));background:var(--color-primary);position:absolute;top:100%;left:0;right:0}.has-tab-bar .site-footer{position:relative}}@media (width<=719px){.footer-main{gap:var(--space-3)}.footer-contact{order:1}.footer-navs{order:2;gap:0}.footer-label-static{display:none}.footer-disclosure{width:100%;min-height:2.75rem;color:var(--color-accent-container);font:inherit;font-size:var(--text-1);background:0 0;border:0;border-top:1px solid #ffffff24;justify-content:space-between;align-items:center;padding:0;font-weight:650;display:flex}.footer-panel{grid-template-rows:0fr;transition:grid-template-rows .22s;display:grid}.footer-panel.is-open{grid-template-rows:1fr}.footer-panel-inner{min-height:0;overflow:hidden}}@media (width>=720px){.footer-main{gap:var(--space-6) var(--space-8);padding-block:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(17rem,1fr);align-items:start;display:grid}.footer-contact{grid-area:1/2/span 2}.footer-navs{gap:var(--space-4) var(--space-6);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}}@media (width>=1100px){.footer-main{padding-block:var(--space-6) var(--space-5);grid-template-columns:minmax(14rem,1.05fr) minmax(18rem,1fr) minmax(18rem,1.15fr)}.footer-contact{grid-area:auto}}@media (prefers-reduced-motion:reduce){.site-footer a,.footer-chevron,.footer-panel{transition:none}}.has-tab-bar .site-form{gap:var(--space-4)}.enquiry-form{gap:.85rem}.enquiry-field{flex-direction:column;gap:.35rem;display:flex}.enquiry-field>label,.need-set legend{color:var(--color-ink);font-size:var(--text-2);font-weight:650}.enquiry-form input,.enquiry-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-group);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-ink);font:inherit;font-size:var(--text-2);caret-color:var(--color-accent-strong);padding:.65rem .85rem}.enquiry-form textarea{resize:vertical;min-height:7rem}.enquiry-form input:focus-visible,.enquiry-form textarea:focus-visible,.need-chips label:focus-within{outline:2px solid var(--color-accent);outline-offset:3px}.enquiry-form input[aria-invalid=true],.enquiry-form textarea[aria-invalid=true]{border-color:var(--color-danger-ink)}.need-set{border:0;margin:0;padding:0}.need-chips{flex-wrap:wrap;gap:.5rem;margin-top:.35rem;display:flex}.need-chips label{border:1px solid var(--color-border);border-radius:var(--radius-group);background:var(--color-surface);min-height:48px;font-size:var(--text-2);cursor:pointer;align-items:center;padding:.4rem .9rem;font-weight:500;display:inline-flex;position:relative}.need-chips input{clip:rect(0 0 0 0);width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.need-chips label.is-on{border-color:var(--color-accent);background:var(--color-primary);color:var(--color-surface)}.enquiry-more{min-height:3rem}.enquiry-more-trigger{min-height:48px;color:var(--color-accent-strong);font:inherit;font-size:var(--text-2);text-underline-offset:.2em;background:0 0;border:0;align-items:center;padding:0;font-weight:650;text-decoration:underline;display:inline-flex}.enquiry-more-body{flex-direction:column;gap:.85rem;padding-bottom:.25rem;display:flex}.enquiry-hours,.enquiry-privacy{margin:0}.enquiry-summary{border:1px solid var(--color-danger-ink);border-radius:var(--radius-group);background:var(--color-danger-bg);padding:.75rem .9rem}.enquiry-summary p,.enquiry-summary ul{margin:0}.enquiry-summary ul{padding-left:1.1rem}.enquiry-alert{border:1px solid var(--color-danger-ink);border-radius:var(--radius-group);background:var(--color-danger-bg);margin:.75rem 0;padding:.75rem .9rem}.enquiry-alert p{margin:0}.enquiry-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.has-tab-bar .project-hero .project-plate,.has-tab-bar .project-hero .project-plate-photo{aspect-ratio:16/7;min-height:0}.site-shell .btn,.reach-action,.location-open,.location-directions,.phone-action{border-radius:var(--radius-control);min-height:44px}.site-shell .menu-button{width:auto;min-height:44px;padding:0 var(--space-3);font:inherit;font-size:var(--text-2)}.site-shell.menu-open .reach-bar{display:none}.reach-bar{z-index:45;gap:var(--space-2);border-top:1px solid var(--color-border);background:var(--color-paper);padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:0;right:0}.reach-action{background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-2);flex:1;justify-content:center;align-items:center;text-decoration:none;display:flex}.reach-action:hover{background:var(--color-primary-hover);color:var(--color-on-primary)}@media (width>=860px){.reach-bar{display:none}.has-tab-bar .band{padding-block:var(--space-8)}.has-tab-bar .contact-grid{gap:var(--space-8);grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr)}}.home h1,.home h2,.home h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:500;line-height:1.1}.home h1{font-size:clamp(var(--text-5), 5vw, var(--text-6));margin:0 0 .875rem;line-height:1.15}.home h2{font-size:clamp(var(--text-4), 3vw, var(--text-5));margin:0 0 .875rem;line-height:1.2}.home h3{font-size:var(--text-3);margin:0 0 .5rem;line-height:1.3}.home p{margin:0}.home-sub,.home-hours{max-width:38rem;font-size:var(--text-3);line-height:1.5}.home-hero{padding:calc(4.75rem + env(safe-area-inset-top)) 0 0}.home-hero-grid,.home-bore-grid,.home-enquiry-grid{gap:1.25rem;display:grid}.home-hero-media{background:var(--color-ink-deep);border-radius:var(--radius-group);margin:0;position:relative;overflow:hidden}.home-hero-media img{aspect-ratio:4/3;object-fit:cover;width:100%;max-width:800px;height:auto;display:block}.hero-machine{margin-top:-2.4rem;position:relative}.hero-machine svg{width:min(100%,26rem);height:auto;display:block}.hero-pause{border-radius:var(--radius-control);background:var(--color-primary);min-width:44px;min-height:44px;color:var(--color-accent-container);font:inherit;font-size:var(--text-1);border:0;padding:0 .8rem;position:absolute;top:.4rem;right:.4rem}.exc-ground{fill:none;stroke:var(--color-accent);stroke-width:2px}.exc-soil{fill:#6b5a45}.exc-track,.exc-pin,.exc-scoop{fill:var(--color-ink-deep)}.exc-pad,.exc-shade,.exc-ram{fill:#8a6322}.exc-body,.exc-arm,.exc-pin-gold{fill:var(--color-accent)}.exc-glass{fill:#dce3e8}.exc-arm{stroke:var(--color-accent);stroke-width:12px;stroke-linecap:round}.exc-arm-thin{stroke-width:9px}.exc-ram{stroke:#8a6322;stroke-width:4px}.exc-fall rect{fill:#6b5a45}.exc-boom,.exc-stick,.exc-bucket{transform-box:view-box}@media (prefers-reduced-motion:no-preference){.hero-machine:not(.is-paused) .exc-boom{transform-origin:160px 128px;animation:9s ease-in-out 3 exc-boom}.hero-machine:not(.is-paused) .exc-stick{transform-origin:244px 64px;animation:9s ease-in-out 3 exc-stick}.hero-machine:not(.is-paused) .exc-bucket{transform-origin:304px 118px;animation:9s ease-in-out 3 exc-bucket}.hero-machine:not(.is-paused) .exc-fall rect{opacity:0;animation:9s linear 3 exc-fall}}@keyframes exc-boom{0%,10%{transform:rotate(8deg)}32%{transform:rotate(18deg)}55%{transform:rotate(-18deg)}78%{transform:rotate(-16deg)}to{transform:rotate(8deg)}}@keyframes exc-stick{0%,10%{transform:rotate(-8deg)}32%{transform:rotate(22deg)}55%{transform:rotate(-6deg)}78%{transform:rotate(-28deg)}to{transform:rotate(-8deg)}}@keyframes exc-bucket{0%,10%{transform:rotate(-6deg)}32%{transform:rotate(46deg)}55%{transform:rotate(18deg)}78%{transform:rotate(-36deg)}to{transform:rotate(-6deg)}}@keyframes exc-fall{0%,72%{opacity:0;transform:translate(0)}76%{opacity:1}90%{opacity:0;transform:translate(8px,64px)}to{opacity:0}}.home-proof{border-block:1px solid var(--color-border);background:var(--color-surface);padding:1rem 0 1.25rem}.home-proof-list{grid-template-columns:1fr 1fr;gap:1rem 1.25rem;margin:0;padding:0;list-style:none;display:grid}.home-proof-list li{flex-direction:column;gap:.15rem;display:flex}.home-proof-list img{background:var(--color-surface);width:100px;height:auto}.agpo-mark{min-height:44px;color:inherit;flex-direction:column;align-items:flex-start;gap:.35rem;text-decoration:none;display:flex}.agpo-caption strong{white-space:normal}.agpo-tile{box-sizing:border-box;border-radius:var(--radius-control);background:var(--color-surface);flex:none;justify-content:center;align-items:center;max-width:140px;padding:.3rem .4rem;line-height:0;display:inline-flex}.home-proof-list .agpo-tile,.home-proof-list .agpo-tile img{width:auto;max-width:min(140px,100%);height:auto;display:block}.agpo-caption{flex-direction:column;gap:.1rem;display:flex}.home-proof-list strong{font-weight:650}.home-work,.home-done,.home-steps,.home-enquiry{padding:2.25rem 0}.home-work{padding:1.25rem 0 1.5rem}.home-work h2{margin:0 0 .4rem}.home-work>.wrap>p{max-width:42rem;margin:0}.home-cards,.home-jobs,.home-step-list{gap:1rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.home-cards{gap:.75rem 1.25rem;margin-top:.75rem}.home-card-photo{margin:0 0 .45rem;display:block}.home-card-photo img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius-control);background:var(--color-ink-deep);width:100%}.kind-photo-preview{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius-control);background:var(--color-ink-deep);width:min(100%,20rem);margin-top:.35rem;display:block}.home-cards h3{margin:0 0 .25rem}.home-cards p{margin:0 0 .15rem}.home-cards li,.home-jobs li{border:0;border-top:1px solid var(--color-border);background:0 0;border-radius:0;padding:1rem 0 0}.home-cards li.home-card-feature,.home-jobs li.home-job-feature{border-radius:var(--radius-group);background:var(--color-primary);color:var(--color-app);border:0;gap:0 1.25rem;padding:1.1rem;display:grid}.home-card-feature a,.home-job-feature a,.home-job-feature .home-meta{color:var(--color-accent-container)}.home-cards img,.home-bore img{border-radius:var(--radius-control);background:var(--color-ink-deep);width:100%;height:auto}.home-cards a,.home-jobs h3 a,.home-more{align-items:center;min-width:2.75rem;min-height:2.75rem;display:inline-flex}.home-more{margin-top:.75rem}.home-done-links{flex-wrap:wrap;gap:.15rem 1.25rem;display:flex}.home-enquiry p a{align-items:center;min-height:2.75rem;display:inline-flex}.home .contact-reach h2{font-size:var(--text-4);line-height:1.25}.home .site-form label{gap:6px}.home-req{color:var(--color-secondary);font-size:var(--text-1);letter-spacing:.04em;text-transform:uppercase;margin-left:.35rem;font-weight:600}.home .enquiry-form input,.home .enquiry-form select,.home .enquiry-form textarea{border:1px solid var(--color-muted);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-ink);font:inherit;font-size:var(--text-2);padding:.65rem .85rem}.home .enquiry-form input:focus-visible,.home .enquiry-form select:focus-visible,.home .enquiry-form textarea:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:3px}.home-bore{background:var(--color-primary);color:var(--color-app);padding:2.25rem 0}.home-bore a:not(.btn){color:var(--color-accent-container)}.home-bore .btn-forest,.home-bore .btn-forest:hover,.home-bore .btn-forest:active{background:var(--color-surface);color:var(--color-primary)}.home-bore ul{margin:.6rem 0;padding-left:1.15rem}.home-bore li+li{margin-top:.25rem}.home-filters{flex-wrap:wrap;gap:.4rem;margin-top:.85rem;display:flex}.home-filters button{border:1px solid var(--color-muted);border-radius:var(--radius-control);background:var(--color-surface);min-height:44px;color:var(--color-primary);font:inherit;font-size:var(--text-2);padding:0 .9rem}.home-filters button.is-on{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-accent-container)}.home-jobs{scroll-snap-type:x mandatory;grid-auto-columns:min(18.5rem,84%);grid-auto-flow:column;gap:.75rem;width:100%;min-width:0;margin-top:.75rem;padding-bottom:.35rem;overflow-x:auto}.home-jobs li.home-job{scroll-snap-align:start;border:1px solid var(--color-border);border-radius:var(--radius-group);background:var(--color-surface);padding:0;overflow:hidden}.home-job a{min-height:100%;color:inherit;flex-direction:column;gap:.25rem;padding:.85rem;text-decoration:none;display:flex}.home-job .project-picture{display:block}.home-job img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius-control);width:100%;height:auto;margin-bottom:.35rem}.home-job-marks{flex-wrap:wrap;align-items:center;gap:.35rem .6rem;display:flex}.home-job-kind{color:var(--color-accent-strong);font-size:var(--text-1);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.home-job-sub{color:var(--color-accent-strong);font-size:var(--text-1);letter-spacing:.04em;text-transform:uppercase;font-weight:650}.home-job-empty{margin-top:.75rem}.home-jobs li.home-job-feature{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-app);display:block}.home-jobs li.home-job a{color:inherit}.home-job-feature .home-job-kind,.home-job-feature .home-job-sub,.home-job-feature .home-meta{color:var(--color-accent-container)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.home-job{transition:transform .18s}.home-job:hover{transform:translateY(-3px)}}@media (prefers-reduced-motion:no-preference){.home-job{animation:.42s both home-job-in}}@keyframes home-job-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.home-meta{color:var(--color-secondary);font-size:var(--text-1)}.home-road{height:1.5rem;margin:.5rem 0 .25rem}.home-road svg{width:100%;height:1.5rem}.home-road-line{fill:none;stroke:var(--color-accent);stroke-width:4px;stroke-linecap:round}.home-step-list{counter-reset:step}.home-step-list li span{background:var(--color-primary);width:1.75rem;height:1.75rem;color:var(--color-accent-container);border-radius:50%;place-items:center;font-weight:650;display:inline-grid}.home-tender{padding:0 0 2rem}.home-tender-panel{border:1px solid var(--color-accent);border-radius:var(--radius-group);padding:1.1rem}.home-enquiry{background:var(--color-surface)}.home-thanks{font-weight:650}.about-photos{gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.about-photos img{border-radius:var(--radius-group);background:var(--color-ink-deep);width:100%;height:auto}.enquiry-trap{width:0;height:0;position:absolute;left:-9999px}@media (width<=767px){.home .hero-actions{grid-template-columns:1fr;display:grid}.home .hero-actions .btn{white-space:nowrap;padding-inline:.55rem}.home-proof-list{grid-template-columns:1fr}.home-hero-media img{aspect-ratio:16/10}.hero-machine{margin-top:-5.5rem}}@media (width>=768px){.home-cards{grid-template-columns:1fr 1fr}.home-jobs{grid-template-columns:1fr 1fr;grid-auto-flow:row;overflow:visible}}@media (width>=1024px){.home-proof-list{grid-template-columns:repeat(3,minmax(0,1fr))}.home-hero-grid,.home-bore-grid,.home-enquiry-grid{grid-template-columns:1.05fr .95fr;align-items:center}.home-cards{grid-template-columns:1fr 1fr}.home-jobs{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;overflow:visible}.home-step-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.home-road-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:linear both home-draw;animation-timeline:view();animation-range:entry 10% cover 55%}}}@keyframes home-draw{to{stroke-dashoffset:0}}@keyframes exc-boom-gentle{0%,to{transform:rotate(4deg)}50%{transform:rotate(10deg)}}@keyframes exc-stick-gentle{0%,to{transform:rotate(-4deg)}50%{transform:rotate(6deg)}}@keyframes home-road-fade{0%{opacity:.4}to{opacity:1}}@media (prefers-reduced-motion:reduce){.hero-machine:not(.is-paused) .exc-boom{transform-box:view-box;transform-origin:160px 128px;animation-name:exc-boom-gentle!important;animation-duration:16s!important;animation-timing-function:ease-in-out!important;animation-iteration-count:infinite!important;animation-fill-mode:both!important}.hero-machine:not(.is-paused) .exc-stick{transform-box:view-box;transform-origin:244px 64px;animation-name:exc-stick-gentle!important;animation-duration:16s!important;animation-timing-function:ease-in-out!important;animation-iteration-count:infinite!important;animation-fill-mode:both!important}.hero-machine .exc-bucket{transform-box:view-box;transform-origin:304px 118px;transform:rotate(-6deg);animation:none!important}.hero-machine .exc-fall rect{opacity:0;animation:none!important}.home-road-line{stroke-dasharray:none;stroke-dashoffset:0;animation-name:home-road-fade!important;animation-duration:2.8s!important;animation-timing-function:ease-out!important;animation-iteration-count:1!important;animation-fill-mode:forwards!important}.hero-pause{display:none!important}}.hero-machine.is-gentle:not(.is-paused) .exc-boom{transform-box:view-box;transform-origin:160px 128px;animation-name:exc-boom-gentle!important;animation-duration:16s!important;animation-timing-function:ease-in-out!important;animation-iteration-count:infinite!important;animation-fill-mode:both!important}.hero-machine.is-gentle:not(.is-paused) .exc-stick{transform-box:view-box;transform-origin:244px 64px;animation-name:exc-stick-gentle!important;animation-duration:16s!important;animation-timing-function:ease-in-out!important;animation-iteration-count:infinite!important;animation-fill-mode:both!important}.hero-machine.is-gentle .exc-bucket{transform-box:view-box;transform-origin:304px 118px;transform:rotate(-6deg);animation:none!important}.hero-machine.is-gentle .exc-fall rect{opacity:0;animation:none!important}
