/* Ontario and area guide system — source-led, responsive, keyboard accessible. */
.eh-area-page{--eh-red:#b51e3a;--eh-ink:#202a38;--eh-muted:#5c6878;max-width:1440px;margin:0 auto;padding:20px 28px 56px;color:var(--eh-ink)}
.eh-area-page a{color:#a61632;text-decoration-thickness:1px;text-underline-offset:3px}
.eh-area-hero{position:relative;overflow:hidden;margin:10px 0 30px;padding:clamp(28px,5vw,64px);border-radius:20px;background:linear-gradient(118deg,#78152b 0%,#b51e3a 52%,#d94a60 100%);color:#fff;box-shadow:0 16px 38px #531a2a20}
.eh-area-hero:after{content:"";position:absolute;inset:auto -4% -35% 50%;height:80%;border:1px solid #ffffff26;border-radius:50%;box-shadow:0 0 0 24px #ffffff0d,0 0 0 52px #ffffff0a;pointer-events:none}
.eh-area-hero>*{position:relative;z-index:1}.eh-area-kicker{margin:0 0 10px;color:#f9dce1;font-size:.76rem;font-weight:800;letter-spacing:.12em}.eh-area-hero h1{max-width:850px;margin:0 0 14px;color:#fff;font-size:clamp(2rem,4.5vw,3.65rem);line-height:1.04;letter-spacing:-.035em}.eh-area-hero>p:not(.eh-area-kicker){max-width:790px;margin:0;color:#fff;font-size:1.08rem;line-height:1.65}
.eh-area-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0}.eh-area-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid #ffffff94;border-radius:8px;color:#fff;font-weight:750;text-decoration:none}.eh-area-actions a:first-child{border-color:#fff;background:#fff;color:#941b32}.eh-area-actions a:focus-visible,.eh-area-page a:focus-visible{outline:3px solid #f3b84b;outline-offset:3px}
.eh-area-hero-meta{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:26px;color:#ffe8ec;font-size:.9rem}.eh-area-hero-meta strong{color:#fff;font-size:1.08rem}
.eh-area-section{margin:34px 0}.eh-area-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.eh-area-section h2{margin:0;color:#222c3a;font-size:clamp(1.35rem,2.2vw,1.8rem);letter-spacing:-.02em}.eh-area-section-head p{margin:5px 0 0;color:var(--eh-muted)}
.eh-area-city-grid,.eh-area-directory-grid,.eh-area-local-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.eh-area-card{display:flex;flex-direction:column;min-height:176px;padding:20px;border:1px solid #e0e5eb;border-radius:13px;background:#fff;box-shadow:0 5px 18px #1f29370a;transition:transform .15s ease,box-shadow .15s ease}.eh-area-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px #1f293714}.eh-area-card h3{margin:0 0 7px;color:#263445;font-size:1.2rem}.eh-area-card p{margin:0;color:var(--eh-muted);line-height:1.55}.eh-area-card .eh-area-card-count{margin-top:auto;padding-top:16px;color:#9b1c34;font-size:.91rem;font-weight:750}.eh-area-card .eh-area-card-census{margin-top:10px;padding-top:10px;border-top:1px solid #edf0f3;font-size:.88rem}
.eh-area-directory{padding:22px;border:1px solid #e1e5ea;border-radius:14px;background:#f7f8fa}.eh-area-directory h2{margin:0 0 14px}.eh-area-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 20px}.eh-area-directory-grid a{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #e7e9ed;text-decoration:none}.eh-area-directory-grid a span:last-child{color:#697487;font-variant-numeric:tabular-nums}.eh-area-note{margin:22px 0;padding:15px 18px;border-left:4px solid #c62c46;border-radius:0 8px 8px 0;background:#fff5f6;color:#576272;line-height:1.55}
.eh-area-browse{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.eh-area-browse a{padding:9px 13px;border:1px solid #e4b4bd;border-radius:999px;background:#fff;color:#92182f;font-weight:700;text-decoration:none}
.eh-area-results{margin:32px 0}.eh-area-results h2{margin-bottom:14px}.eh-area-results .eh5-grid,.eh-area-page .eh5-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.eh-area-profile{max-width:none;margin:24px 0;padding:24px;border:1px solid #e0e5eb;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1f29370a;color:#263445;line-height:1.6}.eh-area-profile-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px}.eh-area-profile-heading h2{margin:0;color:#283343;font-size:1.55rem}.eh-area-profile .eh-area-kicker{margin:0 0 5px;color:#a31a35}.eh-area-year{padding:6px 10px;border-radius:999px;background:#f3f4f6;color:#596475;font-size:.78rem;font-weight:700}.eh-area-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.eh-area-metrics>div{padding:15px;border:1px solid #e8ebef;border-radius:10px;background:#fafbfc}.eh-area-metrics dt{color:#647084;font-size:.82rem}.eh-area-metrics dd{margin:7px 0 2px;color:#a51a35;font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums}.eh-area-metrics small{color:#6c7786}.eh-area-summary{margin:0;color:#354152;font-size:1rem;line-height:1.75}.eh-area-sources{margin-top:16px;padding-top:12px;border-top:1px solid #e8ebef;color:#687384;font-size:.83rem}.eh-area-sources summary{cursor:pointer;color:#475466;font-weight:700}.eh-area-sources p{line-height:1.6}.eh-area-sources a{color:#a31a35}
.eh-location-footer{display:flex;flex-wrap:wrap;gap:5px 8px}.eh-area-pagination{display:flex;justify-content:space-between;gap:12px;margin:22px 0}.eh-area-pagination a{display:inline-flex;padding:10px 14px;border:1px solid #dce2e8;border-radius:8px;background:#fff;font-weight:700}
@media(max-width:900px){.eh-area-city-grid,.eh-area-directory-grid,.eh-area-local-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eh-area-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.eh-area-page{padding:12px 14px 40px}.eh-area-hero{margin:8px 0 22px;padding:26px 21px;border-radius:14px}.eh-area-hero h1{font-size:2.05rem}.eh-area-hero>p:not(.eh-area-kicker){font-size:.98rem}.eh-area-actions{display:grid;grid-template-columns:1fr}.eh-area-actions a{width:100%}.eh-area-city-grid,.eh-area-directory-grid,.eh-area-local-grid,.eh-area-results .eh5-grid,.eh-area-page .eh5-grid{grid-template-columns:1fr}.eh-area-card{min-height:140px;padding:17px}.eh-area-section{margin:28px 0}.eh-area-section-head{display:block}.eh-area-directory{padding:16px}.eh-area-profile{padding:17px}.eh-area-profile-heading{display:block}.eh-area-year{display:inline-flex;margin-top:8px}.eh-area-metrics{gap:8px}.eh-area-metrics>div{padding:11px}.eh-area-metrics dd{font-size:1.12rem}.eh-area-summary{font-size:.94rem}.eh-area-hero-meta{gap:10px 18px;font-size:.84rem}}
@media(prefers-reduced-motion:reduce){.eh-area-card{transition:none}.eh-area-card:hover{transform:none}}
.eh-human-sitemap .eh-sitemap-header{padding:18px 0 22px;border-bottom:1px solid #e5e8ec}.eh-sitemap-header h1{max-width:900px;margin:0 0 7px;color:#222c3a;font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.03em}.eh-sitemap-header p{margin:0 0 9px;color:#5c6878}.eh-sitemap-header>a{font-size:.9rem}.eh-sitemap-section{padding:24px 0 30px;border-bottom:1px solid #e5e8ec}.eh-sitemap-section>h2{margin:0 0 20px;color:#222c3a;font-size:1.5rem;letter-spacing:-.02em}.eh-sitemap-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:26px 24px}.eh-sitemap-letter-group h3{margin:0 0 8px;padding-bottom:5px;border-bottom:1px solid #e5e8ec;color:#6a7481;font-size:.88rem;font-weight:750}.eh-sitemap-letter-group>ul{margin:0;padding:0;list-style:none}.eh-sitemap-letter-group>ul>li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:0 8px;margin:0 0 12px;color:#354152;font-size:.94rem;line-height:1.45}.eh-sitemap-letter-group>ul>li>a{font-weight:700;text-decoration:none}.eh-sitemap-letter-group>ul>li>a:hover{text-decoration:underline}.eh-sitemap-count{color:#697487;font-size:.78rem;white-space:nowrap}.eh-sitemap-letter-group ul ul{grid-column:1/-1;margin:4px 0 0 2px;padding:0 0 0 11px;border-left:1px solid #e4e7eb;list-style:none}.eh-sitemap-letter-group ul ul li{margin:2px 0;font-size:.86rem;line-height:1.4}.eh-sitemap-letter-group ul ul a{color:#5c6878;text-decoration:none}.eh-sitemap-letter-group ul ul a:hover{text-decoration:underline}.eh-sitemap-access-note{margin:-10px 0 20px;color:#687384;font-size:.9rem}
@media(max-width:900px){.eh-sitemap-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}}
@media(max-width:600px){.eh-sitemap-directory{grid-template-columns:1fr;gap:18px}.eh-sitemap-section{padding:20px 0 24px}.eh-sitemap-section>h2{font-size:1.32rem}}
.eh-sold-header{padding:24px 0 20px;border-bottom:1px solid #e5e8ec}.eh-sold-header h1{margin:0 0 10px;color:#222c3a;font-size:clamp(1.9rem,3.5vw,2.8rem);letter-spacing:-.03em}.eh-sold-header p{max-width:760px;margin:0;color:#5c6878;line-height:1.65}.eh-sold-access{margin:24px 0;padding:20px 22px;border:1px solid #e1e5ea;border-radius:10px;background:#f7f8fa}.eh-sold-access h2{margin:0 0 7px;color:#263445;font-size:1.18rem}.eh-sold-access p{margin:5px 0;color:#596575;line-height:1.55}.eh-sold-access p:last-child{margin-top:12px}.eh-sold-access a{font-weight:700}
