:root{--ink:#152b3a;--navy:#102c3d;--blue:#176d85;--teal:#097a85;--muted:#546773;--line:#d9e3e7;--pale:#f2f7f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font:16px/1.65 Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.045em}p{color:var(--muted)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #35a5bc;outline-offset:5px}ul{padding:0;margin:0}button{color:inherit}[hidden]{display:none!important}.wrap{width:min(1180px,calc(100% - 96px));margin:auto}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:#fff;padding:10px}.skip:focus{top:10px}header{position:sticky;top:0;background:#fffffff5;border-bottom:1px solid var(--line);z-index:10;backdrop-filter:blur(12px)}.navigation{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:14px}.brand>span:last-child{font-size:.68rem;line-height:1.5;letter-spacing:.13em}.brand b{font-size:.74rem}.monogram{font-size:3rem;font-weight:700;letter-spacing:-.1em;line-height:1}.monogram>span{color:var(--teal)}nav{display:flex;align-items:center;gap:26px}nav a{font-size:.8rem;font-weight:600}nav a:hover{color:var(--teal)}.menu-toggle{display:none}.button{border:1px solid var(--teal);background:var(--teal);color:#fff;padding:15px 23px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:.875rem;font-weight:600;line-height:1.5;min-height:52px}.button:hover{background:#075e68;border-color:#075e68}.button.small{min-height:42px;padding:10px 18px}.button.outline{background:transparent;color:var(--teal)}.button.outline:hover{background:#e5f1f2}.button.light{background:#fff;border-color:#fff;color:var(--navy)}.hero{background:linear-gradient(110deg,#fff 55%,#eef7f8);padding:74px 0 70px}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:75px;align-items:center}.eyebrow{font-size:.66rem;letter-spacing:.15em;font-weight:700;color:var(--teal);margin-bottom:22px}.hero h1{font-size:clamp(3.3rem,5.8vw,5.2rem);line-height:1.03;letter-spacing:-.07em}.hero h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em;color:var(--teal)}.lead{font-size:1.025rem;line-height:1.85;margin-top:28px;max-width:540px}.actions{display:flex;align-items:center;gap:25px;margin-top:30px;flex-wrap:wrap}.text-link{font-size:.85rem;font-weight:600;color:var(--teal);border:0;background:none;padding:0}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.location{font-size:.62rem;letter-spacing:.11em;font-weight:700;margin-top:35px}.location span{padding:0 9px;color:var(--teal)}.blueprint{background:var(--navy);color:#fff;border-radius:5px;padding:31px;box-shadow:16px 18px 0 #dcecee}.blueprint-top{display:flex;justify-content:space-between;align-items:center;font-size:.59rem;letter-spacing:.13em;color:#bcd9e4}.live-dot{background:#8ce0db;width:7px;height:7px;border-radius:50%}.blueprint-heading{padding:28px 0}.big-b{font-weight:700;font-size:4rem;line-height:1;color:#a4d8de;letter-spacing:-.1em}.blueprint h2{font-size:2.15rem;margin:18px 0}.blueprint p{color:#bdd0dc;font-size:.875rem;line-height:1.75}.blueprint-rows{border-top:1px solid #ffffff30}.blueprint-rows a{display:flex;gap:16px;align-items:center;border-bottom:1px solid #ffffff30;padding:18px 0;font-size:.68rem;letter-spacing:.05em;font-weight:600}.blueprint-rows a:hover{color:#a4d8de}.blueprint-rows a>span{color:#8cbecb;font-size:.62rem}.blueprint-rows i{font-style:normal;margin-left:auto;font-size:1rem}.blueprint-foot{display:flex;justify-content:space-between;color:#b3d1dc;font-size:.56rem;letter-spacing:.1em;padding-top:24px}.credentials{border-block:1px solid var(--line);background:#f8fbfc}.credentials .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding-block:26px;gap:30px}.credentials b{display:block;font-size:1rem}.credentials span{font-size:.78rem;color:var(--muted)}.section{padding:94px 0}.section h2{font-size:clamp(2rem,3.5vw,3rem)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:38px}.section-heading>p{font-size:.9375rem;line-height:1.8;max-width:395px}.tabs{display:grid;grid-template-columns:1fr 1.25fr 1fr;border-bottom:1px solid var(--line)}.tabs button{border:0;border-bottom:3px solid transparent;background:#f2f6f7;line-height:1.5;padding:22px 18px;text-align:left;font-size:.875rem;font-weight:600}.tabs button span{font-size:.66rem;color:var(--muted);margin-right:10px}.tabs button[aria-selected=true]{border-bottom-color:var(--teal);background:#e6f2f3;color:var(--teal)}.service-panel{display:grid;grid-template-columns:.9fr 1.2fr;border:1px solid var(--line);border-top:0}.panel-intro{padding:38px;background:#f6f9fa}.panel-intro h3{font-size:2rem;line-height:1.17}.panel-intro>p:not(.eyebrow){margin:22px 0 28px;font-size:.9375rem;line-height:1.8}.panel-intro .button{font-size:.8rem;padding:13px 18px}.panel-content{padding:38px}.panel-content>div{margin-bottom:25px}.panel-content>div>span{font-size:.6rem;letter-spacing:.12em;color:var(--teal);font-weight:700}.panel-content h4{font-size:1.15rem;letter-spacing:-.025em;margin:9px 0 10px}.panel-content p{font-size:.875rem;line-height:1.8}.deliverable{border-top:1px solid var(--line);padding-top:19px}.deliverable b{display:block;color:var(--ink);margin-bottom:5px}.scope-note{font-size:.73rem!important;margin-top:16px}.profile{background:var(--pale)}.profile-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.profile h2{font-size:3.6rem}.profile h2>span{color:var(--teal)}.profile-role{margin:24px 0 28px;font-size:.9375rem;line-height:1.8}.biography>p{margin-bottom:19px;font-size:.9375rem;line-height:1.9}.biography .intro{font-size:1.2rem;color:var(--ink);line-height:1.65}.qualification{display:flex;gap:19px;border-top:1px solid #ccdce2;padding-top:22px}.qualification>span{font-size:1.3rem;color:var(--teal)}.qualification b{font-size:.9rem}.qualification p{font-size:.83rem;margin-top:6px}.work-heading{margin:60px 0 26px;display:flex;justify-content:space-between;gap:30px;align-items:center}.work-heading h3{font-size:1.35rem}.work-heading p{font-size:.8rem}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.work-grid article{border-top:3px solid var(--teal);padding:27px;background:#fff;display:flex;flex-direction:column}.work-grid .eyebrow{font-size:.59rem}.work-grid h3{font-size:1.35rem;line-height:1.2;margin:0 0 17px}.work-grid article>p:not(.eyebrow){font-size:.85rem;line-height:1.8;margin-bottom:22px}.work-grid article>span,.work-links{font-size:.72rem;color:var(--teal);margin-top:auto;font-weight:600}.work-links{display:flex;flex-wrap:wrap;gap:10px}.mining{background:var(--navy);color:#fff}.mining .eyebrow{color:#9cd8df}.mining .section-heading>p{color:#bfd2dc}.pills{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:34px}.pills>span{font-size:.72rem;padding:7px 13px;border:1px solid #ffffff30;border-radius:4px;color:#d3e4eb}.phases{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #ffffff30}.phases article{padding:30px;border-right:1px solid #ffffff30}.phases article:last-child{border-right:0}.phases article>span{font-size:.62rem;letter-spacing:.12em;color:#9cd8df}.phases h3{font-size:1.7rem;margin:25px 0 19px}.phases p{font-size:.875rem;line-height:1.8;color:#c4d7e0}.phases b{display:block;font-size:.78rem;line-height:1.7;margin-top:24px;font-weight:500;color:#e7f1f5}.mine-bottom{display:flex;align-items:center;gap:40px;justify-content:space-between;margin-top:28px}.mine-bottom p{font-size:.73rem;line-height:1.8;max-width:700px;color:#aec8d4}.mine-bottom .button{white-space:nowrap}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process>div{border-top:1px solid var(--line);padding-top:20px}.process span{font:italic 1.8rem Georgia,serif;color:var(--teal)}.process h3{font-size:1.2rem;margin:20px 0 14px}.process p{font-size:.875rem;line-height:1.8}.contact{background:#edf5f6}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.contact-grid>div>p:not(.eyebrow){max-width:370px;font-size:.9375rem;line-height:1.8;margin-top:25px}.contact-links{display:grid;gap:18px;margin-top:35px;font-size:.85rem;color:var(--teal);overflow-wrap:anywhere}.contact form{padding:32px;border:1px solid #cfdee3;background:#fff;border-radius:7px}.contact h3{font-size:1.45rem;margin-bottom:25px}.contact label{display:block;font-size:.8rem;font-weight:600;margin-bottom:7px}.contact label>span{font-weight:400;color:var(--muted)}.contact input,.contact select,.contact textarea{display:block;width:100%;padding:11px;border:1px solid #bbcfd6;border-radius:4px;min-height:45px;margin-bottom:19px;color:var(--ink);background:#fff;font-size:1rem}.contact textarea{resize:vertical;min-height:115px}.contact input:focus,.contact select:focus,.contact textarea:focus{outline:2px solid #a4d8de;outline-offset:1px}.form-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:25px}.form-actions .button{font-size:.8rem}.form-note{font-size:.73rem;margin-top:19px;line-height:1.7}#contact-status{font-size:.8rem;margin-top:12px;color:var(--teal)}footer{background:#0e2433;color:#fff;padding-top:40px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-bottom:35px}.footer-top p{font-size:.8rem;color:#adc7d4}.footer-top>a:last-child{font-size:.75rem;color:#bbd2dd;line-height:1.8}.footer-top b{color:#e4f3f7}.footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:20px;font-size:.68rem;color:#b1c9d6;padding-block:22px}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero-grid{gap:40px}.profile-grid,.contact-grid{gap:45px}.blueprint{padding:26px}nav{gap:18px}nav a{font-size:.73rem}.section-heading{gap:35px}.tabs button{font-size:.78rem;padding:19px 15px}.panel-intro,.panel-content{padding:28px}.phases article{padding:25px}.hero h1{font-size:4.2rem}.work-grid article{padding:23px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr 1fr;gap:28px}.hero h1{font-size:3.6rem}.blueprint h2{font-size:1.8rem}.navigation{height:80px}.menu-toggle{display:flex;gap:18px;background:none;border:1px solid var(--line);padding:9px 12px;font-size:.8rem}.navigation nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;padding:20px 32px;box-shadow:0 12px 20px #12304418;flex-direction:column;align-items:stretch;gap:0}.navigation nav.open{display:flex}.navigation nav a{padding:13px;font-size:.875rem}.navigation nav .button{margin-top:8px}.work-grid{grid-template-columns:1fr}.work-grid article{padding:28px}.work-heading{display:block}.work-heading p{margin-top:12px}.section-heading{display:block}.section-heading>p{margin-top:23px;max-width:100%}.process{grid-template-columns:1fr 1fr}.tabs{grid-template-columns:1fr}.tabs button{font-size:.9rem;padding:16px 20px}.service-panel{grid-template-columns:1fr 1.2fr}.profile-grid{gap:35px}.profile h2{font-size:3rem}.phases h3{font-size:1.5rem}.phases article{padding:22px}.contact-grid{gap:35px}.form-actions{flex-direction:column;align-items:stretch}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.hero{padding:43px 0 52px}.hero-grid,.profile-grid,.contact-grid,.service-panel{grid-template-columns:1fr}.hero-grid{gap:36px}.hero h1{font-size:clamp(3rem,12.3vw,4.5rem)}.eyebrow{font-size:.61rem}.lead{font-size:.9375rem;line-height:1.8;margin-top:24px}.actions{gap:20px}.location{font-size:.55rem}.blueprint{margin-right:10px;box-shadow:10px 12px 0 #dcecee;padding:27px}.blueprint-heading{padding:23px 0}.blueprint h2{font-size:2rem}.big-b{font-size:3.2rem}.blueprint-rows a{padding:16px 0}.credentials .wrap{grid-template-columns:1fr;gap:15px;padding-block:23px}.credentials .wrap>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.credentials b{font-size:.8rem;white-space:nowrap}.credentials span{font-size:.68rem}.section{padding:58px 0}.section h2{font-size:2.2rem}.section-heading{margin-bottom:29px}.section-heading>p{font-size:.875rem}.panel-intro,.panel-content{padding:27px 24px}.panel-intro h3{font-size:1.95rem}.profile h2{font-size:3.15rem}.biography .intro{font-size:1.1rem}.phases{grid-template-columns:1fr}.phases article{border-right:0;border-bottom:1px solid #ffffff30;padding:27px}.phases article:last-child{border-bottom:0}.phases h3{font-size:1.8rem;margin:20px 0 15px}.phases h3 br{display:none}.mine-bottom{display:block}.mine-bottom .button{margin-top:24px}.process{gap:27px 22px}.process h3{font-size:1.1rem}.contact form{padding:27px 22px}.contact-grid>div>p:not(.eyebrow){max-width:100%}.form-actions .button{font-size:.8rem}.footer-top{display:grid;gap:23px}.footer-bottom{flex-wrap:wrap;font-size:.65rem;gap:12px}.footer-bottom>span:nth-child(2){display:none}.brand>span:last-child{font-size:.6rem}.brand b{font-size:.7rem}.monogram{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,.hero,.credentials,#expertise,#business,.approach,.contact,footer,.profile .button{display:none}.profile{background:#fff;padding:0}.wrap{width:100%}.profile-grid{display:block}.profile h2{font-size:30pt}.profile h2 br{display:none}.biography{margin-top:25px}.work-heading{margin-top:30px}.work-grid{display:block}.work-grid article{break-inside:avoid;border:0;padding:15px 0}.profile .eyebrow{color:#222}.profile{font-size:10pt}@page{size:A4;margin:18mm}}

.about-portrait{display:block;width:100%;max-width:320px;height:auto;aspect-ratio:1;object-fit:contain;border-radius:8px;border:1px solid #d0dfe4;margin-bottom:25px;box-shadow:9px 10px 0 #dce8ec;}@media(max-width:600px){.about-portrait{max-width:320px;margin-bottom:28px;}}@media print{.about-portrait{width:140px;box-shadow:none;float:right;margin:0 0 15px 25px;}}

.official-logo{display:block;width:250px;height:auto;object-fit:contain;}.brand>img{flex-shrink:0}footer .brand{background:#fff;padding:3px 12px;border-radius:5px;}footer .official-logo{width:230px}.board-logo{display:block;width:235px;max-width:100%;height:auto;background:#fff;border-radius:4px;padding:4px 10px;margin-bottom:20px;}@media(max-width:600px){.official-logo{width:190px}footer .official-logo{width:220px}.board-logo{width:220px}}
