:root{--ink:#172433;--navy:#1d3145;--blue:#36566f;--teal:#1d7a69;--teal-soft:#e9f4f0;--coral:#c85a4f;--coral-soft:#fbeae6;--ground:#f7f8f7;--surface:#fff;--line:#e2e7e7;--muted:#697785;--mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ground);color:var(--ink);font-family:var(--sans);margin:0;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}.nav{border-bottom:1px solid var(--line);z-index:50;background:#fffffff5;justify-content:space-between;align-items:center;height:64px;padding:0 max(6vw,28px);display:flex;position:sticky;top:0}.logo{letter-spacing:-.5px;color:var(--navy);font-size:16px;font-weight:700}.logo i{font-style:normal}.logo span{color:#71808d;margin-left:7px;font-weight:400}.nav-center{color:#536473;gap:28px;font-size:13px;display:flex}.nav-center a:hover{color:var(--teal)}.nav-button{color:#fff;background:var(--navy);border-radius:5px;padding:8px 12px;font-size:12px;font-weight:600}.nav-button b{margin-left:7px}.hero{background:var(--surface);border-bottom:1px solid var(--line);padding:72px max(9vw,28px) 64px}.hero-top,.hero-bottom{justify-content:space-between;align-items:start;gap:28px;display:flex}.kicker{font:600 10px var(--mono);letter-spacing:.08em;color:#71808c;text-transform:uppercase;margin:0}.updated{color:#82909b;margin:0;font-size:12px}.hero h1{letter-spacing:-.06em;max-width:850px;margin:42px 0 28px;font-size:clamp(42px,5.6vw,78px);font-weight:700;line-height:1.11}.hero h1 em,.section-title h2 em,.rules h2 em,.method h2 em{color:#49677d;font-style:normal;font-weight:500}.hero-bottom p{color:#556676;max-width:570px;margin:0;font-size:16px;line-height:1.7}.hero-bottom a{background:var(--teal);color:#fff;white-space:nowrap;border-radius:5px;padding:11px 14px;font-size:13px;font-weight:650}.hero-bottom a span{margin-left:14px}.pulse{border-bottom:1px solid var(--line);background:#eff3f2;grid-template-columns:repeat(3,1fr) 1.25fr;gap:24px;padding:20px max(9vw,28px);display:grid}.pulse div{border-right:1px solid #d9e1df;padding-right:20px}.pulse div:last-child{border:0}.pulse small,.pulse span{color:#778592;font-size:11px;display:block}.pulse b{letter-spacing:-.045em;color:var(--navy);margin:2px 0;font-size:25px;font-weight:650;display:block}.pulse-note{color:#596976;font-size:12px;line-height:1.7}.pulse-note i{color:var(--teal);font-style:normal}.radar{background:var(--surface);padding:82px max(6vw,28px)}.section-title{justify-content:space-between;align-items:end;gap:60px;max-width:1180px;margin:auto;padding:0 0 32px;display:flex}.section-title h2,.rules h2,.method h2{letter-spacing:-.055em;margin:13px 0 0;font-size:clamp(32px,3.6vw,50px);line-height:1.15}.section-title>p{max-width:370px;color:var(--muted);margin:0;font-size:14px;line-height:1.75}.radar-shell{border:1px solid var(--line);border-radius:9px;grid-template-columns:284px 1fr;max-width:1180px;margin:auto;display:grid;overflow:hidden;box-shadow:0 10px 26px #192a360f}.market-index{background:#fbfcfc}.index-head{color:#8995a0;font:10px var(--mono);border-bottom:1px solid var(--line);justify-content:space-between;padding:14px 18px;display:flex}.market-index button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf0f0;grid-template-columns:26px 1fr 32px 13px;align-items:center;gap:7px;padding:13px 16px;display:grid}.market-index button:hover{background:#f1f6f4}.market-index button.is-active{background:var(--teal-soft);box-shadow:inset 3px 0 var(--teal)}.market-index .no{font:10px var(--mono);color:#9aa5ae}.market-index b{font-size:14px;display:block}.market-index small{color:#82909c;font-size:10px}.market-index strong{color:#36566f;font-size:15px;font-weight:650}.market-index i{color:#97a3ad;font-style:normal}.canvas{background:#f5f8f7;min-height:554px;position:relative}.canvas-head{color:#7d8b96;font:10px var(--mono);border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.canvas-head button{color:#7b8995;font:10px var(--mono);cursor:pointer;background:0 0;border:0;margin-right:15px;padding:3px 0}.canvas-head button.on{color:var(--teal);border-bottom:1px solid var(--teal)}.map{background:radial-gradient(#dce7e3 1px,#0000 1px) 0 0/19px 19px;height:480px;position:relative;overflow:hidden}.province{clip-path:polygon(3% 50%,14% 30%,32% 24%,44% 7%,67% 17%,78% 11%,98% 30%,85% 44%,91% 61%,76% 71%,70% 92%,47% 79%,33% 89%,19% 74%,3% 83%,10% 64%);background:#e9efec;width:66%;height:68%;position:absolute;top:16%;left:16%}.province:before{content:"";clip-path:inherit;border:1px dashed #c4d2ce;position:absolute;inset:5%}.province span{color:#9aa9a5;letter-spacing:.2em;font:15px var(--mono);position:absolute;top:42%;left:37%}.water{background:#dae9ee;border:1px solid #c6dbe1;position:absolute}.lake-one{border-radius:45% 64% 20% 62%;width:43%;height:25%;bottom:3%;left:-7%;transform:rotate(-5deg)}.lake-two{border-radius:70% 30% 60% 20%;width:40%;height:16%;bottom:-2%;right:-11%;transform:rotate(12deg)}.pin{color:#344957;cursor:pointer;text-align:left;z-index:5;background:0 0;border:0;padding:5px;position:absolute;transform:translate(-50%,-50%)}.pin i{vertical-align:middle;background:#7b9d96;border:2px solid #fff;border-radius:50%;width:9px;height:9px;display:inline-block;box-shadow:0 0 0 3px #456e6321}.pin b{margin-left:5px;font-size:12px}.pin small{display:none}.pin.chosen i{background:var(--teal);width:14px;height:14px;box-shadow:0 0 0 5px #1d7a692e}.pin.chosen b{color:var(--navy);font-size:14px;font-weight:700}.map-legend{color:#687985;font:10px var(--mono);background:#ffffffd9;border:1px solid #e2e7e5;border-radius:4px;gap:13px;padding:7px;display:flex;position:absolute;bottom:16px;right:18px}.dot{border-radius:50%;width:7px;height:7px;display:inline-block}.hot{background:#328776}.warm{background:#809b95}.cool{background:#b6c8c4}.selection{border-top:1px solid var(--line);background:#fff;grid-template-columns:1.2fr .7fr 1.4fr;align-items:center;padding:17px 22px;display:grid}.selection span,.big-score span{color:#82909c;font:10px var(--mono);display:block}.selection h3{letter-spacing:-.04em;margin:2px 0;font-size:23px}.selection p{color:#7a8895;margin:0;font-size:11px}.big-score{border-left:1px solid var(--line);padding-left:22px}.big-score b{letter-spacing:-.05em;color:var(--teal);font-size:30px}.big-score small{font:11px var(--mono);color:#95a0aa}.selection-action{text-align:right}.selection-action a{color:var(--teal);font-size:12px;font-weight:600}.data-table{height:480px;color:var(--ink);background:#fff;padding:18px}.data-table .thead,.data-table button{text-align:left;grid-template-columns:1.5fr repeat(4,1fr);align-items:center;gap:6px;width:100%;display:grid}.data-table .thead{font:10px var(--mono);color:#86939f;padding:0 12px 11px}.data-table button{border:0;border-top:1px solid var(--line);color:#465766;cursor:pointer;background:0 0;padding:17px 12px;font-size:13px}.data-table button:hover{background:#f0f7f4}.metrics{background:#f4f7f6;padding:25px max(9vw,28px) 48px}.metric-head{justify-content:space-between;gap:20px;padding:0 0 16px;display:flex}.metric-head>p:last-child{color:#7d8995;margin:0;font-size:11px}.metric-grid{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:repeat(5,1fr);display:grid;overflow:hidden}.metric-grid div{border-right:1px solid var(--line);padding:18px}.metric-grid div:last-child{border:0}.metric-grid span,.metric-grid small{color:#758390;font-size:11px;display:block}.metric-grid b{letter-spacing:-.05em;color:var(--navy);margin:5px 0 1px;font-size:26px;display:block}.rules{background:#fff;grid-template-columns:1fr 1fr;display:grid}.rule-card{background:#edf5f2;padding:82px max(9vw,35px)}.rule-card h2{font-size:clamp(31px,3.5vw,48px)}.rule-card h2 em{color:#51756e}.rule-copy{color:#596d70;max-width:390px;margin-top:35px;font-size:14px;line-height:1.75}.rule-detail{background:#fff;padding:68px max(9vw,35px)}.rule-top,.rule-status{border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 0;font-size:13px;display:flex}.rule-top span,.rule-status span{color:#7e8998}.rule-status b{color:var(--coral)}.rule-detail>p{color:#3f5364;margin:31px 0;font-size:18px;font-weight:500;line-height:1.58}.checklist{background:#f6f8f8;border-radius:5px;padding:17px;font-size:13px}.checklist>span{font:10px var(--mono);color:#8290a1}.checklist ol{margin:10px 0 0;padding-left:20px;line-height:1.9}.rule-detail>a{color:var(--teal);border-bottom:1px solid #a9d2c8;margin-top:23px;padding-bottom:3px;font-size:12px;font-weight:650;display:inline-block}.method{color:var(--ink);background:#f1f4f5;padding:78px max(9vw,28px)}.method>div{grid-template-columns:1.1fr .7fr;align-items:end;gap:70px;display:grid}.method h2{margin:13px 0 0}.method h2 em{color:#4f6c7e}.method div p{color:#687987;font-size:14px;line-height:1.8}.method>a{color:var(--teal);border-bottom:1px solid #a9d2c8;margin-top:28px;padding-bottom:3px;font-size:12px;font-weight:600;display:inline-block}footer{color:#b9c4cb;background:#172c3e;justify-content:space-between;align-items:center;padding:25px max(9vw,28px);font-size:11px;display:flex}footer .logo{color:#fff}footer .logo span{color:#b9c4cb}footer p{margin:0}footer>a:last-child{color:#fff}@media (max-width:850px){.nav-center{display:none}.hero{padding-top:54px}.pulse{grid-template-columns:1fr 1fr}.pulse div:nth-child(2){border:0}.pulse-note{border-top:1px solid #d9e1df;grid-column:1/-1;padding-top:15px}.section-title{display:block}.section-title>p{margin-top:22px}.radar-shell{grid-template-columns:1fr}.market-index{grid-template-columns:1fr 1fr;display:grid}.index-head{display:none}.market-index button{padding:10px}.canvas{min-height:500px}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid div:nth-child(2n){border-right:0}.metric-grid div:last-child{border-top:1px solid var(--line);grid-column:1/-1}.rules{grid-template-columns:1fr}.method>div{grid-template-columns:1fr;gap:22px}.selection{grid-template-columns:1fr 1fr;gap:14px}.selection-action{text-align:left;grid-column:1/-1}.big-score{border:0;padding:0}.data-table{overflow-x:auto}.data-table .thead,.data-table button{min-width:480px}.map{height:410px}.province{width:85%;left:7%}footer{display:block}footer p{margin:15px 0}}@media (max-width:500px){.hero-top,.hero-bottom,.metric-head{display:block}.updated{margin-top:10px}.hero-bottom a{margin-top:22px;display:inline-block}.market-index{display:block}.market-index button{grid-template-columns:30px 1fr 30px 18px}.canvas-head span{display:none}.pulse{grid-template-columns:1fr}.pulse div{border-bottom:1px solid #d9e1df;border-right:0;padding:0 0 15px}.metric-grid{grid-template-columns:1fr}.metric-grid div{border-right:0;border-bottom:1px solid var(--line)}.metric-grid div:last-child{border-top:0}.selection{padding:16px}.map-legend{display:none}}.audience{color:#778490;flex-wrap:wrap;align-items:center;gap:8px;margin-top:34px;font-size:12px;display:flex}.audience b{color:#476474;background:#f8fbfa;border:1px solid #d9e4e0;border-radius:999px;padding:5px 9px;font-weight:600}.problem{background:#f4f7f6;grid-template-columns:.9fr 1.6fr;gap:62px;padding:80px max(9vw,28px);display:grid}.problem h2{letter-spacing:-.05em;margin:14px 0;font-size:clamp(29px,3.5vw,47px);line-height:1.15}.problem-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.problem-grid div{border:1px solid var(--line);background:#fff;border-radius:7px;padding:20px}.problem-grid span{font:600 10px var(--mono);color:var(--teal)}.problem-grid h3{margin:29px 0 8px;font-size:16px}.problem-grid p{color:#697987;margin:0;font-size:13px;line-height:1.7}.screen{background:#fff;grid-template-columns:1fr 430px;gap:75px;padding:80px max(9vw,28px);display:grid}.screen h2,.offer-heading h2{letter-spacing:-.06em;margin:13px 0;font-size:clamp(34px,3.8vw,50px);line-height:1.12}.screen h2 em,.offer-heading h2 em{color:#476c69;font-style:normal;font-weight:500}.screen-copy>p:not(.kicker){color:#60707e;max-width:490px;font-size:15px;line-height:1.75}.screen-copy ul{margin:28px 0 0;padding:0;list-style:none}.screen-copy li{border-top:1px solid var(--line);padding:9px 0;font-size:13px}.screen-copy li:before{content:"✓";color:var(--teal);margin-right:10px;font-weight:700}.screen-form{background:#f3f7f5;border:1px solid #dbe7e3;border-radius:8px;gap:13px;padding:24px;display:grid}.screen-form label{color:#5c6e79;font-size:12px;font-weight:600}.screen-form input,.screen-form select{color:#263d4c;width:100%;font:13px var(--sans);background:#fff;border:1px solid #d5dfdd;border-radius:5px;margin-top:5px;padding:10px;display:block}.screen-form button{background:var(--teal);color:#fff;font:650 13px var(--sans);cursor:pointer;border:0;border-radius:5px;margin-top:8px;padding:12px}.screen-form small{color:#82909a;font-size:10px;line-height:1.5}.offer{background:#f4f7f6;padding:82px max(9vw,28px)}.offer-heading{justify-content:space-between;align-items:end;gap:55px;max-width:1180px;margin:0 auto 32px;display:flex}.offer-heading>p:last-child{color:#687886;max-width:330px;margin:0;font-size:14px;line-height:1.7}.offer-grid{grid-template-columns:repeat(3,1fr);gap:16px;max-width:1180px;margin:auto;display:grid}.offer-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:24px}.offer-grid .featured{border:2px solid var(--teal);box-shadow:0 10px 26px #1d7a691f}.tier{font:600 10px var(--mono);letter-spacing:.08em;color:var(--teal);margin:0}.offer-grid h3{letter-spacing:-.03em;margin:23px 0 3px;font-size:20px}.price{letter-spacing:-.06em;margin:0;font-size:28px;font-weight:700}.price small{color:#7b8995;letter-spacing:0;font-size:12px;font-weight:500}.offer-grid>article>p:not(.tier):not(.price){color:#677885;min-height:38px;font-size:13px}.offer-grid ul{margin:20px 0;padding:0;list-style:none}.offer-grid li{color:#516675;border-top:1px solid #edf0f0;padding:9px 0;font-size:12px}.offer-grid li:before{content:"✓";color:var(--teal);margin-right:8px}.offer-grid a{text-align:center;color:var(--teal);background:#edf5f2;border-radius:5px;padding:11px;font-size:13px;font-weight:650;display:block}.offer-grid .featured a{background:var(--teal);color:#fff}.offer-note{color:#82909a;max-width:1180px;margin:16px auto 0;font-size:10px}.method{margin-top:0}@media (max-width:850px){.problem,.screen{grid-template-columns:1fr;gap:35px}.problem-grid{grid-template-columns:1fr}.screen{padding:65px max(7vw,25px)}.offer-heading{display:block}.offer-heading>p:last-child{margin-top:22px}.offer-grid{grid-template-columns:1fr}.offer-grid article{padding:22px}}@media (max-width:500px){.problem{padding:60px 25px}.audience{margin-top:25px}.screen{padding:60px 25px}.screen-form{padding:18px}}.hero-score{border:1px solid var(--line);background:#fbfcfb;border-radius:8px;grid-template-columns:repeat(3,1fr) auto;gap:0;max-width:900px;margin-top:38px;display:grid;overflow:hidden}.hero-score div{border-right:1px solid var(--line);padding:15px 18px}.hero-score span,.hero-score small{color:#75838f;font-size:10px;display:block}.hero-score b{letter-spacing:-.05em;color:var(--navy);margin:3px 0;font-size:25px;line-height:1.2;display:block}.hero-score a{background:var(--teal-soft);color:var(--teal);align-self:stretch;align-items:center;padding:0 20px;font-size:12px;font-weight:650;display:flex}.map:before{content:"";opacity:.52;filter:sepia(.12)hue-rotate(110deg)saturate(.7);background:url(/ontario-south-boundary.png) 50%/contain no-repeat;position:absolute;inset:5% 2%}.province,.water{display:none}@media (max-width:720px){.hero-score{grid-template-columns:1fr 1fr}.hero-score div:nth-child(2){border-right:0}.hero-score div:nth-child(3){border-top:1px solid var(--line)}.hero-score a{border-top:1px solid var(--line);grid-area:2/2;justify-content:center}}.screen-form button:disabled{opacity:.7;cursor:wait}.screen-form .form-error{color:#b44e45}.map{background:#fbfcfb}.map:before,.province,.water{display:none}.pin{width:0;height:0;padding:0;transform:translate(-50%,-50%)}.pin b{white-space:nowrap;background:#fbfcfbeb;border-radius:3px;margin:0;padding:2px 4px;position:absolute;top:-10px;left:13px}.pin[aria-label=选择\ Collingwood] b{text-align:right;top:-19px;left:auto;right:13px}.pin[aria-label=选择\ Barrie] b{top:8px}.pin[aria-label=选择\ Mississauga] b{text-align:right;top:5px;left:auto;right:13px}.pin[aria-label=选择\ Toronto] b{top:-22px;left:14px}.pin[aria-label="选择 Niagara Falls"] b{top:7px}.pin[aria-label=选择\ Ottawa] b{text-align:right;top:-12px;left:auto;right:13px}@media (max-width:720px){.pin b{font-size:11px}}
