html{scroll-snap-type:y proximity}
.ontario-page{background:var(--paper)}
.ontario-page h1,.ontario-page h2{margin:0;font-weight:500}
.ontario-page h1{font-size:clamp(52px,6.7vw,112px)}
.ontario-page h2{font-size:clamp(43px,5.2vw,84px)}
.ontario-page h2 em{color:#765b7d}
.ontario-page main>section{scroll-snap-align:start;scroll-snap-stop:normal}
.ontario-page.has-motion [data-reveal]{opacity:0;transform:translate3d(0,32px,0);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}
.ontario-page.has-motion [data-reveal].is-visible{opacity:1;transform:translate3d(0,0,0)}
.ontario-page main>section[id]{scroll-margin-top:80px}
.ontario-page .section-kicker{margin:0 0 25px;color:#765b7d}
.ontario-page .section-head{padding-top:24px;padding-bottom:24px}
.cm-hero{position:relative;isolation:isolate;min-height:100svh;overflow:hidden;background:var(--ink);color:#fff;padding-top:105px;padding-bottom:35px;display:flex;flex-direction:column;justify-content:space-between}
.cm-hero__image{position:absolute;inset:0;z-index:-1}
.cm-hero__image img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.cm-hero__image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(56,33,62,.98) 0%,rgba(56,33,62,.91) 32%,rgba(56,33,62,.67) 65%,rgba(56,33,62,.48)),linear-gradient(0deg,rgba(56,33,62,.65),transparent 45%)}
.cm-breadcrumb{display:flex;gap:13px;align-items:center;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#d9cddd}
.cm-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.cm-hero__body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:5vw;align-items:end;padding:90px 0 70px}
.cm-hero h1{max-width:1160px;line-height:1.04}
.cm-hero h1 em{color:#eadfea}
.cm-hero .section-kicker,.cm-development .section-kicker,.cm-quality .section-kicker,.cm-path .section-kicker,.cm-next .section-kicker{color:#c9afd0}
.cm-hero__aside{max-width:415px;padding-bottom:8px}
.cm-hero__aside p{font-size:clamp(17px,1.45vw,21px);line-height:1.55;color:#eee5ef;margin-bottom:35px}
.cm-hero__foot{display:flex;gap:25px;justify-content:space-between;padding-top:19px;border-top:1px solid rgba(255,255,255,.4);font-size:10px;font-weight:700;letter-spacing:.14em;color:#e3d9e5}
.cm-capability,.cm-market,.cm-quality,.cm-location,.cm-why,.cm-faq{padding-top:35px;padding-bottom:clamp(95px,12vw,185px)}
.cm-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(35px,7vw,120px);padding-top:clamp(55px,7vw,115px);align-items:start}
.cm-split--top{padding-bottom:90px}
.cm-prose{max-width:590px;padding-top:15px}
.cm-prose p,.cm-development__copy>p:not(.section-kicker),.cm-formats__intro>p,.cm-location__grid>div>p:not(.section-kicker){font-size:clamp(16px,1.25vw,19px);line-height:1.67;color:#4d444d;margin-bottom:24px}
.cm-prose .cm-lead{font-size:clamp(21px,1.65vw,27px);line-height:1.45;color:var(--ink)}
.cm-inline-link{display:inline-flex;justify-content:space-between;gap:25px;border-bottom:1px solid currentColor;padding:0 0 10px;margin-top:17px;font-size:13px;font-weight:700}
.cm-inline-link:hover{color:var(--purple)}
.cm-inline-link span{font-size:18px;font-weight:400}
.cm-capability__rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #a69aa7;border-bottom:1px solid #a69aa7}
.cm-capability__rail span{padding:21px 16px 21px 0;font-size:11px;font-weight:700;letter-spacing:.1em}
.cm-capability__rail span+span{border-left:1px solid var(--line);padding-left:18px}
.cm-development,.cm-path,.cm-next{background:var(--plum);color:#fff;padding-top:35px;padding-bottom:85px}
.cm-development__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.78fr);gap:clamp(45px,6vw,100px);align-items:center;padding-top:65px}
.cm-development h2 em,.cm-quality h2 em,.cm-path h2 em,.cm-next h2 em{color:#c6aacc}
.cm-development__copy>p:not(.section-kicker){color:#d9cedc;max-width:690px}
.cm-development__copy h2{margin-bottom:36px}
.cm-development__image,.cm-formats__visual{margin:0;min-width:0}
.cm-development__image img{display:block;width:100%;height:auto;aspect-ratio:802/720;object-fit:cover}
.cm-development__image figcaption,.cm-formats__visual figcaption{padding-top:16px;border-top:1px solid rgba(255,255,255,.35);font-size:10px;font-weight:700;letter-spacing:.13em}
.cm-development__image figcaption{margin-top:12px;color:#dacdde}
.cm-formats{padding-top:35px;padding-bottom:110px;background:#fff}
.cm-formats__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr);gap:8vw;align-items:end;padding:70px 0 60px}
.cm-formats__intro>p{max-width:470px;margin-bottom:0}
.cm-formats__body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(45px,7vw,115px);align-items:start}
.cm-formats__visual{position:sticky;top:100px;align-self:start}
.cm-formats__visual img{display:block;width:100%;height:auto;object-fit:contain}
.cm-formats__visual figcaption{border-color:#c4bbc5;color:#6b626b}
.cm-formats__list{border-top:1px solid #817383}
.cm-formats__list a{display:grid;grid-template-columns:30px minmax(0,1fr) 28px;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:20px 0;transition:padding .25s,background .25s}
.cm-formats__list a:hover{padding-left:12px;background:#f4f0f4}
.cm-formats__list a>span:first-child{font-size:10px;font-weight:700;color:#817383}
.cm-formats__list strong{font-family:Manrope,Arial,sans-serif;font-size:clamp(22px,2vw,31px);font-weight:600;letter-spacing:-.05em}
.cm-formats__list small{grid-column:2;grid-row:2;font-size:13px;color:#6b626b}
.cm-formats__list a>span:last-child{grid-column:3;grid-row:1;font-size:19px;text-align:right}
.cm-market{background:var(--paper)}
.cm-quality{background:var(--ink);color:#fff}
.cm-quality .cm-prose p{color:#dacddd}
.cm-quality .cm-prose .cm-lead{color:#fff}
.cm-location{background:#e8e3e9}
.cm-location__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:8vw;align-items:end;padding-top:70px}
.cm-location__grid h2{margin-bottom:38px}
.cm-location__grid>div>p:not(.section-kicker){max-width:750px}
.cm-location address{font-style:normal;display:flex;flex-direction:column;gap:17px;border-top:1px solid #9e90a0;padding-top:23px}
.cm-location address>span{font-size:10px;font-weight:700;letter-spacing:.14em}
.cm-location address a{font-size:16px;line-height:1.5}
.cm-location address a:first-of-type{font-size:25px;font-family:Manrope,Arial,sans-serif;letter-spacing:-.04em}
.cm-location address a:hover{text-decoration:underline;text-underline-offset:4px}
.cm-path{padding-bottom:125px}
.cm-path__action{margin-top:42px}
.cm-path__heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.35fr);gap:40px;align-items:end;padding-top:65px;padding-bottom:70px}
.cm-path__heading .section-kicker{grid-column:1/-1;margin-bottom:-18px}
.cm-path__heading>p:last-child{color:#d8ccdb;font-size:17px;line-height:1.5}
.cm-path__steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0;margin:0;list-style:none;border-top:1px solid rgba(255,255,255,.5)}
.cm-path__steps li{min-width:0;padding:22px 16px 0 0}
.cm-path__steps li+li{border-left:1px solid rgba(255,255,255,.18);padding-left:16px}
.cm-path__steps span{display:block;font-size:11px;font-weight:700;letter-spacing:.14em;color:#c7a9ce;margin-bottom:38px}
.cm-path__steps strong{display:block;font-size:clamp(15px,1.25vw,20px);font-weight:600;line-height:1.3;overflow-wrap:anywhere}
.cm-path__steps p{font-size:12px;line-height:1.5;color:#d4c6d7;margin:15px 0 0}
.cm-why{background:var(--paper)}
.cm-why__heading{padding:65px 0}
.cm-why__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #a79aa7;border-left:1px solid #a79aa7}
.cm-why__grid article{min-width:0;min-height:245px;border-right:1px solid #a79aa7;border-bottom:1px solid #a79aa7;padding:25px 30px 28px}
.cm-why__grid article>span{font-size:10px;font-weight:700;letter-spacing:.13em;color:#745c79}
.cm-why__grid h3{font-family:Manrope,Arial,sans-serif;font-size:clamp(25px,2vw,33px);letter-spacing:-.05em;font-weight:600;margin:40px 0 14px}
.cm-why__grid p{font-size:15px;line-height:1.55;color:#574e57;max-width:470px;margin:0}
.cm-why>.cm-inline-link{margin-top:32px}
.cm-faq{background:#fff}
.cm-faq__layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7vw;padding-top:65px}
.cm-faq__items{border-top:1px solid #a69aa7}
.cm-faq details{border-bottom:1px solid var(--line)}
.cm-faq summary{position:relative;list-style:none;cursor:pointer;padding:24px 44px 24px 0;font-family:Manrope,Arial,sans-serif;font-size:clamp(18px,1.5vw,23px);font-weight:600;letter-spacing:-.035em;line-height:1.4}
.cm-faq summary::-webkit-details-marker{display:none}
.cm-faq summary:after{content:"+";position:absolute;right:4px;top:22px;font:400 26px/1 'DM Sans',Arial,sans-serif}
.cm-faq details[open] summary:after{content:"−"}
.cm-faq details p{max-width:650px;font-size:16px;line-height:1.6;color:#574e57;padding:0 35px 10px 0}
.cm-faq details p a{text-decoration:underline;text-underline-offset:3px}
.cm-next{padding-bottom:28px}
.cm-next__body{padding:80px 0 110px;max-width:900px}
.cm-next h2{font-size:clamp(65px,8vw,135px);margin-bottom:30px}
.cm-next__body>p:not(.section-kicker){font-size:20px;line-height:1.55;color:#d8ccdb;max-width:560px;margin-bottom:30px}
.cm-next__foot{display:flex;gap:30px;justify-content:space-between;border-top:1px solid rgba(255,255,255,.4);padding-top:22px;font-size:14px}
.cm-next__foot a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.cm-path__steps{grid-template-columns:repeat(4,minmax(0,1fr))}.cm-path__steps li{border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:20px}.cm-path__steps li:nth-child(5){border-left:0;padding-left:0}}
@media(max-width:900px){.cm-hero__body{grid-template-columns:1fr;gap:30px}.cm-hero__aside{max-width:700px}.cm-development__grid,.cm-formats__body{grid-template-columns:1fr}.cm-development__image{max-width:700px}.cm-formats__visual{position:static;max-width:650px}.cm-formats__list{width:100%}.cm-split,.cm-location__grid,.cm-faq__layout{grid-template-columns:1fr;gap:28px}.cm-prose{max-width:760px}.cm-location address{margin-top:30px}}
@media(max-width:760px){.ontario-page main>section[id]{scroll-margin-top:72px}.cm-hero{padding-top:98px;min-height:100svh}.cm-hero__body{padding:90px 0 60px}.cm-hero h1{font-size:clamp(43px,9.8vw,72px)}.cm-hero__foot{flex-wrap:wrap;font-size:9px}.cm-hero__image:after{background:rgba(56,33,62,.79)}.ontario-page h2{font-size:clamp(39px,8.6vw,65px)}.cm-capability,.cm-market,.cm-quality,.cm-location,.cm-why,.cm-faq{padding-bottom:90px}.cm-split,.cm-faq__layout{padding-top:42px}.cm-split--top{padding-bottom:45px}.cm-capability__rail{grid-template-columns:repeat(2,1fr)}.cm-capability__rail span:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.cm-capability__rail span:nth-child(4){border-top:1px solid var(--line)}.cm-development__grid{padding-top:43px}.cm-formats__intro{grid-template-columns:1fr;gap:28px;padding:42px 0}.cm-formats{padding-bottom:80px}.cm-path__heading{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px}.cm-path__heading .section-kicker{margin-bottom:-20px}.cm-path__steps{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-path__steps li:nth-child(odd){border-left:0;padding-left:0}.cm-path__steps li:nth-child(even){border-left:1px solid rgba(255,255,255,.18);padding-left:16px}.cm-why__heading{padding:45px 0}.cm-why__grid{grid-template-columns:1fr}.cm-why__grid article{min-height:0;padding:23px}.cm-why__grid h3{margin-top:30px}.cm-next__body{padding:65px 0 80px}.cm-next h2{font-size:clamp(58px,11vw,90px)}}
@media(max-width:420px){.cm-hero h1{font-size:clamp(39px,10.7vw,48px)}.cm-hero__foot span{flex:1 1 42%}.cm-hero__foot span:last-child{flex-basis:100%}.cm-capability__rail span{font-size:9px;line-height:1.4}.cm-formats h2{font-size:36px}.cm-formats__list strong{font-size:23px}.cm-path__steps strong{font-size:15px}.cm-next__foot{flex-direction:column;gap:14px}.cm-faq summary{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;scroll-snap-type:none}.ontario-page.has-motion [data-reveal]{opacity:1;transform:none;transition:none}}
