:root{--navy:#0a243d;--navy2:#102d47;--ink:#102943;--muted:#526881;--bronze:#997855;--line:#dce3e9;--bg:#fff;--pale:#f8fafb;--container:1190px;--serif:"Libre Baskerville",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.58}img{max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(calc(100% - 80px),var(--container));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:10px;padding:12px;background:#fff;z-index:200}.skip-link:focus{top:10px}.site-header{height:78px;border-bottom:1px solid #e7eaed;background:#fff;position:relative;z-index:20}.site-header:before{content:"";position:absolute;right:27%;top:0;width:330px;height:100%;background:url('../svg/topo-header.svg') center/cover no-repeat;opacity:.25;pointer-events:none}.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{display:block;width:255px;height:auto}.main-nav{display:flex;align-items:center;gap:32px;font-family:var(--serif);font-size:12px}.main-nav>a:hover,.footer-inner a:hover,.text-action:hover{color:#176bb4}.main-nav .nav-cta{background:var(--navy2);color:white!important;border:1px solid var(--navy2);padding:11px 29px;border-radius:3px;min-width:125px;text-align:center}.main-nav .nav-cta:hover,.button-navy:hover{background:#1a4667}.mobile-toggle{display:none}.hero{min-height:450px;position:relative;overflow:hidden;background:linear-gradient(125deg,#fff 4%,#f5f8f9 67%,#f7f9fa 100%)}.hero-art{position:absolute;right:0;top:0;width:64%;height:100%;background:url('../images/approved-hero-mountains.webp') 50% 49%/cover no-repeat}.hero-art:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.92) 7%,rgba(255,255,255,.58) 27%,rgba(255,255,255,0) 53%)}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(255,255,255,.04),transparent 46%)}.topography{position:absolute;z-index:1;pointer-events:none;background-repeat:no-repeat;background-size:cover;opacity:.52}.topo-hero-left{left:-240px;bottom:-260px;width:620px;height:520px;background-image:url('../svg/topo-left.svg')}.topo-hero-right{right:-320px;bottom:-160px;width:620px;height:520px;background-image:url('../svg/topo-right.svg')}.hero-inner{position:relative;z-index:2;display:flex;min-height:450px;align-items:center}.hero-copy{width:55%;padding:44px 0 55px}.eyebrow{letter-spacing:.23em;color:#5f7790;font-family:var(--serif);font-weight:700;font-size:10px;line-height:1.4;margin:0 0 14px}.hero h1,h2,h3{font-family:var(--serif);color:var(--navy);font-weight:400;letter-spacing:-.035em}.hero h1{font-size:clamp(32px,4vw,54px);line-height:1.18;margin:0 0 18px}.hero-desc{max-width:490px;line-height:1.55;color:#50677f;font-size:16px;margin:0}.hero-actions{display:flex;gap:18px;margin-top:21px}.button{display:inline-flex;gap:17px;align-items:center;justify-content:center;min-height:44px;padding:11px 29px;border-radius:3px;border:1px solid #9eafbe;font-family:var(--serif);font-size:12px;transition:background .18s,color .18s,transform .18s}.button:hover{transform:translateY(-1px)}.button-navy{background:var(--navy2);border-color:var(--navy2);color:#fff}.button-outline{background:rgba(255,255,255,.75);color:#163d60}.button-outline:hover{background:#eff5fa}.hero-mantra,.hero-rooted{position:absolute;font-family:var(--serif);font-size:9px;letter-spacing:.23em;line-height:2.0;font-weight:700;color:#55738d}.hero-mantra{right:10.5%;top:44px}.mantra-rule{display:block;width:25px;height:1px;background:#6c8093;margin-top:16px}.hero-rooted{right:0;bottom:40px;font-size:8px;letter-spacing:.21em}.value-strip{background:#fff;border-bottom:1px solid #f0f2f4}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:20px 0}.value-grid>div{display:flex;align-items:center;gap:25px;padding:0 33px;border-right:1px solid var(--line)}.value-grid>div:first-child{padding-left:0}.value-grid>div:last-child{border:0}.value-grid img{width:45px;height:45px;filter:sepia(.4) saturate(.5)}.value-grid h3{font-size:16px;margin:0 0 3px}.value-grid p{margin:0;color:var(--muted);font-size:13px}.section-space{padding:66px 0}.section-tonal{background:linear-gradient(126deg,#f8fafb,#fff 42%,#f7f9fa 97%);position:relative;overflow:hidden}.section-space h2,.about-preview h2{font-size:clamp(27px,3vw,34px);line-height:1.19;margin:0 0 17px}.about-preview{position:relative;padding:54px 0 46px}.topo-section-right{background-image:url('../svg/topo-right.svg');width:550px;height:540px;right:-230px;top:-25px;opacity:.54}.about-grid{display:grid;grid-template-columns:1.55fr .95fr .45fr;gap:30px;align-items:center;position:relative;z-index:2}.about-grid>div>p:not(.eyebrow),.about-inner p{color:var(--muted);max-width:590px;margin:0 0 24px}.about-grid>img{height:275px;width:100%;object-fit:cover;border-radius:2px;display:block}.aside-mantra{font-family:var(--serif);letter-spacing:.24em;font-size:10px;font-weight:700;line-height:2.3;color:#7990a2;margin:auto}.aside-mantra span{display:block;width:26px;height:1px;background:#8b9fae;margin:15px 0}.focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:20px}.focus-card{border:1px solid #dce4e9;padding:23px 27px 29px;min-height:186px;background:rgba(255,255,255,.83);border-radius:3px}.focus-card img{width:46px;height:46px}.focus-card h3{font-size:17px;line-height:1.25;margin:10px 0 10px}.focus-card p{color:#536a81;margin:0;max-width:285px;font-size:14px;line-height:1.52}.investments{background:#f9fbfc}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading h2{margin-bottom:0}.text-action{color:#1e5892;font-family:var(--serif);font-size:13px;font-weight:700;white-space:nowrap}.text-action span{font-size:18px;margin-left:8px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:18px}.portfolio-card{min-height:256px;padding:25px 26px;border:1px solid #dce3e7;background:#fff;border-radius:3px;position:relative;display:flex;flex-direction:column;align-items:start}.portfolio-card .ic-logo{width:232px;max-height:72px;height:62px;object-fit:contain;object-position:left center;margin:-5px 0 9px}.portfolio-card p{margin:8px 0 14px;line-height:1.52;color:#526b82;max-width:305px;font-size:14px}.chip-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.chip-row span,.pill{font-family:var(--sans);font-size:11px;border-radius:12px;padding:3px 13px;background:#e9eef2;color:#526479}.portfolio-card .text-action{margin-top:auto}.featured-pill{position:absolute;top:14px;right:14px;background:#e1ecfa;color:#1d66bb;font-size:10px;font-weight:700;letter-spacing:.04em}.portfolio-card.placeholder img{width:55px;height:55px;opacity:.72}.portfolio-card.placeholder h3{font-size:20px;margin:14px 0 1px}.portfolio-card.placeholder .pill{margin-top:auto}.contact-banner{position:relative;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(6,28,43,.93),rgba(16,41,58,.70)),url('../images/approved-mountains-alt.webp') center 45%/cover no-repeat}.banner-inner{padding:28px 0;min-height:150px;display:grid;align-items:center;grid-template-columns:1fr auto 160px;gap:42px}.contact-banner h2{color:#fff;font-size:26px;margin:2px 0 8px}.eyebrow-light{color:#d6e1e8}.contact-banner p:not(.eyebrow){font-size:13px;line-height:1.5;max-width:550px;margin:0;color:#e1e9ee}.button-light{background:#fff;border-color:#fff;color:#16354e;min-width:158px}.banner-mantra{font-family:var(--serif);color:#e1eaf1;letter-spacing:.27em;font-size:9px;line-height:1.9;border-left:1px solid #a7b9c7;padding-left:26px}.site-footer{border-top:1px solid #e1e6eb;background:#fff}.footer-inner{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner img{width:220px}.footer-inner nav{display:flex;gap:31px;font-family:var(--serif);font-size:11px}.footer-inner p{font-size:11px;color:#7b8e9b;line-height:1.55}.about-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-inner>img{width:100%;max-height:305px;object-fit:cover;border-radius:2px}.about-inner h2{margin:5px 0 22px}.about-inner-reverse{grid-template-columns:1fr 1fr}.focus-grid.four{grid-template-columns:repeat(4,1fr)}.focus-grid.four .focus-card{padding:18px;min-height:210px}.heading-note{max-width:365px;color:#657c90;margin:0;font-size:14px}.quote-divider{text-align:center;font:italic 17px var(--serif);color:#6c8296;background:#f8fafb;margin:18px 0 0;padding:20px}.contact-grid{display:grid;grid-template-columns:1.5fr .95fr;gap:22px}.contact-panel{border:1px solid #d9e2e9;background:#fff;padding:35px 40px;border-radius:3px}.contact-panel h2{font-size:30px}.contact-panel>p{color:#60758a;margin-top:-5px}.contact-panel label{display:block;font-size:13px;color:#324d67;margin:14px 0 0;font-weight:600}.contact-panel label span{color:#a27b58}.contact-panel label small{font-size:11px;font-weight:400;color:#788c9d}.contact-panel input,.contact-panel textarea,.contact-panel select{display:block;width:100%;background:#fff;color:#122b45;border:1px solid #c9d7e2;border-radius:2px;min-height:42px;padding:11px 13px;margin-top:5px;outline:none}.contact-panel textarea{resize:vertical;min-height:130px}.contact-panel input:focus,.contact-panel select:focus,.contact-panel textarea:focus{border-color:#2c6a9a;box-shadow:0 0 0 3px rgba(27,90,143,.12)}.button.full{width:100%;margin-top:20px}.form-small{font-size:12px;color:#738698;text-align:center;margin:12px 0 0}.form-feedback{font-size:13px;margin:8px 0;color:#1d6a48}.form-feedback.error{color:#a52c31}.honeypot{position:absolute;left:-10000px;opacity:0}.contact-aside{padding:34px}.contact-row{display:flex;align-items:start;gap:17px;margin:29px 0}.contact-row img{height:32px;width:32px;flex:none;filter:sepia(.4)}.contact-row div{display:flex;flex-direction:column}.contact-row strong{font-family:var(--serif);font-size:15px;font-weight:400}.contact-row span,.contact-row a{font-size:14px;color:#5c7187;margin-top:3px}.contact-row a{color:#135e9c}.contact-motto{border-top:1px solid #dde6ed;padding:25px 0 20px;letter-spacing:.18em;font-family:var(--serif);color:#70869b;font-weight:700;font-size:10px;line-height:2.1}.contact-aside>img{width:100%;height:205px;object-fit:cover}.form-feedback:empty{display:none}
@media(max-width:900px){.wrap{width:calc(100% - 48px)}.hero h1{font-size:35px}.hero-copy{width:64%}.hero-mantra{right:3%}.hero-rooted{display:none}.about-grid{grid-template-columns:1.25fr 1fr}.aside-mantra{display:none}.focus-grid.four{grid-template-columns:repeat(2,1fr)}.main-nav{gap:17px}.brand img{width:210px}.contact-grid{grid-template-columns:1fr 0.8fr}.contact-panel{padding:24px}.portfolio-card{padding:18px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.site-header{height:74px}.brand img{width:215px}.mobile-toggle{display:block;background:#fff;border:1px solid #d8e2e9;color:var(--navy);border-radius:3px;padding:9px 12px}.main-nav{display:none;position:absolute;top:74px;right:17px;left:17px;background:white;border:1px solid #e2e9ed;box-shadow:0 13px 35px rgba(0,20,40,.12);padding:20px;flex-direction:column;align-items:stretch;text-align:center;gap:15px}.main-nav.is-open{display:flex}.hero{min-height:510px}.hero-inner{min-height:510px;align-items:start}.hero-art{width:100%;height:100%;background-position:center bottom;opacity:.54}.hero-art:before{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.93) 35%,rgba(255,255,255,.43) 90%)}.hero-copy{width:100%;padding:45px 0 0}.hero h1{font-size:31px;line-height:1.25}.hero-desc{font-size:14px;max-width:500px}.hero-mantra,.hero-rooted{display:none}.hero-actions{gap:8px}.hero-actions .button{padding-inline:17px}.value-grid{grid-template-columns:1fr;padding:15px 0}.value-grid>div,.value-grid>div:first-child{padding:12px 0;border-right:0;border-bottom:1px solid var(--line)}.value-grid>div:last-child{border-bottom:0}.about-preview,.section-space{padding:42px 0}.about-grid,.about-inner,.about-inner-reverse{grid-template-columns:1fr}.about-grid>img{height:250px}.aside-mantra{display:none}.focus-grid,.portfolio-grid,.focus-grid.four,.contact-grid{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column;gap:14px}.focus-card{min-height:auto}.portfolio-card{min-height:230px}.banner-inner{grid-template-columns:1fr;gap:17px;padding:35px 0}.banner-mantra{display:none}.button-light{justify-self:start}.footer-inner{flex-direction:column;align-items:start;padding:20px 0;gap:12px}.footer-inner nav{gap:20px}.footer-inner p{margin:0}.contact-panel{padding:20px}.contact-panel h2{font-size:25px}.contact-banner h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Keyboard focus, readable microcopy and robust tablet layout. */
:focus-visible{outline:3px solid #997855;outline-offset:4px}
.button:disabled{cursor:wait;opacity:.65;transform:none}
.hero-mantra,.hero-rooted{text-shadow:0 1px 6px #fff}
.hero-art{max-width:980px}
.hero-rooted{background:rgba(255,255,255,.84);padding:12px 16px;border-radius:2px}
.portfolio-card.featured{padding-top:42px}
.form-feedback a{text-decoration:underline}
.contact-row div{min-width:0}.contact-row a{overflow-wrap:anywhere}
@media(min-width:651px) and (max-width:900px){.main-nav{gap:13px}.brand img{width:180px}.main-nav .nav-cta{padding:10px 14px;min-width:0}.value-grid>div{gap:12px;padding-inline:14px}.contact-grid{grid-template-columns:1fr}.banner-inner{grid-template-columns:1fr auto;gap:24px}.banner-mantra{display:none}.portfolio-card .ic-logo{height:auto}.chip-row{gap:5px}.portfolio-card .text-action{white-space:normal}}
