html{line-height:1.5;-webkit-text-size-adjust:100%}body{margin:0}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}h1,h2,h3,p,figure{margin:0}a{color:inherit}
:root{--green:#014929;--ink:#151814;--paper:#f5f3ee;--muted:#59625b;--border:#d7dcd6;color:#151814;background:#f5f3ee;font-family:Arial,Helvetica,sans-serif}*{-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0}a{color:inherit;-webkit-text-decoration:none;text-decoration:none}button,input,textarea,select{font:inherit}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b06a24;outline-offset:5px}.skip{position:absolute;left:12px;top:-80px;background:white;padding:16px;z-index:10}.skip:focus{top:12px}.preview{background:#151814;color:white;padding:7px 5%;font-size:10px;letter-spacing:.12em;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.preview span{letter-spacing:0;color:#d7dcd6}header{max-width:1500px;margin:auto;padding:20px 5%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;border-bottom:1px solid #d7dcd6;gap:24px}header img{display:block;width:96px;height:88px;object-fit:contain}nav{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;gap:36px;font-size:14px;font-weight:600}.button{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;gap:22px;background:#014929;color:#fff;padding:17px 23px;border:1px solid #014929;font-size:14px;font-weight:600;cursor:pointer}.button:hover{background:#151814}.button:disabled{opacity:.6}.hero-copy{padding:64px 5% 30px;max-width:1500px;margin:auto}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;margin:0 0 28px;line-height:1.7}h1,h2,h3{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-stretch:condensed;font-weight:500;letter-spacing:-.035em;line-height:1.02;margin:0}h1{font-size:48px;font-size:max(48px, min(6.8vw, 102px))}h1 em{font-style:normal;color:#014929}h2{font-size:48px;font-size:max(38px, min(4.2vw, 64px))}h3{font-size:42px}p{font-size:16px;line-height:1.65;margin:0 0 20px}.hero-bottom{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:end;-webkit-align-items:end;-moz-box-align:end;align-items:end;margin-top:30px;gap:24px}.hero-bottom p{margin:0}.text-link{font-weight:600;font-size:14px;border-bottom:1px solid;padding-bottom:7px;display:inline-block}.forest{width:100%;height:auto;display:block;margin-top:0}.scene-caption{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;background:#014929;color:white;padding:20px 4%;font-size:10px;letter-spacing:.12em;grid-gap:20px;gap:20px}.section{max-width:1500px;margin:auto;padding:90px 5%}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:8%;gap:8%}.lead{font-size:22px;line-height:1.5}.service-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;margin-top:54px}.service-card{background:#014929;color:white;padding:42px;display:block;border:1px solid #014929}.service-card p{max-width:400px;margin-top:24px}.service-card.light{background:#e3e7da;color:#151814;border-color:#e3e7da}.service-card:hover{outline:2px solid #014929;outline-offset:4px}.proof{border-top:1px solid #d7dcd6}.photo-placeholder{min-height:230px;border:1px dashed #899385;padding:32px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center}.photo-placeholder span{font-size:11px;letter-spacing:.12em;font-weight:bold}.photo-placeholder p{margin:16px 0}.photo-placeholder small{color:#59625b}.audience{border-top:1px solid #d7dcd6}.audience .lead{max-width:680px;margin:24px 0 30px}footer{background:#014929;color:white;padding:55px 5% 25px;display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:35px;gap:35px}footer img{object-fit:contain}footer a,footer span{display:block;margin-bottom:10px;font-size:14px}footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,0.25098);padding-top:20px;font-size:11px}.page-intro .lead{max-width:600px;margin-top:30px}.service-detail{border-top:1px solid #d7dcd6;scroll-margin-top:30px}.contact{display:grid;grid-template-columns:1fr 1fr;grid-gap:7%;gap:7%}.contact h1{font-size:48px;font-size:max(46px, min(5vw, 72px))}.contact .lead{margin-top:30px}.contact-person{margin-top:45px}.contact-person h2{font-family:Arial,sans-serif;font-size:18px;font-weight:bold;letter-spacing:0;margin-bottom:20px}.contact-person a{display:block;margin:12px 0;-webkit-text-decoration:underline;text-decoration:underline}.contact-person p{margin-top:24px}form{background:white;padding:30px;border:1px solid #d7dcd6}label{display:block;font-size:14px;font-weight:600;margin-bottom:20px}label span{font-size:11px;font-weight:400;color:#59625b;float:right}input,textarea,select{width:100%;margin-top:8px;padding:12px;border:1px solid #8b958d;border-radius:0;background:white;color:#151814;min-height:46px}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.field-help{font-size:12px;margin-top:-9px;color:#59625b}.form-notice{font-size:13px;background:#f5f3ee;padding:14px}.privacy{font-size:12px;margin:24px 0;color:#59625b}summary{cursor:pointer;margin-bottom:20px;font-size:14px}form [role=status]{font-size:14px;margin-top:18px} @media(min-width:1600px){.forest{max-height:550px}}@media(max-width:767px){.preview span{display:none}header{padding:16px 5%;gap:12px}header img{width:70px;height:66px}nav{gap:16px;font-size:12px}.phone-nav{display:none}nav .button{padding:12px;font-size:12px;gap:8px}.hero-copy{padding-top:42px}.hero-bottom{display:block}.hero-bottom .text-link{margin-top:18px}.hero-bottom p{font-size:15px}.forest{margin-top:25px}.scene-caption{font-size:8px;padding:14px 3%;gap:12px;letter-spacing:.04em}.section{padding:55px 5%}.split,.service-grid,.contact{grid-template-columns:1fr;gap:28px}.service-card{padding:28px}h3{font-size:35px}.lead{font-size:19px}.service-grid{margin-top:30px}footer{grid-template-columns:1fr 1fr;gap:25px}footer p{font-size:14px}footer>div{grid-column:1/-1}form{padding:22px}.field-row{grid-template-columns:1fr;gap:0}.contact-person{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;-webkit-animation:none!important;animation:none!important;-webkit-transition:none!important;transition:none!important}}
/* Continuous forest planes: keep their bases beyond the viewport so no gaps open. */
.forest-bands{height:460px;height:max(360px, min(42vw, 620px));overflow:hidden;margin-top:-16px;background:#f5f3ee}
@media(max-width:767px){.forest-bands{height:330px;margin-top:12px}}
.forest-wrap{position:relative}

.forest-bands{background:#04352c}

/* Homepage: one uninterrupted green scene, with readable copy above the artwork. */
.header-mark-reverse{display:none}
body.home header{background:#04352c;color:#fff;max-width:none;border-color:rgba(255,255,255,0.12549)}
body.home .header-mark-primary{display:none}
body.home .header-mark-reverse{display:block}
body.home header .button{background:#f5f3ee;color:#014929;border-color:#f5f3ee}
.hero{position:relative;isolation:isolate;background:#04352c;color:#fff;min-height:850px;overflow:hidden;padding-bottom:80px}
.hero .hero-copy{position:relative;z-index:2;padding-top:65px;padding-bottom:180px;pointer-events:none}
.hero .hero-copy a{pointer-events:auto}
.hero h1 em{color:#c9dac5}
.hero .hero-bottom{-webkit-box-align:start;-webkit-align-items:start;-moz-box-align:start;align-items:start;margin-top:35px}
.hero .hero-bottom p{max-width:520px}
.hero .forest-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}
.hero .forest-bands{height:100%;width:100%;margin:0;background:#04352c;max-height:none}
.hero .scene-caption{position:absolute;bottom:0;left:0;right:0;z-index:2;background:transparent;border-top:1px solid rgba(255,255,255,0.1451)}
@media(max-width:767px){
 .hero{min-height:780px;padding-bottom:65px}
 .hero .hero-copy{padding:42px 5% 200px}
 .hero h1{font-size:48px;font-size:max(44px, min(12.4vw, 64px));line-height:1.05}
 .hero .hero-bottom{margin-top:26px}
 .hero .hero-bottom p{font-size:15px;max-width:340px}
 .hero .hero-bottom .text-link{margin-top:22px}
 .hero .scene-caption{font-size:8px}
}

.equipment-photos{display:grid;grid-template-columns:1fr 1fr;grid-gap:36px;gap:36px;margin-top:48px}.equipment-photos figure{margin:0}.equipment-photos figure:nth-child(2){padding-top:90px}.equipment-photos img{width:100%;height:470px;object-fit:cover;display:block}.equipment-photos figcaption{padding:22px 0}.equipment-photos figcaption span{font-size:11px;letter-spacing:.14em;display:block;margin-bottom:14px}.image-source{font-size:12px;color:#59625b;margin-top:22px}.equipment-detail{display:grid;grid-template-columns:1fr 1fr;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;grid-gap:7%;gap:7%;border-top:1px solid #d7dcd6}.equipment-detail img{width:100%;height:auto}.equipment-detail h2{margin-bottom:24px}@media(max-width:767px){.equipment-photos,.equipment-detail{grid-template-columns:1fr;gap:28px}.equipment-photos figure:nth-child(2){padding-top:0}.equipment-photos img{height:auto;max-height:520px;object-fit:cover}}
/* Photography gives the illustrated opening a real-world counterpart. */
.photo-panel{height:460px;height:max(460px, min(65vw, 850px));position:relative;overflow:hidden;background:#11291d;color:white}.photo-panel>img{width:100%;height:110%;object-fit:cover;object-position:center 55%;position:absolute;top:-5%;-webkit-filter:saturate(.87) contrast(1.03);filter:saturate(.87) contrast(1.03)}.photo-panel:after{content:'';position:absolute;top:0;right:0;bottom:0;left:0;background:-webkit-gradient(linear,left top, left bottom,color-stop(35%, transparent),to(rgba(3,28,23,0.8)));background:linear-gradient(180deg,transparent 35%,rgba(3,28,23,0.8))}.photo-panel-copy{position:absolute;bottom:12%;left:5%;z-index:1}.photo-panel-copy>p:last-child{font-family:Impact,'Arial Narrow',sans-serif;font-size:48px;font-size:max(44px, min(6vw, 88px));line-height:1.02;letter-spacing:-.025em;margin:0}.photo-credit{position:absolute;right:5%;bottom:30px;z-index:1;font-size:9px;letter-spacing:.16em}.proof{background:#e8ecdf;max-width:none;padding-left:max(5%,-webkit-calc((100vw - 1350px)/2));padding-left:max(5%,calc((100vw - 1350px)/2));padding-right:max(5%,-webkit-calc((100vw - 1350px)/2));padding-right:max(5%,calc((100vw - 1350px)/2))}.equipment-photos{gap:7%}.equipment-photos figure:first-child img{height:430px;object-position:65% center}.equipment-photos figure:nth-child(2){padding-top:130px}.equipment-photos figure:nth-child(2) img{height:570px}.equipment-photos figcaption h3{font-size:48px;font-size:max(38px, min(4vw, 58px))}.fleet-banner{position:relative;min-height:650px;overflow:hidden;color:white;background:#143327}.fleet-banner>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 58%}.fleet-banner:after{content:'';position:absolute;top:0;right:0;bottom:0;left:0;background:-webkit-gradient(linear,left top, right top,from(rgba(3,27,22,0.78824)),color-stop(85%, transparent));background:linear-gradient(90deg,rgba(3,27,22,0.78824),transparent 85%)}.fleet-banner>div{position:relative;z-index:1;padding:100px 5%;max-width:800px}.fleet-banner h2{font-size:48px;font-size:max(48px, min(6vw, 86px));margin-bottom:30px}.project-questions{border-top:1px solid #d7dcd6}.question-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:40px 8%;gap:40px 8%;margin-top:48px}.question-grid h3{font-family:Arial,sans-serif;font-size:20px;font-weight:bold;letter-spacing:-.02em;margin-bottom:14px}.equipment-detail img{max-height:680px;object-fit:cover}.audience{background:#f5f3ee}.service-card{-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease, -webkit-transform .25s ease}.service-card:hover{-webkit-transform:translateY(-4px);transform:translateY(-4px)}
@media(max-width:767px){.photo-panel{height:560px}.photo-panel>img{object-position:60% center}.photo-panel-copy{bottom:14%}.photo-panel-copy .eyebrow{font-size:9px}.equipment-photos figure:first-child img{height:320px}.equipment-photos figure:nth-child(2){padding-top:10px}.equipment-photos figure:nth-child(2) img{height:460px}.fleet-banner{min-height:530px}.fleet-banner>img{object-position:52% center}.fleet-banner>div{padding:60px 5%}.fleet-banner:after{background:-webkit-gradient(linear,left top, left bottom,from(rgba(3,27,22,0.73333)),color-stop(90%, transparent));background:linear-gradient(180deg,rgba(3,27,22,0.73333),transparent 90%)}.question-grid{grid-template-columns:1fr;gap:25px}.equipment-detail img{max-height:480px}}
:root{--accent:#ffad66}body[data-colour=gold]{--accent:#e4c777}body[data-colour=clay]{--accent:#eeb29a}
.hero h1{color:#ffad66}.hero h1 em{color:#fff}body.home header .button{background:#ffad66;border-color:#ffad66;color:#04352c}.hero .text-link{background:#ffad66;border:0;color:#04352c;padding:14px 22px}.button{border-radius:3px}.text-link{padding-bottom:9px;border-bottom-width:2px}
.service-stories-heading{display:grid;grid-template-columns:1fr 1fr;-webkit-box-align:end;-webkit-align-items:end;-moz-box-align:end;align-items:end;grid-gap:20px 8%;gap:20px 8%;margin-bottom:55px}.service-stories-heading .eyebrow{grid-column:1/-1;margin:0}.service-stories-heading>p:last-child{font-size:20px;max-width:430px;margin:0}.service-story{display:grid;grid-template-columns:1.15fr 1fr;min-height:500px;margin-bottom:40px;background:#e8ecdf}.story-photo{overflow:hidden;min-height:500px}.story-photo img{display:block;width:100%;height:100%;object-fit:cover}.story-copy{padding:55px 45px;position:relative;-webkit-align-self:center;align-self:center}.story-copy h3{font-size:48px;font-size:max(36px, min(3.6vw, 56px));margin-bottom:24px}.story-copy>p:not(.eyebrow){max-width:380px}.story-number{display:block;color:#7b8b77;font-size:14px;letter-spacing:.1em;margin-bottom:30px}.story-copy .eyebrow{font-size:10px;margin-bottom:18px}.story-copy .button{margin-top:10px}.service-story.reverse{grid-template-columns:1fr 1.15fr;background:#04352c;color:white}.reverse .story-photo{-webkit-box-ordinal-group:3;-webkit-order:2;-moz-box-ordinal-group:3;order:2}.reverse .story-copy{-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;order:1}.reverse .story-number{color:#b7c8b1}.reverse .button{background:#e8ecdf;color:#04352c;border-color:#e8ecdf}
@media(max-width:767px){.service-stories-heading{grid-template-columns:1fr;margin-bottom:30px}.service-stories-heading>p:last-child{font-size:17px}.service-story,.service-story.reverse{grid-template-columns:1fr;margin-bottom:28px}.story-photo{min-height:0;height:310px}.story-copy{padding:30px 25px}.story-number{margin-bottom:18px}.reverse .story-photo{-webkit-box-ordinal-group:1;-webkit-order:0;-moz-box-ordinal-group:1;order:0}.reverse .story-copy{-webkit-box-ordinal-group:2;-webkit-order:1;-moz-box-ordinal-group:2;order:1}.story-copy h3{font-size:38px}}
/* Give a direct heading-to-action pairing deliberate breathing room. */
.audience>h2+.button{margin-top:32px}

/* Buyer journeys: clear service choices, project fit and next steps. */
.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:40px;gap:40px;margin-top:45px}.market-grid article{border-top:3px solid #014929;padding-top:26px}.market-grid h3{font-size:34px;margin-bottom:20px}.market-grid .text-link{margin-top:12px}.travel-note{margin:42px 0 0;max-width:760px;color:#59625b}.next-step{background:#04352c;color:white;max-width:none}.readiness-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8%;gap:8%;margin-top:42px}.readiness-grid h3,.detail-label{font-family:Arial,Helvetica,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.3;margin-bottom:16px}.readiness-grid .button{background:#ffad66;border-color:#ffad66;color:#04352c;margin-top:12px}.next-step-note{border-top:1px solid rgba(255,255,255,0.25098);margin:44px 0 0;padding-top:26px;max-width:950px}.next-step-note a{-webkit-text-decoration:underline;text-decoration:underline}.service-nav{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;gap:24px;margin-top:32px}.scope-photo{display:block;width:100%;height:360px;object-fit:cover;margin-top:32px}.service-detail .detail-label{margin-top:32px}.service-detail .button{margin-top:16px}@media(max-width:767px){.market-grid,.readiness-grid{grid-template-columns:1fr;gap:36px}.scope-photo{height:300px}.market-grid h3{font-size:32px}.readiness-grid .button{width:100%}.service-nav{gap:18px}.service-detail .split{gap:32px}}

/* Exact supplied badge assembles over the forest, then yields to the offer. */
.brand-entrance{display:none;position:absolute;top:0;right:0;bottom:100px;left:0;z-index:3;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;pointer-events:none}.brand-entrance-art{width:min(62vw,560px);-webkit-filter:drop-shadow(0 10px 30px rgba(0,24,16,0.18824));filter:drop-shadow(0 10px 30px rgba(0,24,16,0.18824))}.brand-entrance svg{display:block;width:100%;height:auto}@media(max-width:767px){.brand-entrance{bottom:170px}.brand-entrance-art{width:76vw}}@media(prefers-reduced-motion:reduce){.brand-entrance{display:none!important}}

/* Lateral entrances stay inside the page; controls keep their hit area steady. */
main{overflow-x:clip}.equipment-photos figure{overflow:hidden}.button{-webkit-transition:background-color .2s, color .2s, box-shadow .2s;transition:background-color .2s, color .2s, box-shadow .2s}.text-link{-webkit-transition:color .2s, border-color .2s;transition:color .2s, border-color .2s}@media(hover:hover) and (prefers-reduced-motion:no-preference){.button:hover{box-shadow:4px 4px 0 rgba(255,173,102,0.43922)}.text-link:hover{border-color:#ffad66;color:#a64c13}.next-step .text-link:hover{color:#ffad66}}

.equipment-photos figcaption{position:relative;padding:24px 0 32px}.equipment-photos figcaption h3{line-height:1.1}.equipment-photos figure{overflow:visible}
/* Percentage row gaps overflow auto-height grids; keep vertical rhythm explicit. */
.equipment-photos{row-gap:48px;-webkit-column-gap:7%;-moz-column-gap:7%;column-gap:7%}@media(max-width:767px){.equipment-photos{row-gap:32px}}

.spam-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

.contact-options{background:white;padding:32px;border:1px solid #d7dcd6}.contact-options h2{margin-bottom:24px}.contact-options p{margin-bottom:24px}.contact-options .button{margin:4px 0 16px}.contact-options a:not(.button){-webkit-text-decoration:underline;text-decoration:underline;word-wrap:anywhere}.contact-options .field-help{margin-top:0}footer .site-credit{display:inline-block;margin:12px 0 0;font-size:12px;-webkit-text-decoration:underline;text-decoration:underline} @media(min-width:768px){footer .site-credit{float:right;margin:0}}
/* Consistent, tactile controls without moving their hit areas. */
.button,.hero .text-link{min-height:48px;padding:15px 24px;border-radius:6px;font-weight:700;line-height:1.35;text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,0.14118),0 2px 0 rgba(0,27,22,0.2);-webkit-transition:background-color .18s ease, color .18s ease, box-shadow .18s ease;transition:background-color .18s ease, color .18s ease, box-shadow .18s ease}
.text-link{min-height:44px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;line-height:1.4}
.button:focus-visible,.text-link:focus-visible{outline:3px solid #ffad66;outline-offset:5px}
.hero .text-link:focus-visible,header .button:focus-visible,.readiness-grid .button:focus-visible{outline-color:white;box-shadow:0 0 0 3px #04352c}
@media(hover:hover){.button:hover{background:#063d2b;color:white;box-shadow:inset 0 1px 0 rgba(255,255,255,0.18824),0 4px 12px rgba(0,27,22,0.14902)}.hero .text-link:hover,body.home header .button:hover,.readiness-grid .button:hover{background:#ffc18a;color:#04352c;border-color:#ffc18a;box-shadow:inset 0 1px 0 rgba(255,255,255,0.31373),0 4px 14px rgba(0,27,22,0.18824)}.reverse .button:hover{background:white;color:#04352c}.fleet-banner .text-link:hover{color:white;border-color:#ffad66}}
.button:active,.hero .text-link:active{box-shadow:inset 0 2px 4px rgba(0,27,22,0.25098)}
@media(max-width:767px){nav .button{min-height:44px;padding:12px 14px}.contact-options{padding:26px}.contact-options .button{width:100%}}
/* Badge-inspired industrial controls: chamfered silhouette and inset keyline. */
.button,.hero .text-link{position:relative;isolation:isolate;min-height:50px;padding:17px 28px;border:0;border-radius:2px 13px 2px 13px;-webkit-clip-path:polygon(0 0,-webkit-calc(100% - 11px) 0,100% 11px,100% 100%,11px 100%,0 -webkit-calc(100% - 11px));clip-path:polygon(0 0,calc(100% - 11px) 0,100% 11px,100% 100%,11px 100%,0 calc(100% - 11px));box-shadow:inset 0 -3px 0 rgba(0,27,22,0.21961),inset 0 1px 0 rgba(255,255,255,0.20784);letter-spacing:.015em;-webkit-text-decoration:none;text-decoration:none}
.button::before,.hero .text-link::before{content:'';position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid currentColor;border-radius:1px 8px 1px 8px;opacity:.22;pointer-events:none;-webkit-transition:opacity .18s ease;transition:opacity .18s ease}
.button::after,.hero .text-link::after{content:'';display:inline-block;width:6px;height:6px;-webkit-box-flex:0;-webkit-flex:0 0 6px;-moz-box-flex:0;flex:0 0 6px;margin-left:3px;border-radius:50%;background:currentColor;opacity:.65;box-shadow:0 0 0 3px rgba(255,255,255,0.08235);pointer-events:none}
.button:focus-visible,.hero .text-link:focus-visible{outline:none;box-shadow:inset 0 0 0 3px currentColor,inset 0 0 0 6px #ffad66}
.button:focus-visible::before,.hero .text-link:focus-visible::before{opacity:1}
@media(hover:hover){.button:hover::before,.hero .text-link:hover::before{opacity:.55}.button:hover::after,.hero .text-link:hover::after{opacity:1}}
.button:active,.hero .text-link:active{box-shadow:inset 0 3px 6px rgba(0,27,22,0.27059)}
@media(max-width:767px){nav .button{min-height:46px;padding:13px 16px;gap:9px}.button,.hero .text-link{gap:16px}nav .button::after{width:4px;height:4px;-webkit-flex-basis:4px;flex-basis:4px}}
@supports not ((-webkit-clip-path: polygon(0 0,100% 0,100% 100%)) or (clip-path: polygon(0 0,100% 0,100% 100%))){.button,.hero .text-link{border-radius:2px 12px 2px 12px}}
/* Shared editorial rhythm: photo-led thinning and a quiet return to the forest. */
:root{--section-space:max(64px, min(7vw, 104px))}
.section{padding-top:max(64px, min(7vw, 104px));padding-bottom:max(64px, min(7vw, 104px))}
.service-story{border-top:1px solid #a8b9aa;background:transparent;margin-bottom:56px}
.service-story.reverse{background:transparent;color:#151814;grid-template-columns:.8fr 1.4fr}
.reverse .story-number{color:#59625b}
.reverse .button{background:#014929;border-color:#014929;color:white}
.thinning-story .story-photo{min-height:660px}
.thinning-story .story-photo img{object-position:center;height:660px}
.story-copy{padding:44px 36px}
.forest-transition{height:460px;height:max(90px, min(12vw, 175px));position:relative;overflow:hidden;background:#f5f3ee;margin-bottom:-1px;pointer-events:none}
.forest-transition img{position:absolute;display:block;width:100%;height:100%;object-fit:cover;object-position:top;-webkit-filter:brightness(0) saturate(100%);filter:brightness(0) saturate(100%);opacity:.12}
.forest-transition:after{content:'';position:absolute;top:0;right:0;bottom:0;left:0;background:-webkit-gradient(linear,left top, left bottom,from(transparent),to(#04352c));background:linear-gradient(180deg,transparent 0%,#04352c 100%)}
.next-step{background:#04352c}
footer{background:#04352c;border-top:1px solid rgba(255,255,255,0.18824);-webkit-box-align:start;-webkit-align-items:start;-moz-box-align:start;align-items:start}
footer img{display:block;width:150px;height:auto}
@media(max-width:767px){.service-story.reverse{grid-template-columns:1fr}.thinning-story .story-photo{min-height:0;height:auto}.thinning-story .story-photo img{height:auto;aspect-ratio:3/4;object-fit:cover}.story-copy{padding:30px 0}.service-story{margin-bottom:40px}.forest-transition{height:100px}footer img{width:120px}}
/* Footer canopy: isolated scroll layers with opaque bases, behind the content. */
footer{position:relative;isolation:isolate;overflow:hidden;padding-top:max(145px, min(18vw, 230px));background:#021814}
footer>.footer-forest{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;margin:0;display:block;background:#04352c}
.footer-forest svg{display:block;width:100%;height:100%;min-height:480px}
footer:after{content:'';position:absolute;top:45%;right:0;bottom:0;left:0;background:-webkit-gradient(linear,left top, left bottom,from(transparent),color-stop(65%, #021814));background:linear-gradient(transparent,#021814 65%);z-index:-1;pointer-events:none}
@media(max-width:767px){footer{padding-top:150px}.footer-forest svg{min-height:650px}}
/* Keep the SVG intro on one flat surface for iOS WebKit. */
.brand-entrance-art{-webkit-filter:none;filter:none}
.brand-entrance svg{overflow:visible}
/* Image cards sit directly on the page, with no coloured landing panel. */
.service-story,.service-story.reverse,.story-photo,.story-copy,
.equipment-photos figure,.equipment-photos figcaption,.scope-photo{
 background:transparent;
 box-shadow:none;
}

/* Conservative block layout for engines without Grid, variables or clamp. */
body{background:#f5f3ee;color:#151814;font-family:Arial,Helvetica,sans-serif}main{overflow:hidden}.hero{background:#04352c;color:white;height:auto;min-height:0;padding:40px 0 0}.hero .hero-copy{padding:10px 5% 60px}.hero h1{font-size:48px;color:#ffad66}.hero h1 em{color:white}.hero .hero-bottom{display:block}.hero .hero-bottom .text-link{margin-top:24px;background:#ffad66;color:#04352c}.forest-wrap,.brand-entrance,.scene-caption{display:none}.hero-copy,.story-copy,.story-photo{opacity:1;visibility:visible;transform:none}.section{padding:50px 5%}.split,.contact,.service-stories-heading,.service-story,.service-story.reverse,.market-grid,.readiness-grid,.question-grid,.equipment-photos,.equipment-detail{display:block}.story-photo{height:auto;min-height:0}.story-photo img{height:auto;width:100%}.story-copy{padding:28px}.market-grid article,.readiness-grid>div,.question-grid>div,.split>div{margin-bottom:32px}.equipment-photos figure{padding-top:0!important;margin-bottom:30px}.equipment-photos img,.scope-photo{width:100%;height:auto!important}.fleet-banner{min-height:0;background:#04352c}.fleet-banner>img{position:static;height:auto;width:100%}.fleet-banner>div{padding:35px 5%}.fleet-banner:after{display:none}header{display:block;overflow:hidden;padding:20px 5%}header>a{float:left}header img{width:70px;height:66px}header nav{display:block;text-align:right;padding-top:10px}header nav>a{display:inline-block;margin-left:12px}header .phone-nav{display:none}body.home header{background:#04352c;color:white}body.home header .button{background:#ffad66;color:#04352c}h2{font-size:38px}h3{font-size:30px}footer{display:block}footer>*,footer>div{margin-bottom:24px}footer small{display:block}.classic-note{padding:12px 5%;background:#e8ecdf;font-size:13px}.classic-note a{text-decoration:underline}.contact-person a{overflow-wrap:break-word;word-wrap:break-word}.service-nav{display:block}.service-nav a{margin:0 15px 15px 0}@media(min-width:900px){.hero h1{font-size:78px}.section{max-width:1100px}.story-photo{max-width:850px}.classic-contact{max-width:650px}}
