:root{color-scheme:light;--ink:#12544F;--deep:#12544F;--accent:#2A835F;--paper:#fff;--line:rgba(18,84,79,.26);--max:76rem;--gutter:clamp(1.25rem,4vw,4rem);--section:clamp(4.5rem,9vw,8rem);--display:ui-serif,Georgia,Cambria,"Times New Roman",serif;--body:Arial,Helvetica,ui-sans-serif,system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--body);text-rendering:optimizeLegibility}a{color:inherit;text-underline-offset:.2em}a:hover{text-decoration-thickness:.12em}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.wrap{width:min(100%,var(--max));margin-inline:auto;padding-inline:var(--gutter)}.skip{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;background:var(--ink);color:#fff}.skip:focus{top:1rem}
.site-header{position:relative;z-index:20;border-bottom:1px solid var(--line);background:#fff}.header-row{min-height:5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.wordmark{font-size:1.15rem;font-weight:800;letter-spacing:-.035em;text-decoration:none}.site-nav{display:flex;gap:clamp(1rem,3vw,2.5rem);align-items:center}.site-nav a{text-decoration:none;font-size:.92rem}.site-nav a:hover{text-decoration:underline}.nav-toggle{display:none;min-height:2.75rem;align-items:center;justify-content:center;gap:.65rem;border:0;border-bottom:2px solid var(--accent);border-radius:0;background:transparent;color:var(--ink);padding:.35rem .1rem;font:700 .85rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.nav-toggle:hover{color:var(--accent)}.nav-toggle-icon{position:relative;display:block;width:1.05rem;height:1rem;flex:none}.nav-toggle-icon::before,.nav-toggle-icon::after{content:"";position:absolute;left:0;width:1.05rem;height:2px;background:currentColor}.nav-toggle-icon::before{top:.32rem}.nav-toggle-icon::after{bottom:.32rem}.nav-toggle[aria-expanded="true"] .nav-toggle-icon::before{top:.47rem;transform:rotate(45deg)}.nav-toggle[aria-expanded="true"] .nav-toggle-icon::after{bottom:.41rem;transform:rotate(-45deg)}
.eyebrow{margin:0 0 1.2rem;color:var(--deep);font-size:.76rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:500;letter-spacing:-.045em;line-height:.98}h1{max-width:15ch;font-size:clamp(3rem,7vw,6rem)}h2{max-width:18ch;font-size:clamp(2.3rem,5vw,4.4rem)}h3{font-size:1.08rem;line-height:1.3}.lede{max-width:43rem;color:var(--deep);font-size:clamp(1.15rem,2vw,1.42rem);line-height:1.45}.button{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;border:1px solid var(--ink);padding:.7rem 1.15rem;background:var(--ink);color:#fff;font-weight:750;text-decoration:none}.button.secondary{background:#fff;color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.hero{padding-block:clamp(4rem,10vw,8.5rem)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(15rem,.75fr);gap:clamp(3rem,8vw,8rem);align-items:end}.fact-rail{padding:1.5rem;background:var(--paper);color:var(--ink);border-left:.5rem solid var(--accent)}.fact-rail dl{display:grid;gap:1.2rem;margin:0}.fact-rail dl>div+div{padding-top:1.1rem;border-top:1px solid var(--line)}.fact-rail dt{color:var(--accent);font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}.fact-rail dd{margin:.15rem 0 0;font-weight:750}.fact-rail a{overflow-wrap:anywhere}
.section{padding-block:var(--section);border-top:1px solid var(--line)}.section.tint{background:var(--accent)}.section.tint .eyebrow,.section.tint .principle-list p{color:var(--ink)}.section-head{display:grid;grid-template-columns:minmax(9rem,.45fr) minmax(0,1.55fr);gap:2rem;margin-bottom:clamp(3rem,6vw,5rem)}.section-head>:last-child{max-width:52rem}.business-list,.principle-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--ink)}.business-row,.principle-list li{display:grid;grid-template-columns:minmax(11rem,.65fr) minmax(0,1.35fr);gap:2rem;padding-block:1.8rem;border-bottom:1px solid var(--line)}.business-row h3,.principle-list strong{margin:0}.business-copy>p,.principle-list p{margin:0;color:var(--deep)}.business-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem}.status{border:1px solid currentColor;padding:.25rem .5rem;font-size:.75rem}.status-build,.status-open{background:var(--accent);border-color:var(--deep)}.business-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.3rem 0 0}.business-detail div{padding-top:.8rem;border-top:1px solid var(--line)}.business-detail dt{color:var(--deep);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.business-detail dd{margin:.25rem 0 0}.company-link{display:inline-block;margin-top:1.2rem;font-weight:750}.contrast{background:var(--ink);color:#fff}.contrast .eyebrow{color:var(--accent)}.contrast .lede{color:#fff}.stage-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;background:rgba(255,255,255,.32);border:1px solid rgba(255,255,255,.32)}.stage-list li{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.5rem;background:var(--ink)}.stage-list span{color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:.1em}.stage-list strong{font-size:1.08rem}.stage-list p{margin:.4rem 0 0;color:#fff}.contact-block{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,8rem);align-items:end}.contact-block a{font-family:var(--display);font-size:clamp(1.35rem,2.1vw,2.2rem);overflow-wrap:anywhere}.site-footer{padding-block:3rem;border-top:1px solid var(--line);background:var(--ink);color:#fff}.footer-row{display:flex;justify-content:space-between;gap:2rem;font-size:.86rem}
@media(max-width:760px){.nav-toggle{display:inline-flex}.site-nav{display:none;position:absolute;inset:100% 0 auto;z-index:20;padding:1.25rem var(--gutter) 2rem;border-bottom:1px solid var(--line);background:#fff;flex-direction:column;align-items:flex-start}.nav-open .site-nav{display:flex}.hero-grid,.section-head,.contact-block{grid-template-columns:1fr}.business-row,.principle-list li{grid-template-columns:1fr;gap:.6rem}.business-detail,.stage-list{grid-template-columns:1fr}.footer-row{flex-direction:column}.hero{padding-block:4.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.wordmark{display:inline-flex;align-items:center;gap:.7rem}.wordmark img{display:block;flex:none}.footer-row address{margin-top:.55rem;font-style:normal;line-height:1.55}

/* Keep the editorial layout; let the brand colours live in type and details. */
.button{border-color:var(--accent);background:var(--paper);color:var(--deep)}
.button.secondary{border-color:var(--ink);color:var(--ink)}
.button:hover,.button.secondary:hover{color:var(--accent);text-decoration:underline}
.fact-rail{border-left-color:var(--accent);box-shadow:inset 0 0 0 1px var(--line);background:var(--paper);color:var(--ink)}
.fact-rail dl>div+div{border-top-color:var(--line)}
.fact-rail dt,.stage-list span,.contrast .eyebrow{color:var(--accent)}
.section.tint{background:var(--paper)}
.status-build,.status-open{border-color:var(--accent);background:var(--paper);color:var(--deep)}
.company-link,.contact-block a{color:var(--deep)}
.contrast{background:var(--paper);color:var(--ink)}
.contrast .lede,.stage-list p{color:var(--deep)}
.stage-list{border-color:var(--line);background:var(--line)}
.stage-list li{background:var(--paper)}
.site-footer{border-top-color:var(--accent);background:var(--paper);color:var(--ink)}

/* Keep enlarged and widely spaced text inside the mobile hero. */
.hero-grid>*{min-width:0}.hero-grid h1{overflow-wrap:anywhere}
@media(max-width:760px){.hero-grid{grid-template-columns:minmax(0,1fr)}}
