/* ===== Reset & Base ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html,
body {
    overflow-x: clip;
}
img {
    max-width: 100%;
}
body {
    font-family: 'Radio Canada', sans-serif;
    background: #f9f9f9;
    color: #000;
    line-height: 1.2;
    min-width: 0;
}
#app {
    width: 100%;
    max-width: 100%;
}
a {
    text-decoration: none;
    color: inherit;
}
button {
    cursor: pointer;
    font-family: inherit;
    border: none;
    background: none;
}
.a11y {
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    border: 0;
    width: 1px;
    height: 1px;
    padding: 0;
    position: absolute;
}
.appContainer {
    max-width: 1202px;
    margin: 0 auto;
    padding: 0 16px;
    background: #fff;
}

/* ===== Header ===== */
.globalHeader {
    background: #fff;
    padding: 8px 0 0;
    border-bottom: 1px solid #eaeaea;
}
.menuNavWrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 16px 8px;
    max-width: 1202px;
    margin: 0 auto;
    width: 100%;
}
.logoWrapper {
    display: flex;
    align-items: center;
    height: 48px;
}
.logo {
    display: flex;
    align-items: center;
}
.logoIcon {
    display: block;
}

/* ===== Main Content ===== */
.feed-content {
    padding: 16px 0 0;
}
.flexibleLandingPage {
    max-width: 1202px;
    margin: 0 auto;
    padding: 0 16px;
    width: 100%;
}
/* Onboarding Banner */
.onboardingBanner-HWiuQ {
    background: #fff;
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 24px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}
.bannerContent-CWB3u {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}
.copyContainer-gnVvT {
    flex: 1;
}
.headCopy-LLFeO {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
}
.bodyCopy-QI2HH {
    font-size: 18px;
    color: #353535;
}
.imageContainer-PdUky {
    width: 160px;
    flex-shrink: 0;
}
.imageContainer-PdUky video {
    width: 100%;
    max-width: 100%;
    display: block;
}
@media (max-width: 600px) {
    .bannerContent-CWB3u {
        flex-direction: column;
        text-align: center;
    }
    .imageContainer-PdUky {
        width: 120px;
    }
    .headCopy-LLFeO {
        font-size: 22px;
    }
    .bodyCopy-QI2HH {
        font-size: 16px;
    }
}

/* Section Containers */
.sectionContainer {
    margin-bottom: 24px;
}
.sectionContainer-wrapper {
    max-width: 1202px;
    margin: 0 auto;
    min-width: 0;
    width: 100%;
}

/* Mixed Grid */
.mixedGrid-F42hY {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    align-items: start;
    min-width: 0;
    max-width: 100%;
}
@media (min-width: 768px) {
    .mixedGrid-F42hY {
        align-items: stretch;
    }
}
@media (min-width: 768px) {
    .mixedGrid-F42hY {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto auto;
    }
    .mixedGrid-F42hY a:first-child {
        grid-row: span 3;
    }
}
@media (min-width: 964px) {
    .mixedGrid-F42hY {
        grid-template-columns: 1.5fr 1fr 1fr;
    }
    .mixedGrid-F42hY a:first-child {
        grid-row: span 2;
    }
    .mixedGrid-F42hY a:nth-child(2) {
        grid-column: span 2;
    }
}

/* Cards */
.cardWrapper-u5T0r {
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    transition: outline 0.2s;
    overflow: hidden;
    height: auto;
    min-width: 0;
    max-width: 100%;
    width: 100%;
}
@media (min-width: 768px) {
    .mixedGrid-F42hY > .cardWrapper-u5T0r:first-child {
        height: 100%;
    }
    .mixedGrid-F42hY > .cardWrapper-u5T0r:first-child .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm {
        height: 100%;
        flex: 1;
        min-height: 0;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm {
        flex-direction: column;
        height: 100%;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm .imageContainer-mCtvV {
        flex: 1 1 auto;
        min-height: 0;
        aspect-ratio: auto;
        display: flex;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm .vthImage-H1PW7 {
        flex: 1;
        min-height: 0;
        width: 100%;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm .imageContainer-mCtvV img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm .cardBodyContainer-Hevvd {
        flex: 0 0 auto;
    }
}
.cardWrapper-u5T0r:hover {
    outline: 2px solid #0074ad;
}
.verticalToHorizontalCard-vt3tI {
    display: flex;
    flex-direction: column;
    height: auto;
    min-width: 0;
    max-width: 100%;
}
.verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm {
    height: 100%;
}
.imageContainer-mCtvV {
    position: relative;
    overflow: hidden;
    background: #e7e7e7;
    aspect-ratio: 16 / 9;
}
.imageContainer-mCtvV img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.vthImage-H1PW7 {
    display: flex;
    width: 100%;
    height: 100%;
}
.vthImage-H1PW7 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.badge-XSqdS {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 2;
    background: #0074ad;
    color: #fff;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.badgeText-JQgA7 {
    font-size: 12px;
    font-weight: 700;
}
.cardBodyContainer-Hevvd {
    padding: 16px;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow: hidden;
}
.headline-fGLGh {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    margin: 0;
    min-width: 0;
    max-width: 100%;
    width: 100%;
    word-break: break-all;
    overflow-wrap: anywhere;
}
.title-lFsx5 {
    display: block;
    max-width: 100%;
    word-break: break-all;
    overflow-wrap: anywhere;
}
.description-hDiun {
    font-size: 14px;
    line-height: 1.5;
    color: #353535;
    margin-top: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Mobile/Tablet variants */
@media (max-width: 768px) {
    .verticalToHorizontalCard-vt3tI.mobile-vertical-ZmWWm {
        flex-direction: column;
    }
    .verticalToHorizontalCard-vt3tI.mobile-horizontal-i4lpg {
        flex-direction: row;
        align-items: stretch;
    }
    .verticalToHorizontalCard-vt3tI.mobile-horizontal-i4lpg .imageContainer-mCtvV {
        width: 112px;
        flex-shrink: 0;
        aspect-ratio: 4 / 3;
    }
    .verticalToHorizontalCard-vt3tI.mobile-horizontal-i4lpg .cardBodyContainer-Hevvd {
        padding: 10px 12px;
        flex: 1 1 0%;
        min-width: 0;
    }
    .mixedGrid-F42hY > *,
    .layoutGrid-i0KPs > * {
        min-width: 0;
        max-width: 100%;
    }
}
@media (min-width: 768px) and (max-width: 963px) {
    .verticalToHorizontalCard-vt3tI.tablet-horizontal-QuaaS {
        flex-direction: row;
        align-items: stretch;
    }
    .verticalToHorizontalCard-vt3tI.tablet-horizontal-QuaaS .imageContainer-mCtvV {
        width: 200px;
        flex-shrink: 0;
        aspect-ratio: 4 / 3;
    }
    .verticalToHorizontalCard-vt3tI.tablet-horizontal-QuaaS .cardBodyContainer-Hevvd {
        padding: 12px 16px;
        flex: 1 1 0%;
        min-width: 0;
    }
    .verticalToHorizontalCard-vt3tI.tablet-vertical-bBJw5 {
        flex-direction: column;
    }
}
@media (min-width: 964px) {
    .verticalToHorizontalCard-vt3tI.desktop-horizontal-WOxRr {
        flex-direction: row;
        align-items: stretch;
    }
    .verticalToHorizontalCard-vt3tI.desktop-horizontal-WOxRr .imageContainer-mCtvV {
        width: 240px;
        flex-shrink: 0;
        aspect-ratio: 4 / 3;
    }
    .verticalToHorizontalCard-vt3tI.desktop-horizontal-WOxRr .cardBodyContainer-Hevvd {
        padding: 16px 24px;
        flex: 1 1 0%;
        min-width: 0;
    }
    .verticalToHorizontalCard-vt3tI.desktop-vertical-OEGVE {
        flex-direction: column;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm .cardBodyContainer-Hevvd {
        padding: 16px 24px;
        flex: 0 0 auto;
    }
    .verticalToHorizontalCard-vt3tI.desktop-tallVertical-S2xIm .headline-fGLGh {
        font-size: 20px;
    }
}

/* Video specific */
.audioVideo-k6GL0 .playButton-syWIC {
    position: absolute;
    bottom: 12px;
    left: 12px;
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255,255,255,0.5);
}
.audioVideo-k6GL0 .playButton-syWIC svg path {
    fill: #fff;
}
.videoTimeContainer-t_br3 {
    position: absolute;
    bottom: 12px;
    right: 8px;
    background: #121212;
    border-radius: 4px;
    padding: 4px 8px;
    display: flex;
    align-items: center;
    gap: 4px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
}
.videoTimeContainer-t_br3 svg {
    fill: #fff;
}
.audioVideo-k6GL0 .imageButton-QL15c {
    border: none;
    padding: 0;
    background: none;
    display: block;
    width: 100%;
}
.audioVideo-k6GL0 .interiorLinkWrap-TdEMz {
    display: block;
    padding: 0 16px 16px;
}

/* Must Watch */
.multiMediaSlider-wMtW2 {
    background: #fff;
    border-radius: 16px;
    padding: 24px 16px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}
.multiMediaSlider-wMtW2 .headingRow-vhoCA {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}
.multiMediaSlider-wMtW2 .heading-Fui7j {
    font-size: 24px;
    font-weight: 700;
}
.multiMediaSlider-wMtW2 .widgetSlider-CxyNb {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    padding: 4px 0 12px;
}
.multiMediaSlider-wMtW2 .widgetSlider-CxyNb > .cardWrapper-u5T0r {
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.multiMediaSlider-wMtW2 .widgetSlider-CxyNb .verticalToHorizontalCard-vt3tI {
    height: 100%;
    flex: 1;
    min-height: 0;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    overflow: hidden;
}
@media (max-width: 768px) {
    .multiMediaSlider-wMtW2 .widgetSlider-CxyNb {
        grid-template-columns: 1fr;
    }
}
.card-Fso4D {
    width: 100%;
    flex-shrink: 0;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    overflow: hidden;
    cursor: pointer;
}
.card-Fso4D .imageContainer-DtzLv {
    position: relative;
    aspect-ratio: 16/9;
    background: #e7e7e7;
}
.card-Fso4D .imageContainer-DtzLv img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.card-Fso4D .playButton-SwBFV {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    padding: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.card-Fso4D .playButton-SwBFV path {
    fill: #fff;
}
.card-Fso4D .headline-Afjhk {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
    overflow-wrap: anywhere;
}
.card-Fso4D .headlineWrap-m7qJC {
    padding: 12px 16px 16px;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

/* Layout Grid */
.layoutGridOuter-XEh9P {
    margin: 0;
    max-width: 100%;
}
.layoutGrid-i0KPs {
    display: grid;
    gap: 20px;
    padding: 0;
    min-width: 0;
    max-width: 100%;
}
.layoutGrid-i0KPs[style*="--numColumns:1"] {
    grid-template-columns: 1fr;
}
.layoutGrid-i0KPs[style*="--numColumns:2"] {
    grid-template-columns: 1fr 1fr;
}
@media (max-width: 768px) {
    .layoutGrid-i0KPs[style*="--numColumns:2"] {
        grid-template-columns: 1fr;
    }
}

/* ===== Footer ===== */
.globalFooter {
    background: #fff;
    border-top: 1px solid #eaeaea;
    padding: 32px 0 0;
    margin-top: 32px;
}
.globalFooter.sclt-footer {
    padding-bottom: 0;
}
.footerBody {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1202px;
    margin: 0 auto;
    padding: 0 16px;
}
.footerColumn {
    flex: 1 0 160px;
    padding: 8px 12px 16px;
    min-width: 140px;
}
.footerHeading {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 12px;
    color: #000;
}
.footerList {
    list-style: none;
    padding: 0;
}
.footerItem {
    margin-bottom: 6px;
}
.footerLink {
    color: #0550c8;
    font-size: 14px;
    text-decoration: none;
}
.footerLink:hover {
    text-decoration: underline;
}
.footerColumn p {
    font-size: 14px;
    color: #353535;
    line-height: 1.5;
    margin-top: 8px;
}
.basicFooter {
    background: #000;
    color: #fff;
    padding: 16px 0;
    margin-top: 24px;
}
.basicFooter .footerBody {
    flex-direction: column;
    align-items: center;
    gap: 10px;
}
.basicFooter .footerColumn {
    flex: 0 0 auto;
    width: 100%;
    text-align: center;
    padding: 4px 8px;
}
.basicFooter .extendedLogo {
    text-align: center;
}
.basicFooter .extendedLogo img {
    height: 32px;
    width: auto;
    max-width: 100%;
}
.basicFooter .copyright {
    font-size: 12px;
    font-weight: 700;
    text-align: center;
}
.basicFooter .radioCanada {
    text-align: center;
    font-size: 12px;
    font-weight: 700;
}
.basicFooter .radioCanada a {
    color: #fff;
    text-decoration: none;
}
.basicFooter .radioCanada a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .footerColumn {
        flex: 1 0 100%;
        text-align: center;
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .footerColumn,
    .basicFooter .copyright,
    .basicFooter .radioCanada {
        word-break: break-all;
    }
    .menuNavWrapper {
        padding: 4px 12px 8px;
    }
    .flexibleLandingPage {
        padding: 0 12px;
    }
    .onboardingBanner-HWiuQ {
        padding: 12px;
        margin-bottom: 16px;
    }
    .multiMediaSlider-wMtW2 {
        padding: 16px 12px;
    }
    .multiMediaSlider-wMtW2 .heading-Fui7j {
        font-size: clamp(18px, 5vw, 24px);
    }
    .sectionContainer {
        margin-bottom: 16px;
    }
}

@media (max-width: 480px) {
    .feed-content {
        padding-top: 12px;
    }
    .headCopy-LLFeO {
        font-size: clamp(18px, 6vw, 22px);
    }
    .bodyCopy-QI2HH {
        font-size: 14px;
    }
    .cardBodyContainer-Hevvd {
        padding: 10px;
    }
    .headline-fGLGh {
        font-size: 14px;
    }
    .footerBody {
        padding: 0 12px;
    }
    .basicFooter {
        padding: 12px 0;
    }
    .verticalToHorizontalCard-vt3tI.mobile-horizontal-i4lpg .imageContainer-mCtvV {
        width: 96px;
    }
}
