/* LAF parent brand and adult / youth service architecture. */
.service-portal{background:var(--paper);padding:32px 0 36px}
.portal-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:35px;align-items:center;margin-bottom:20px}
.portal-heading .eyebrow{margin-bottom:10px}.portal-heading h1{font-size:clamp(35px,3.45vw,49px);line-height:1.15;letter-spacing:-1.4px;margin:0}
.portal-heading>p{font-size:16px;color:var(--ink);font-weight:700;margin:0}.portal-heading>p>span{display:block;font-size:15px;font-weight:400;color:var(--muted);margin-top:8px}
.portal-jumps{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}.portal-jumps a{font-size:13px;text-decoration:none;border:1px solid #b6c4cc;background:#fff;padding:5px 12px;border-radius:20px}
.brand-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.brand-path{display:grid;grid-template-columns:160px minmax(0,1fr);border:1px solid #cad5db;border-top:4px solid #567b8b;background:#edf3f5;scroll-margin-top:100px}
.brand-path-youth{background:#fff1e9;border-top-color:var(--orange)}
.brand-path>img{width:100%;height:100%;max-height:360px;object-fit:cover;object-position:center;min-height:0}
.brand-path-content{padding:23px 25px}.brand-path-title h2{font-size:31px;letter-spacing:-.7px;margin-bottom:6px;line-height:1.2}.brand-path-title p{font-size:14px;color:var(--ink);margin:0}
.brand-path ul{list-style:none;margin:17px 0 18px;padding:0}.brand-path li+li{margin:0}.brand-path li a{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #c5d0d6;font-size:15px;line-height:1.3;text-decoration:none}.brand-path-youth li a{border-color:#e4cec0}.brand-path li a:hover{text-decoration:underline;color:var(--orange-dark)}.brand-path li span{font-size:16px;flex-shrink:0;color:var(--muted)}
.brand-path-content>.text-link{font-size:15px}.portal-workplace{display:flex;justify-content:space-between;align-items:center;gap:25px;border:1px solid var(--line);border-left:4px solid var(--orange);background:#fff;padding:15px 21px;margin-top:19px;text-decoration:none}.portal-workplace strong{display:block;font-size:18px}.portal-workplace>span>span{display:block;font-size:14px;color:var(--muted);margin-top:3px}.portal-workplace>b{font-size:14px;color:var(--orange-dark);white-space:nowrap}.portal-workplace:hover>b{text-decoration:underline}
.compact-finder{padding-top:40px;padding-bottom:40px}.pathway-disclosure{border:1px solid var(--line);padding:22px 26px;background:#fff}.pathway-disclosure>summary{font-size:20px;font-weight:700;cursor:pointer;line-height:1.5}.compact-finder .finder{width:100%;padding:30px 0 0}.compact-finder .pathway-results{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-finder .pathway-card h3{font-size:23px}
.branch-overview{padding-top:45px;padding-bottom:50px}.branch-overview>h2{font-size:34px}.branch-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.branch-service{display:flex;flex-direction:column;align-items:start;border:1px solid var(--line);border-top:3px solid var(--orange);padding:26px 23px;text-decoration:none;background:#fff}.branch-service:hover{background:var(--paper);border-color:var(--orange-dark)}.branch-service h3{font-size:24px}.branch-service p{font-size:15px;flex:1}.branch-service .text-link{font-size:14px}
.youth-values{background:#fff1e9}.youth-values .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding-top:28px;padding-bottom:28px}.youth-values h2{font-size:24px;letter-spacing:.5px;margin-bottom:10px;color:var(--orange-dark)}.youth-values p{font-size:15px;margin:0}
.brand-framework{border:1px solid var(--line);border-radius:12px;padding:30px}.framework-parent{text-align:center;max-width:430px;margin:0 auto 26px}.framework-parent>strong{display:block;font-size:34px;line-height:1.2}.framework-parent>span{font-size:14px;font-weight:700;letter-spacing:1px}.framework-parent p{font-size:15px;margin:8px 0 0}.framework-branches{display:grid;grid-template-columns:1fr 1fr;gap:22px}.framework-branches>article{padding:25px 27px;background:#edf3f5;border-top:3px solid #567b8b}.framework-branches>.framework-youth{background:#fff1e9;border-color:var(--orange)}.framework-branches h3{margin-bottom:10px}.framework-branches h3 a{text-decoration:none}.framework-branches p{font-size:15px}.framework-branches ul{font-size:15px;margin-bottom:0}.framework-promise{text-align:center;margin:25px 0 0;color:var(--ink);font-weight:700}.framework-workplace{margin:22px 0 0}
.method-summary{background:var(--ink);padding:32px;margin-top:40px;margin-bottom:10px}.method-summary h2{font-size:30px;line-height:1.35;color:#fff}.method-summary p{color:#e1e9ee;margin-bottom:0}.method-summary .eyebrow{color:#ffad96;margin-bottom:12px}
.sport-routing{padding-top:42px;padding-bottom:35px}.sport-routing .brand-path-grid>article{padding:30px;background:#edf3f5;scroll-margin-top:100px}.sport-routing .brand-path-grid>.sport-route-youth{background:#fff1e9}.sport-routing .eyebrow{font-size:13px}.sport-routing h3{font-size:27px}.sport-route-youth>.text-link{display:inline-block;margin-top:22px}.branch-sport-heading{padding-top:35px;padding-bottom:30px}.branch-sport-heading h2{font-size:38px;margin-bottom:0}#adult-sport,#private-coaching,#movement-foundation,#youth-performance,#concord,#markham,#inquiry-form{scroll-margin-top:110px}
.location-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:25px}.location-shortcuts>a{display:block;padding:27px 30px;border:1px solid var(--line);background:#fff;text-decoration:none}.location-shortcuts strong{display:block;font-size:22px;color:var(--ink);margin-bottom:10px}.location-shortcuts span{font-size:16px;color:var(--muted)}.location-shortcuts a:hover strong{text-decoration:underline;color:var(--orange-dark)}.location-pathways{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:65px}
.contact-routes{padding-top:35px}.contact-routes>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.contact-routes a{display:block;text-decoration:none;padding:22px 25px;background:var(--paper);border-top:3px solid var(--orange)}.contact-routes strong{display:block;font-size:21px;margin-bottom:6px}.contact-routes span{font-size:15px;color:var(--muted)}.contact-routes a:hover strong{text-decoration:underline;color:var(--orange-dark)}.archive-label{display:inline-block;border-left:4px solid var(--orange);background:white;color:var(--ink);font-size:15px;font-weight:700;padding:12px 18px;margin-bottom:25px}
.footer-nav{align-items:start}.footer-nav nav{flex-wrap:wrap;gap:9px 20px;max-width:990px}.footer-nav>a{flex-shrink:0}.nav-submenu{min-width:245px}
@media(max-width:1100px){.brand-path{grid-template-columns:125px minmax(0,1fr)}.brand-path-content{padding:22px}.portal-heading{grid-template-columns:1.2fr 1fr}.portal-heading h1{font-size:38px}.portal-workplace{gap:15px}.branch-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-pathways{gap:35px}.compact-finder .pathway-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.service-portal{padding:27px 0 30px}.portal-heading{display:block;margin-bottom:17px}.portal-heading h1{font-size:35px;line-height:1.15;letter-spacing:-1px}.portal-heading>p{margin-top:14px;font-size:14px}.portal-heading>p>span{font-size:14px;margin-top:5px}.portal-jumps{gap:8px;margin-bottom:17px}.portal-jumps a{font-size:12px;padding:5px 9px}.brand-path-grid{grid-template-columns:1fr;gap:20px}.brand-path{grid-template-columns:105px minmax(0,1fr)}.brand-path-content{padding:21px 19px}.brand-path-title h2{font-size:28px}.brand-path-title p{font-size:13px}.brand-path li a{font-size:14px;padding:8px 0}.brand-path-content>.text-link{font-size:14px}.brand-path>img{max-height:none}.portal-workplace{display:block;padding:18px 20px}.portal-workplace strong{font-size:19px}.portal-workplace>b{display:block;margin-top:14px}.compact-finder{padding:30px 0}.pathway-disclosure{padding:20px}.pathway-disclosure>summary{font-size:18px}.compact-finder .pathway-results{grid-template-columns:1fr}.branch-overview{padding-top:35px;padding-bottom:35px}.branch-overview>h2{font-size:30px}.branch-service-grid{grid-template-columns:1fr;gap:18px}.branch-service{padding:24px 23px}.branch-service h3{font-size:24px}.youth-values .wrap{grid-template-columns:1fr;gap:22px;padding-top:27px;padding-bottom:27px}.framework-branches{grid-template-columns:1fr}.brand-framework{padding:25px 20px}.framework-branches>article{padding:24px 22px}.framework-promise{font-size:15px}.method-summary{padding:27px 23px}.method-summary h2{font-size:26px}.sport-routing .brand-path-grid>article{padding:25px}.sport-routing h3{font-size:25px}.branch-sport-heading h2{font-size:32px}.location-shortcuts,.location-pathways{grid-template-columns:1fr;gap:22px}.location-shortcuts>a{padding:25px}.location-shortcuts strong{font-size:22px}.contact-routes>div{grid-template-columns:1fr;gap:15px}.contact-routes a{padding:21px 23px}.footer-nav nav{gap:8px 17px}}
@media(max-width:360px){.brand-path{grid-template-columns:80px minmax(0,1fr)}.brand-path-content{padding:19px 16px}.brand-path-title h2{font-size:26px}.portal-heading h1{font-size:32px}.portal-heading>p{font-size:13px}.portal-jumps a{font-size:11px;padding:5px 8px}.brand-path li a{font-size:13px}.brand-path li span{font-size:14px}.brand-path-title p{font-size:12px}}

/* The approved adult / youth photographic cover is the homepage focal point. */
.portal-impact{background:radial-gradient(ellipse at 100% 0%,#65362655,transparent 55%),#10232d;padding:32px 0 34px;color:#fff}
.portal-impact .portal-heading{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);margin-bottom:20px;gap:45px;align-items:end}
.portal-impact .portal-heading .eyebrow{color:#ffb29d;letter-spacing:2px;margin-bottom:13px}
.portal-impact .portal-heading h1{font-size:clamp(42px,4.4vw,64px);font-weight:800;line-height:1.02;letter-spacing:-2px;color:#fff}
.portal-impact .portal-heading h1 em{color:#ff7956;display:inline-block;margin-top:2px}
.portal-impact .portal-heading>p{color:#fff;font-size:18px;line-height:1.4;margin-bottom:4px}
.portal-impact .portal-heading>p>span{color:#c7d5dd;font-size:15px;line-height:1.5;margin-top:10px}
.portal-impact .portal-jumps{margin-bottom:20px;gap:9px}
.portal-impact .portal-jumps a{background:#ffffff08;border-color:#ffffff55;color:#fff;padding:6px 12px}
.portal-impact .portal-jumps a:hover{border-color:#ff7956;background:#ff633f20}
.portal-training-panorama{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:3px solid var(--orange);overflow:hidden}
.portal-visual-half{position:relative;min-width:0;aspect-ratio:1.5;overflow:hidden;scroll-margin-top:100px;background:#243641}
.portal-photo-link{position:absolute;inset:0;display:block;overflow:hidden;text-decoration:none}
.portal-photo-link img{position:absolute;top:0;left:0;width:200%;max-width:none;height:100%;object-fit:cover;object-position:center}
.portal-visual-youth .portal-photo-link img{left:-100%}
.portal-photo-link:after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,#07151f55,transparent 45%);pointer-events:none}
.portal-photo-label{position:absolute;z-index:1;top:22px;left:24px;display:flex;align-items:center;gap:16px;background:#0d202de8;border-left:3px solid var(--orange);padding:12px 16px;color:#fff;transition:background .15s}
.portal-photo-label h2{font-size:22px;font-weight:800;letter-spacing:.4px;line-height:1.2;color:#fff;margin:0}
.portal-photo-label>span{font-size:22px;color:#ff9d82;line-height:1}
.portal-visual-youth .portal-photo-label{top:auto;bottom:clamp(12px,2vw,22px)}
.portal-visual-youth .portal-photo-link:after{background:linear-gradient(0deg,#07151f55,transparent 35%)}
.portal-photo-link:hover .portal-photo-label{background:#b53518}.portal-photo-link:hover .portal-photo-label>span{color:#fff}
.portal-photo-link:focus-visible{outline-offset:-5px;outline:3px solid #fff}
.portal-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#182e3b;border:1px solid #42535e;border-top:0}
.portal-brand-services{display:block;min-width:0;padding:18px 24px 17px;font-size:14px}
.portal-brand-services+nav{border-left:1px solid #42535e}
.portal-brand-services>p{font-size:13px;letter-spacing:.3px;font-weight:700;color:#ffb29d;margin:0 0 8px}
.portal-brand-services ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;list-style:none;margin:0;padding:0;color:#fff}
.portal-brand-services li+li{margin:0}
.portal-brand-services li a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:39px;padding:8px 0;border-bottom:1px solid #ffffff25;font-size:14px;line-height:1.35;text-decoration:none;white-space:normal;color:#fff}
.portal-brand-services li a:hover{color:#ffb29d;text-decoration:underline}
.portal-brand-services li span{color:#ff9d82;flex-shrink:0}
.portal-impact .portal-workplace{background:#ffffff08;border-color:#ffffff30;border-left-color:var(--orange);margin-top:18px;padding:14px 20px;color:#fff}
.portal-impact .portal-workplace strong{font-size:17px;color:#fff}
.portal-impact .portal-workplace>span>span{font-size:13px;color:#c7d5dd}
.portal-impact .portal-workplace>b{color:#ffb29d}
@media(max-width:1100px){.portal-impact .portal-heading{gap:30px}.portal-impact .portal-heading h1{font-size:50px}.portal-impact .portal-heading>p{font-size:16px}.portal-brand-services{padding:18px 20px}.portal-brand-services ul{gap:0 16px}.portal-photo-label{top:18px;left:19px;padding:10px 13px}.portal-photo-label h2{font-size:20px}}
@media(max-width:700px){.portal-impact{padding:25px 0 29px}.portal-impact .portal-heading{display:block;margin-bottom:17px}.portal-impact .portal-heading h1{font-size:39px;letter-spacing:-1.2px;line-height:1.03}.portal-impact .portal-heading .eyebrow{font-size:12px;margin-bottom:11px}.portal-impact .portal-heading>p{font-size:14px;margin-top:15px}.portal-impact .portal-heading>p>span{display:none}.portal-impact .portal-jumps{gap:8px;margin-bottom:17px}.portal-impact .portal-jumps a{font-size:12px;padding:5px 9px}.portal-training-panorama{grid-template-columns:1fr}.portal-visual-half{aspect-ratio:1.5}.portal-photo-label{top:14px;left:15px;padding:9px 11px;gap:10px}.portal-photo-label h2{font-size:18px;letter-spacing:.2px}.portal-photo-label>span{font-size:20px}.portal-service-grid{grid-template-columns:1fr}.portal-brand-services+nav{border-left:0;border-top:1px solid #42535e}.portal-brand-services{padding:19px 20px}.portal-brand-services ul{gap:0 19px}.portal-brand-services li a{font-size:13px;min-height:44px}.portal-impact .portal-workplace{padding:18px 20px}.portal-impact .portal-workplace strong{font-size:18px}}
@media(max-width:360px){.portal-impact .portal-heading h1{font-size:34px}.portal-impact .portal-heading>p{font-size:13px}.portal-impact .portal-jumps a{font-size:11px;padding:5px 8px}.portal-photo-label{top:12px;left:13px}.portal-photo-label h2{font-size:16px}.portal-photo-label>span{font-size:18px}.portal-brand-services{padding:18px}.portal-brand-services ul{gap:0 16px}}

@media(max-width:700px){.portal-photo-label{top:auto;bottom:14px}.portal-photo-link:after{background:linear-gradient(0deg,#07151f55,transparent 35%)}}
@media(max-width:360px){.portal-photo-label{top:auto;bottom:12px}}

/* Active Aging courses and the supplied illustrated guide. */
.active-aging{background:#faf5ed;border-top:1px solid #e8dfd1;border-bottom:1px solid #e8dfd1}
.active-aging .section-heading>.lead{color:var(--ink)}
.active-aging .section-heading>div>p:last-child{margin-bottom:0}
.active-aging-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:34px;align-items:start}
.active-aging-courses{display:grid;gap:26px}
.active-aging-card{padding:29px 30px;background:#fff;border:1px solid #d9ddd8;border-top:4px solid #164a3c;scroll-margin-top:105px}
.active-aging-golden{border-top-color:var(--orange)}
.active-aging-card .eyebrow{font-size:12px;line-height:1.5;margin-bottom:10px}
.active-aging-card h3{font-size:30px;line-height:1.15;margin-bottom:14px;color:#103b32}
.active-aging-card p{font-size:15px;line-height:1.6}
.active-aging-card .active-aging-promise{font-size:18px;line-height:1.4;font-weight:700;color:var(--ink)}
.active-aging-focus{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:20px 0 16px}
.active-aging-focus li{margin:0;padding:6px 11px;border:1px solid #cbd7d2;background:#f0f6f3;border-radius:4px;color:#164a3c;font-size:12px;font-weight:700}
.active-aging-card .active-aging-note{font-size:14px}
.active-aging-assessment{border-left:3px solid var(--orange);padding:10px 14px;background:#fff3e9}
.active-aging-card .button{margin-top:4px}
.active-aging-poster{margin:0;background:#fff;border:1px solid #d9ddd8;padding:12px}
.active-aging-poster>a{display:block}.active-aging-poster img{display:block;width:100%;height:auto}
.active-aging-poster figcaption{padding:14px 5px 5px}.active-aging-poster .text-link{font-size:14px}
.active-aging-location{margin:30px 0 0;font-size:15px;line-height:1.7;color:var(--muted)}
.active-aging-location strong{color:var(--ink)}
@media(max-width:900px){.active-aging-layout{grid-template-columns:1fr;gap:28px}.active-aging-courses{grid-template-columns:1fr 1fr;align-items:start;gap:20px}.active-aging-card{padding:25px 23px}.active-aging-card h3{font-size:26px}.active-aging-poster{max-width:560px;width:100%;margin:0 auto}}
@media(max-width:700px){.active-aging-courses{grid-template-columns:1fr}.active-aging-card h3{font-size:27px}.active-aging-card .button{font-size:14px}.active-aging-poster{padding:9px}.active-aging-location{font-size:14px}}
