:root{--ink:#202726;--paper:#f5f3ed;--copper:#b46c42;--light:#dba57e;--line:#d9d9cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}header{height:98px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand{font-size:33px;font-weight:800;letter-spacing:-2px;line-height:1}.brand span{color:var(--copper)}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:12px}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav a:hover,nav a.active{color:var(--copper)}.nav-contact{border:1px solid var(--line);padding:12px 20px}.menu{display:none}.wrap{max-width:1320px;margin:auto;padding:105px 55px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 26px;text-transform:uppercase;color:var(--copper)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(54px,6.7vw,100px);line-height:1.02;letter-spacing:-4px;font-weight:500;margin-bottom:30px}em{font-family:Georgia,serif;font-weight:400}h2{font-size:clamp(36px,4.1vw,60px);line-height:1.13;letter-spacing:-2px;font-weight:500;margin-bottom:25px}h3{line-height:1.3;font-weight:500}p{margin-bottom:22px}.hero{height:min(790px,calc(100svh - 98px));min-height:600px;position:relative;color:white;background:var(--ink);overflow:hidden}.hero-images,.hero-shade,.hero-slide{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transition:opacity 1s}.hero-slide.active{opacity:1}.hero-shade{background:linear-gradient(90deg,rgba(16,24,23,.83),rgba(16,24,23,.23)),linear-gradient(0deg,rgba(16,24,23,.6),transparent 45%)}.hero-content{position:relative;padding:95px max(5%,calc((100vw - 1210px)/2));z-index:1}.hero .eyebrow{color:var(--light)}.hero-content>p:not(.eyebrow){color:#deded6;font-size:17px;line-height:1.7}.button{display:inline-flex;gap:40px;align-items:center;background:var(--light);color:var(--ink);padding:16px 22px;margin-top:16px;font-size:13px;font-weight:700}.button:hover{background:#efb995}.hero-bottom{position:absolute;bottom:0;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;padding:26px 0;border-top:1px solid #ffffff44;font-size:10px;letter-spacing:1.5px;gap:16px}.slider-controls{display:flex;align-items:center;gap:15px}.slider-controls button{color:white;border:1px solid #ffffff66;background:transparent;width:34px;height:34px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:45px 70px}.intro .lead{font-size:21px;line-height:1.6}.intro p:not(.lead):not(.eyebrow){color:#58605c}.signature{padding-top:15px;font-weight:700}.signature span{font-size:12px;display:block;font-weight:400;color:#666}.stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0}.stats>div{padding-left:30px;border-left:1px solid var(--line)}.stats>div:first-child{padding-left:0;border:0}.stats strong{font-size:49px;font-weight:400;display:block;line-height:1.2;letter-spacing:-2px}.stats span{font-size:12px;color:#60665f}.finance{grid-column:1/-1}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line)}summary::-webkit-details-marker{display:none}summary span{font-size:24px;color:var(--copper)}details[open] summary span{transform:rotate(45deg)}.finance-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;padding-top:25px}.finance-grid p{font-size:13px}.finance-grid strong{display:block;font-size:15px;color:var(--ink)}.dark{background:var(--ink);color:var(--paper)}.dark .eyebrow{color:var(--light)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:45px}.section-head>p{max-width:340px;color:#68716a;font-size:15px}.dark .section-head>p{color:#bfc4bc}.services{display:grid;grid-template-columns:repeat(4,1fr)}.services article{padding:30px 30px 10px;border-left:1px solid #ffffff25}.services article:first-child{border-left:0;padding-left:0}.services article:last-child{padding-right:0}.services article>span{color:var(--light);font-size:12px}.services h3{font-size:25px;margin-top:36px}.services p{font-size:14px;color:#bfc4bc}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 32px}.project-image{display:block;position:relative;width:100%;height:330px;border:0;padding:0;overflow:hidden;background:#ddd}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project-image:hover img{transform:scale(1.035)}.project-image>span{position:absolute;bottom:20px;right:20px;padding:10px 14px;background:var(--paper);font-size:11px}.project-meta{font-size:10px;letter-spacing:1.5px;color:var(--copper);margin:23px 0 9px}.project h3{font-size:29px;margin-bottom:10px;letter-spacing:-1px}.project p{color:#68716a;font-size:14px;min-height:46px}.project-value{border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;font-size:17px}.project-value span{font-size:11px;color:#777}.other{margin-top:45px}.work-row{display:flex;justify-content:space-between;gap:30px;padding:30px 0;border-bottom:1px solid var(--line)}.work-row h3{margin-bottom:10px}.work-row p{max-width:650px;margin-bottom:0;color:#68716a;font-size:14px}.work-row strong{white-space:nowrap;font-size:16px}.work-row small{display:block;text-align:right;color:#777}.gallery-heading{margin-top:70px}.gallery-heading h3{font-size:26px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.filters button{border:1px solid var(--line);background:transparent;padding:8px 16px;font-size:12px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery button{border:0;background:none;padding:0;overflow:hidden;position:relative;aspect-ratio:4/3}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery button:hover img{transform:scale(1.05)}.gallery span{position:absolute;bottom:8px;left:8px;color:white;background:#202726ce;padding:3px 8px;font-size:9px;letter-spacing:1px}.qualifications{background:#eae9e0}.soa{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px}.tag{font-size:10px;padding:7px 12px;border:1px solid #aaa;letter-spacing:1px}.soa h3{font-size:35px;letter-spacing:-1px;margin-top:30px}.soa p{font-size:14px;color:#59605b}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--copper);padding-bottom:6px;display:inline-block}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}caption{text-align:left;margin-bottom:15px;font-size:14px}td,th{border-bottom:1px solid #c9cec3;padding:13px 8px}th{font-size:10px;letter-spacing:1px}td:first-child,td:last-child{font-weight:700;white-space:nowrap}.iso-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:60px}.iso-grid article{padding:35px;border:1px solid #c9cec3}.iso-grid h3{font-size:39px;letter-spacing:-1px;margin-bottom:20px}.iso-grid h3 span{font-size:22px;color:#69716a}.iso-grid p:not(.eyebrow){font-size:14px;color:#59605b}.iso-grid .eyebrow{font-size:9px}.contact{display:grid;grid-template-columns:1.3fr .7fr;gap:80px}.contact-mail{display:block;color:var(--light);font-size:clamp(18px,2.5vw,30px);margin:38px 0 10px}.contact-phone{font-size:22px}.addresses>div{margin-bottom:30px}.addresses h3{font-size:12px;color:var(--light);margin-bottom:8px}.addresses p{font-size:14px;margin-bottom:10px;color:#d4d8cf}.addresses a{font-size:12px;text-decoration:underline;text-underline-offset:5px}footer.wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:45px;padding-bottom:45px}footer p,footer>div{font-size:10px;color:#6a706a;margin:0}footer>div{text-align:right}footer .brand{font-size:26px}footer .brand small{font-size:6px}dialog{background:#141b19;color:white;border:0;padding:50px 70px;width:95vw;max-width:1400px;height:90vh}dialog::backdrop{background:#000d}dialog figure{margin:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}dialog img{max-width:100%;max-height:calc(100% - 40px);object-fit:contain}dialog figcaption{font-size:12px}dialog button{position:absolute;border:1px solid #ffffff44;background:#202726;color:white;z-index:2;width:40px;height:40px}.close{top:8px;right:8px;font-size:24px}.lb-prev{left:12px;top:50%}.lb-next{right:12px;top:50%}.skip{position:fixed;top:-80px;z-index:100;background:white;padding:15px}.skip:focus{top:0}body.modal-open{overflow:hidden}.reveal{animation:fade-in .8s both}@keyframes fade-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero-content{padding-top:135px}}@media(max-width:950px){.wrap{padding:75px 30px}header{padding:0 30px}nav{gap:18px}.intro{gap:35px}.services{grid-template-columns:1fr 1fr;gap:20px}.services article:nth-child(3){border:0;padding-left:0}.section-head{gap:30px}.project-image{height:270px}.gallery{grid-template-columns:repeat(3,1fr)}.soa{gap:30px;grid-template-columns:1fr 1fr}.contact{gap:30px}.finance-grid{grid-template-columns:repeat(3,1fr)}.hero-bottom>a{display:none}}
@media(max-width:650px){html{scroll-padding-top:76px}header{height:76px;padding:0 22px}.brand{font-size:27px}.brand small{font-size:6px;letter-spacing:1.5px;margin-top:8px}.menu{display:block;background:none;border:1px solid var(--line);padding:5px 12px}nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--paper);padding:20px;align-items:stretch;flex-direction:column;box-shadow:0 15px 25px #0002}nav.open{display:flex}nav a{padding:8px}.hero{min-height:590px;height:calc(90svh - 76px)}.hero-content{padding:85px 24px 110px}h1{font-size:57px;letter-spacing:-2.5px}.hero-content>p:not(.eyebrow){font-size:14px}.hero-bottom{left:24px;right:24px;letter-spacing:.5px;font-size:8px}.slider-controls{gap:8px}.slider-controls button{width:28px;height:30px}.wrap{padding:65px 24px}.intro,.soa,.contact{grid-template-columns:1fr;gap:25px}.intro .lead{font-size:18px}h2{font-size:39px;letter-spacing:-1.6px}.stats{gap:10px}.stats>div{padding-left:12px}.stats strong{font-size:36px}.stats span{font-size:10px;display:block;line-height:1.5}.finance-grid{grid-template-columns:repeat(2,1fr)}.section-head{display:block;margin-bottom:30px}.section-head>p{max-width:none}.services{gap:15px}.services article{padding:15px}.services h3{font-size:21px;margin-top:24px}.services p{font-size:12px}.project-grid{grid-template-columns:1fr;gap:40px}.project-image{height:280px}.project p{min-height:0}.project h3{font-size:27px}.gallery{grid-template-columns:1fr 1fr}.filters{gap:6px}.filters button{padding:7px 10px;font-size:10px}.work-row{flex-direction:column;gap:10px}.work-row small{text-align:left}.iso-grid{grid-template-columns:1fr;gap:20px;margin-top:35px}.iso-grid article{padding:25px}.soa h3{font-size:31px}.contact h2{font-size:39px}.contact-mail{font-size:21px}.addresses{margin-top:20px}footer.wrap{align-items:flex-start;flex-direction:column;gap:25px}footer>div{text-align:left}dialog{width:100vw;height:90svh;padding:45px 40px}.lb-prev{left:3px}.lb-next{right:3px}dialog button{width:32px;height:36px}dialog figcaption{font-size:10px;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.wb-grid{display:grid;grid-template-columns:1.5fr .5fr;align-items:center;gap:80px}.whistleblowing{background:#ede5d9}.wb-grid p:not(.eyebrow){max-width:620px;color:#59605b}.wb-qr{margin:0;text-align:center}.wb-qr>div{background:white;padding:14px;max-width:230px;margin:auto}.wb-qr svg{width:100%;display:block}.wb-qr figcaption{font-size:11px;margin-top:15px;color:#59605b}.wb-placeholder{max-width:860px;padding:90px 30px;margin:auto}.wb-placeholder h1{font-size:clamp(36px,5vw,58px);margin-top:60px;letter-spacing:-2px}.wb-placeholder p{max-width:680px}.policy-page{max-width:900px}.policy-page h1{font-size:48px;margin-top:30px;letter-spacing:-2px}.policy-page h2{font-size:24px;letter-spacing:-.5px;margin-top:38px}.policy-page p{font-size:15px}.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;z-index:50;max-width:1000px;margin:auto;display:flex;align-items:center;gap:25px;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 50px #0003;padding:25px 30px}.cookie-banner[hidden]{display:none}.cookie-banner h2{font-size:21px;margin:0 0 10px;letter-spacing:0}.cookie-banner p{font-size:13px;line-height:1.6;margin-bottom:10px}.cookie-links{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;text-decoration:underline;text-underline-offset:4px}.cookie-dismiss{border:0;padding:13px 22px;background:var(--ink);color:white;white-space:nowrap;font-size:12px}.cookie-reopen{border:0;background:none;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}header nav{gap:24px}
@media(max-width:1100px){header nav{gap:14px;font-size:12px}.nav-contact{padding:10px 13px}}@media(max-width:750px){.wb-grid{gap:35px;grid-template-columns:1fr}.wb-qr{max-width:220px}.cookie-banner{bottom:10px;left:10px;right:10px;padding:20px;gap:15px;display:block}.cookie-dismiss{margin-top:15px}.policy-page h1{font-size:36px}.policy-page h2{font-size:23px}}@media(min-width:651px) and (max-width:850px){header .brand{font-size:25px}header .brand small{font-size:6px}header{padding:0 20px}header nav{font-size:10px;gap:10px}}

header .brand{display:flex;align-items:center;flex-shrink:0;line-height:1}header .header-logo{display:block;width:215px;height:auto;max-height:78px;object-fit:contain}@media(max-width:850px){header .header-logo{width:175px}}@media(max-width:650px){header .header-logo{width:175px;max-height:62px}}
