:root{--burgundy:#9b0030;--link:#079fcd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#212529;background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.5}a{color:var(--link)}a:hover{text-decoration:underline;color:#057a9e}.container{width:100%;padding-inline:15px;margin-inline:auto;max-width:1140px}.nav{background:#fafafa;position:sticky;top:0;z-index:5}.nav-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between}.nav img{display:block;width:32px;height:32px}.nav nav{display:flex;gap:26px}.nav nav a{font-size:16px;color:#555;text-decoration:none}.nav nav a:hover{color:#222}.hero{background:url('images/trees.png') center center/cover no-repeat;min-height:570px;display:grid;place-items:center;padding:110px 20px}.hero-card{background:#fff;border:5px solid #000;text-align:center;padding:32px 30px;width:min(100%,380px)}.wordmark{display:block;width:100%;max-width:290px;margin:0 auto 24px}.hero-card p{font-size:16px;line-height:1.5;margin:0}.section{padding-top:65px;padding-bottom:75px;scroll-margin-top:64px}h2,h3,h4{font-family:Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;line-height:1.2}h2{text-align:center;text-transform:uppercase;font-size:32px;margin:0 0 48px}h3{font-size:24px;margin:18px 0 14px}h4{font-size:24px}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;text-align:center}.three p{font-size:16px;line-height:1.5;margin:0}.feature-icon{width:110px;height:110px;object-fit:contain}.team{background:#eee}.subheading{text-align:center;margin:12px 0 20px}.team-intro{margin:0 auto 32px;font-size:16px}.people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin:28px auto 60px;text-align:center}.portrait{display:block;width:min(100%,310px);aspect-ratio:1;object-fit:cover;margin:auto;padding:4px;border:1px solid #ddd;border-radius:4px;background:white}.people h3{text-transform:uppercase;font-size:24px}.linkedin{width:32px;height:32px;object-fit:contain}.digest{background:#ff8c00 url('images/map-image.png') center center/auto no-repeat}.digest h2{color:#fff}.signup{background:#fff;border:5px solid #000;max-width:570px;margin:auto;padding:30px;text-align:center}.signup form{display:flex;gap:10px;align-items:center}.signup input[type=email]{font:16px Arial,sans-serif;min-width:0;flex:1;padding:10px;border:1px solid #aaa}.signup button{font:14px Montserrat,Arial,sans-serif;background:var(--burgundy);color:white;border:0;padding:12px 20px;cursor:pointer}.honeypot{position:absolute;left:-9999px}.contact .three{align-items:center;gap:16px}.contact p{overflow-wrap:anywhere}footer{text-align:center;background:#f5f5f5;color:#555;padding:20px 16px;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:576px) and (max-width:767px){.container{max-width:540px}}@media(min-width:768px) and (max-width:991px){.container{max-width:720px}}@media(min-width:992px) and (max-width:1199px){.container{max-width:960px}}@media(max-width:767px){.nav nav{gap:16px}.nav nav a{font-size:14px}.hero{min-height:480px;padding:70px 20px}.hero-card{padding:28px 22px}.section{padding-top:52px;padding-bottom:58px}h2{font-size:28px;margin-bottom:34px}h3{font-size:22px}.three{grid-template-columns:1fr;gap:35px}.three p{max-width:520px;margin:auto}.people{gap:20px}.portrait{width:100%}.people h3{font-size:18px}.signup form{flex-wrap:wrap}.signup input[type=email]{flex-basis:100%}.signup button{width:100%}.contact .three{gap:14px}}@media(max-width:390px){.nav nav{gap:11px}.nav nav a{font-size:13px}}

/* Faithfulness corrections based on original Bootstrap 4 markup */
.feature-icon{width:30%;max-width:none;height:auto;aspect-ratio:1;object-fit:contain}
.three article h3{font-size:24px;margin:16px 0 8px}
.team .subheading{font-size:28px;margin:0 0 8px;text-align:center}
.team-intro{margin:0 0 16px;font-size:16px;line-height:1.5}
.people{margin:0 auto 16px;gap:0}
.people article{padding:8px 48px 48px}
.portrait{width:100%;max-width:none;height:auto;aspect-ratio:auto;object-fit:contain;padding:4px;border:1px solid #dee2e6;border-radius:4px}
.people h3{font-size:24px;margin:16px 0 8px}
.linkedin{width:10%;height:auto;max-width:none}
.team .extended-title{margin-top:0}
.contact .three{align-items:start;gap:30px;text-align:left}
.contact-item{display:flex;align-items:center;gap:14px;min-width:0}
.contact-icon{width:30%;max-width:68px;height:48px;object-fit:contain;flex-shrink:0}
.contact-item p{margin:0;overflow-wrap:anywhere}
@media(max-width:767px){.people article{padding:8px 18px 32px}.team .subheading{font-size:26px}.people h3{font-size:20px}.contact .three{gap:24px}.contact-icon{width:52px;height:42px}}
@media(max-width:480px){.people{grid-template-columns:1fr}.people article{padding:8px 24px 28px}.portrait{max-width:400px}}

/* Responsive mobile navigation */
.nav-inner{position:relative}
.menu-toggle{display:none}
@media(max-width:767px){
  .menu-toggle{display:flex;width:44px;height:44px;padding:11px 9px;flex-direction:column;justify-content:space-between;align-items:center;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer}
  .menu-toggle span{display:block;width:24px;height:2px;background:#555;transition:transform .2s ease,opacity .2s ease}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(9px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-9px) rotate(-45deg)}
  .menu-toggle:focus-visible,.nav nav a:focus-visible{outline:2px solid var(--burgundy);outline-offset:2px}
  .nav nav{display:none;position:absolute;top:100%;left:15px;right:15px;z-index:6;flex-direction:column;gap:0;padding:6px 0;background:#fafafa;border-top:1px solid #e5e5e5;box-shadow:0 6px 12px rgba(0,0,0,.1)}
  .nav nav.is-open{display:flex}
  .nav nav a{padding:12px 16px;font-size:15px}
  .nav nav a+a{border-top:1px solid #eee}
}

/* Requested refinements to V3 */
.wordmark{width:75%;max-width:217.5px}
.contact-icon{width:15%;max-width:34px;height:24px}
@media(max-width:767px){.contact-icon{width:26px;height:21px}}

/* Contact email link refinement */
.contact-item a[href^="mailto:"]{color:#52616b;text-decoration:none}
.contact-item a[href^="mailto:"]:hover,.contact-item a[href^="mailto:"]:focus-visible{color:#9b0030;text-decoration:underline}

/* Team section spacing refinement */
.team h2{margin-bottom:20px}
.team .team-intro:first-of-type{margin-bottom:38px}

/* Contact spacing and single-line email */
.contact h2{margin-bottom:20px}
.contact-item a[href^="mailto:"]{white-space:nowrap}
@media(min-width:768px) and (max-width:991px){.contact-item a[href^="mailto:"]{font-size:13px}}
