*{box-sizing:border-box}:root{--paper:#e0f0fc;--soft:#c3e3f8;--sky:#47afe0;--blue:#125d91;--ink:#123047;--muted:#38566d;--line:#9bc9e6}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:var(--blue)}a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:10000}.skip:focus{top:12px}header{background:white;border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 0}.brand{font-size:31px;font-weight:700;letter-spacing:-1px;text-decoration:none}.provider{font-size:12px;margin:0;color:var(--muted)}nav{display:flex;gap:28px}nav a{text-decoration:none;color:var(--ink);font-size:14px;padding:8px 0}nav [aria-current]{border-bottom:2px solid var(--blue)}.hero{padding:65px 0 70px;display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:50px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.7px;font-weight:700;color:var(--blue);margin:0 0 16px}h1{font-size:clamp(36px,4.5vw,58px);line-height:1.12;font-weight:500;letter-spacing:-1.8px;margin:0 0 24px}h2{font-size:clamp(27px,3vw,35px);line-height:1.2;font-weight:500;letter-spacing:-.6px;margin:0 0 16px}h3{font-size:21px;line-height:1.3;font-weight:500;margin:12px 0}.name{color:var(--blue);font-size:15px;font-weight:700}.intro{color:var(--muted);font-size:17px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.button{display:inline-block;padding:12px 18px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:5px;text-decoration:none;font-size:14px}.button:hover{background:#0c4873}.secondary{background:white;color:var(--blue)}.secondary:hover{background:var(--soft)}.photo-area{aspect-ratio:5/4;border:1px solid var(--line);border-radius:9px;background:linear-gradient(140deg,#a8d7f3,#d2ebfc 55%,#8dcbed);display:flex;align-items:center;justify-content:center}.photo-area svg{width:90px;color:var(--blue);opacity:.65}.section{padding:58px 0;scroll-margin-top:20px}.heading{max-width:780px;margin-bottom:30px}.heading p:last-child{color:var(--muted)}.services{background:var(--soft);border-block:1px solid var(--line)}.grid,.stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}.card{padding:28px;border:1px solid var(--line);border-top:3px solid var(--sky);border-radius:7px;background:white;min-width:0}.card-label{display:block;font-size:11px;letter-spacing:1.3px;color:var(--blue);text-transform:uppercase}.card h3{font-size:21px;line-height:1.3;font-weight:500;margin:12px 0}.card p{font-size:15px;color:var(--muted);margin:0}.stats{opacity:1;transition:opacity 250ms ease}.stats.is-changing{opacity:0}.registrations{background:white;border-block:1px solid var(--line)}.registration-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:start}.map-panel{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:14px}.map-panel svg{display:block;width:100%;height:auto}.legend{font-size:12px;color:var(--muted);margin:12px 5px}.swatch{display:inline-block;width:14px;height:10px;background:var(--sky);border:1px solid var(--blue);margin-right:7px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:23px}.panel h3{margin-top:0}.licenses{list-style:none;padding:0;margin:0}.licenses li{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.licenses a{font-weight:700;white-space:nowrap;text-underline-offset:4px}.canada-heading{margin-top:24px!important}.note{font-size:13px;color:var(--muted)}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.contact p{max-width:680px;color:var(--muted)}.contact .button{flex-shrink:0}.contact{background:#a8d7f3;border-top:1px solid var(--line);padding:45px 0}footer{padding:26px 0;background:#bddff5;color:var(--muted);font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:24px}.footer-inner p{margin:0;max-width:740px}.footer-brand{color:var(--blue);font-weight:700;font-size:16px}.footer-links{display:flex;gap:20px}.project-map-frame{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}#project-map{width:100%;height:min(68vh,620px);min-height:400px;background:#c3e3f8;z-index:0}.map-status{margin:0;padding:12px 18px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.project-map-frame .leaflet-popup-content-wrapper{border-radius:8px}.project-map-frame .leaflet-popup-content{width:min(260px,72vw);margin:16px 18px;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.map-popup h2{font-size:16px;line-height:1.3;margin:0 0 5px;letter-spacing:0}.map-popup p{font-size:14px;line-height:1.45;color:var(--muted);margin:5px 0}.map-popup-type{color:var(--blue);font-weight:700}.map-popup-notes{border-top:1px solid var(--line);padding-top:10px}.map-popup-image{display:block;width:100%;max-height:160px;object-fit:cover;border-radius:4px;margin-bottom:12px}.map-popup-caption{font-size:12px!important;font-style:italic}.project-marker{width:16px;height:16px;border:3px solid white;border-radius:50%;background:var(--blue);box-shadow:0 1px 6px #12304766}.project-marker-photo{background:#b37a28}@media(max-width:850px){.hero,.registration-grid{grid-template-columns:1fr}.hero{gap:28px;padding:42px 0}.photo-area{aspect-ratio:16/10}.contact-inner{flex-direction:column;align-items:flex-start;gap:20px}.section{padding:42px 0}}@media(max-width:540px){.wrap{width:calc(100% - 32px)}.header-inner{flex-direction:column;align-items:flex-start;gap:10px}.grid,.stats{grid-template-columns:1fr}.card,.panel{padding:23px}.photo-area{aspect-ratio:5/4}.footer-inner{flex-direction:column}h1{letter-spacing:-1px}#project-map{min-height:350px;height:60vh}}@media(prefers-reduced-motion:reduce){.stats{transition:none}}