/* Canada joins the international row at the same size as every location. */
#state-chooser .location-entry [data-location-layout] .state-grid-international { grid-template-columns:repeat(3,var(--location-card-width))!important; }
#state-chooser .location-entry .state-card[data-state="canada"] { border-color:#e87986; }
#state-chooser .location-entry .state-card[data-state="canada"] > img { object-position:43% 20%; }
#state-chooser .location-entry .state-grid-international .state-card[data-state="canada"] .state-flag { opacity:0!important; background:linear-gradient(90deg,#d80621 0 25%,#fff 25% 75%,#d80621 75%); transition:opacity .35s ease; }
#state-chooser .location-entry .state-grid-international .state-card[data-state="canada"]:is(:hover,:focus-visible) .state-flag { opacity:.5!important; }
#state-chooser .location-entry .state-card[data-state="canada"] .role-copy > strong { color:#fff; }
@media (hover:none) { #state-chooser .location-entry .state-grid-international .state-card[data-state="canada"] .state-flag { opacity:.3!important; } }
@media (prefers-reduced-motion:reduce) { #state-chooser .location-entry .state-card[data-state="canada"] .state-flag { transition:none; } }
.canada-league { --canada-ink:#17151c;--canada-red:#b51f3c;color:var(--canada-ink);max-width:1440px;margin:auto;background:#faf8f5;font-family:Arial,sans-serif; }
.canada-league * { box-sizing:border-box; }
.canada-hero { display:grid;grid-template-columns:1fr 1fr;min-height:730px; }
.canada-hero-copy { padding:84px 7% 56px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center; }
.canada-eyebrow { font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase; }
.canada-league h1 { font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(64px,7vw,112px);font-weight:900;line-height:.95;letter-spacing:-.035em;margin:26px 0; }
.canada-league h1 span { color:var(--canada-red); }
.canada-deck { font-size:clamp(20px,2vw,28px);line-height:1.4;margin:0 0 30px; }
.canada-button { background:var(--canada-ink);color:#fff!important;padding:18px 25px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font:700 16px/1.3 Arial,sans-serif;text-decoration:none; }
.canada-button:hover { background:var(--canada-red); }
.canada-button:focus-visible,.canada-text-link:focus-visible { outline:3px solid var(--canada-red);outline-offset:5px; }
.canada-caption { font-size:11px;letter-spacing:.1em;margin-top:24px; }
.canada-hero-photo { margin:0;position:relative;min-height:730px;overflow:hidden; }
.canada-hero-photo img { position:absolute;width:100%;height:100%;object-fit:cover;object-position:43% 20%; }
.canada-hero-photo figcaption { position:absolute;bottom:24px;left:28px;color:#fff;text-shadow:0 2px 8px #000;font-weight:800;font-size:12px;letter-spacing:.15em; }
.canada-details { display:grid;grid-template-columns:1fr 1fr 1.25fr;background:var(--canada-ink);color:#fff;padding:40px 5%;gap:36px;scroll-margin-top:140px; }
.canada-details > div + div { border-left:1px solid #ffffff35;padding-left:36px; }
.canada-details span { color:#f5b1bd;font-size:11px;letter-spacing:.12em;font-weight:700; }
.canada-details h2 { font:700 30px/1.1 Arial,sans-serif;margin:17px 0 10px; }
.canada-details p { font-size:16px;line-height:1.6;margin:0;max-width:360px; }
.canada-pathway { display:grid;grid-template-columns:1fr 1fr;padding:70px 7%;gap:20px 70px; }
.canada-pathway > .canada-eyebrow { grid-column:1/-1; }
.canada-pathway h2 { font:800 clamp(32px,4vw,54px)/1.1 Arial,sans-serif;letter-spacing:-.04em;margin:0; }
.canada-pathway p { font-size:17px;line-height:1.7;margin-top:0; }
.canada-text-link { color:#9a1530;font-weight:800;text-decoration:underline;text-underline-offset:5px; }
@media(max-width:900px) { .canada-hero { min-height:0; }.canada-hero-copy { padding:42px 7%; }.canada-league h1 { font-size:64px; }.canada-hero-photo { min-height:570px; }.canada-details { gap:22px;padding:30px 6%;grid-template-columns:1fr; }.canada-details > div + div { border-left:0;border-top:1px solid #ffffff35;padding:22px 0 0; }.canada-details h2 { font-size:28px; }.canada-pathway { grid-template-columns:1fr;padding:42px 7%;gap:20px; } }
@media(max-width:560px) { .canada-hero { grid-template-columns:1fr; }.canada-hero-copy { padding:40px 7%; }.canada-hero-photo { min-height:0;height:480px; }.canada-hero-photo img { object-position:43% 15%; }.canada-league h1 { font-size:76px; }.canada-button { width:100%;justify-content:center; } }
