/**
 * RSX Framework
 * Copyright 2015 Bell Canada
 * 
 * Typography styling and import fonts.
 * Reference: http://rsxdeployment.azurewebsites.net/docs/cheatsheet.html#typo
 */


/* define bell-slim font */
@font-face {
    font-family: 'bell-slim';
    src: url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_regular-webfont.woff2?ver=00000000') format('woff2'), url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_regular-webfont.woff?ver=00000000') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: block; 
}


@font-face {
    font-family: 'bell-slim';
    src: url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_medium-webfont.woff2?ver=00000000') format('woff2'), url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_medium-webfont.woff?ver=00000000') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}


@font-face {
    font-family: 'bell-slim';
    src: url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_semibold-webfont.woff2?ver=00000000') format('woff2'), url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_semibold-webfont.woff?ver=00000000') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: block;
}

@font-face {
    font-family: 'rsx-font-heavy';
    src: url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_heavy-webfont.woff2?ver=00000000') format('woff2'), url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_heavy-webfont.woff?ver=00000000') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

@font-face {
    font-family: 'rsx-font-black';
    src: url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_black-webfont.woff2?ver=00000000') format('woff2'), url('https://mybell-qc.akamaized.net/Styles/RSX/framework/css/fonts/bellslim_black-webfont.woff?ver=00000000') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}




/* base */
body {
    line-height: 1.42857143;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 14px;
    color: #555;
}

.rsx-font_slim {
    font-family: 'bell-slim';
}




/* headings */
h1, .rsx-h1, .rsx-h1-xs, .rsx-h1-sm,
h2, .rsx-h2, .rsx-h2-xs, .rsx-h2-sm,
h3, .rsx-h3, .rsx-h3-xs, .rsx-h3-sm,
h4, .rsx-h4, .rsx-h4-xs, .rsx-h4-sm,
h5, .rsx-h5, .rsx-h5-xs, .rsx-h5-sm,
h6, .rsx-h6, .rsx-h6-xs, .rsx-h6-sm,
.rsx-promo-lg,
.rsx-promo-sm {
    margin: 0;
    color: #111;
}

h1, .rsx-h1,
h2, .rsx-h2,
h3, .rsx-h3,
h4, .rsx-h4 {
    font-family: 'bell-slim';
}

h5, .rsx-h5,
h6, .rsx-h6 {
    font-family: Helvetica,Arial,sans-serif;
    letter-spacing: normal;
}

    h1.rsx-txt-indent,
    .rsx-h1.rsx-txt-indent {
        text-indent: -31px;
        padding-left: 31px;
    }

    h2.rsx-txt-indent,
    .rsx-h1.rsx-txt-indent {
        text-indent: -27px;
        padding-left: 27px;
    }

    h3.rsx-txt-indent,
    .rsx-h3.rsx-txt-indent {
        text-indent: -20px;
        padding-left: 20px;
    }




/* font size */
.rsx-promo-lg {
    font-weight: 200;
    font-size: 68px;
    letter-spacing: -3.4px;
    line-height: 1;
}

.rsx-promo-sm {
    font-weight: 200;
    font-size: 48px;
    letter-spacing: -2px;
    line-height: 1;
}

h1,
.rsx-h1 {
    font-weight: 200;
    font-size: 40px;
    letter-spacing: -1.4px;
    line-height: 1.15;
}

h2,
.rsx-h2 {
    font-weight: 200;
    font-size: 32px;
    letter-spacing: -.55px;
    line-height: 1.1;
}

h3,
.rsx-h3 {
    font-size: 24px;
    letter-spacing: -.6px;
    line-height: 1.1;    
}

h4,
.rsx-h4 {
    font-size: 20px;
    letter-spacing: -.5px;
    line-height: 1.3;
    font-weight: 700;
}

h5,
.rsx-h5 {
    font-weight: normal;
    font-size: 18px;
}

h6,
.rsx-h6 {
    font-weight: normal;
    font-size: 18px;
}

.rsx-bell-font {
    font-family: 'bell-slim' !important;
}

.rsx-sans-font {
    font-family: sans-serif !important;
    letter-spacing: normal !important;
}

.rsx-font-heavy {
    font-family: 'rsx-font-heavy' !important;
}

.rsx-font-black {
    font-family: 'rsx-font-black' !important;
}

/* Superscript within headings */

h1 sup, .rsx-h1 sup, .rsx-h1-xs  > sup, .rsx-h1-sm  > sup,
h2 sup, .rsx-h2 sup, .rsx-h2-xs  > sup, .rsx-h2-sm  > sup,
h3 sup, .rsx-h3 sup, .rsx-h3-xs  > sup, .rsx-h3-sm  > sup,
h4 sup, .rsx-h4 sup, .rsx-h4-xs  > sup, .rsx-h4-sm  > sup,
h5 sup, .rsx-h5 sup, .rsx-h5-xs  > sup, .rsx-h5-sm  > sup,
h6 sup, .rsx-h6 sup, .rsx-h6-xs  > sup, .rsx-h6-sm  > sup,
.rsx-promo-lg  > sup,
.rsx-promo-sm  > sup {
    top: -0.7em;
    font-size: 50%;
}

h1.rsx-font-heavy, .rsx-h1.rsx-font-heavy,
h2.rsx-font-heavy, .rsx-h2.rsx-font-heavy,
h3.rsx-font-heavy, .rsx-h3.rsx-font-heavy,
h4.rsx-font-heavy, .rsx-h4.rsx-font-heavy {
    font-family: 'rsx-font-heavy', Helvetica,Arial,sans-serif;
}

h1.rsx-font-heavy, .rsx-h1.rsx-font-heavy {
    letter-spacing: -1px;
}

h2.rsx-font-heavy, .rsx-h2.rsx-font-heavy {
    letter-spacing: -.8px;
}

h3.rsx-font-heavy, .rsx-h3.rsx-font-heavy {
    letter-spacing: -.5px;
}

h4.rsx-font-heavy, .rsx-h4.rsx-font-heavy {
    letter-spacing: -.5px;
}


h1.rsx-font-black, .rsx-h1.rsx-font-black,
h2.rsx-font-black, .rsx-h2.rsx-font-black,
h3.rsx-font-black, .rsx-h3.rsx-font-black,
h4.rsx-font-black, .rsx-h4.rsx-font-black {
    font-family: 'rsx-font-black', Helvetica,Arial,sans-serif;
}

h1.rsx-font-black, .rsx-h1.rsx-font-black {
    letter-spacing: -1px;
}

h2.rsx-font-black, .rsx-h2.rsx-font-black {
    letter-spacing: -.8px;
}

h3.rsx-font-black, .rsx-h3.rsx-font-black {
    letter-spacing: -.5px;
}

h4.rsx-font-black, .rsx-h4.rsx-font-black {
    letter-spacing: -.5px;
}

@media (max-width: 519px) {
    .rsx-sans-font-xs {
        font-family: sans-serif !important;
    }

    .rsx-bell-font-xs {
        font-family: 'bell-slim' !important;
    }

    h1,
    .rsx-h1 {
        font-weight: 200;
        font-size: 32px;
        letter-spacing: -1.2px;
        line-height: 1.1;
    }

    h2,
    .rsx-h2 {
        font-weight: 200;
        font-size: 30px;
        letter-spacing: -1px;
        line-height: 1.15;
    }

    h3,
    .rsx-h3 {
        font-size: 24px;
        letter-spacing: -.4px;
        line-height: 1.1;
        font-weight: normal;
    }

    h4,
    .rsx-h4 {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }

    h5,
    .rsx-h5 {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }

    h6,
    .rsx-h6 {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }

    .rsx-h1-xs {
        font-family: 'bell-slim';
        font-weight: 200;
        font-size: 34px;
        letter-spacing: -2.15px;
        line-height: 1.1;
    }

    .rsx-h2-xs {
        font-family: 'bell-slim';
        font-weight: 200;
        font-size: 30px;
        letter-spacing: -1px;
        line-height: 1.15;
    }

    .rsx-h3-xs {
        font-family: 'bell-slim';
        font-size: 24px;
        letter-spacing: -.4px;
        line-height: 1.1;
    }

    .rsx-h4-xs {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }
}

@media (min-width: 520px) and (max-width: 999px) {
    .rsx-sans-font-sm {
        font-family: sans-serif !important;
    }

    .rsx-bell-font-sm {
        font-family: 'bell-slim' !important;
    }

    h1,
    .rsx-h1 {
        font-weight: 200;
        font-size: 34px;
        letter-spacing: -1.25px;
        line-height: 1.1;
    }

    h2,
    .rsx-h2 {
        font-weight: 200;
        font-size: 30px;
        letter-spacing: -1px;
        line-height: 1.15;
    }

    h3,
    .rsx-h3 {
        font-size: 24px;
        letter-spacing: -.4px;
        line-height: 1.1;
    }

    h4,
    .rsx-h4 {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }

    h5,
    .rsx-h5 {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }

    h6,
    .rsx-h6 {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }

    .rsx-h1-sm {
        font-family: 'bell-slim';
        font-weight: 200;
        font-size: 34px;
        letter-spacing: -1.25px;
        line-height: 1.1;
    }

    .rsx-h2-sm {
        font-family: 'bell-slim';
        font-weight: 200;
        font-size: 30px;
        letter-spacing: -1px;
        line-height: 1.15;
    }

    .rsx-h3-sm {
        font-family: 'bell-slim';
        font-size: 24px;
        letter-spacing: -.4px;
        line-height: 1.1;
    }

    .rsx-h4-sm {
        font-family: Helvetica,Arial,sans-serif;
        font-weight: normal;
        font-size: 18px;
        letter-spacing: -.4px;
    }
}

@media (min-width: 1000px) and (max-width: 1239px) {
    .rsx-sans-font-md {
        font-family: sans-serif !important;
    }
}

@media (min-width: 1240px) {
    .rsx-sans-font-lg {
        font-family: sans-serif !important;
    }
}

.rsx-note {
    font-size: 12px !important;
}

    .rsx-note p {
        margin-top: 3px;
        margin-bottom: 3px;
    }

/*Global RSX header font heavy style*/

/** Global H1 Black Font **/
html[id="shop"] h1,
html[id="shop"] .rsx-h1,
html[id="shophello"] h1,
html[id="shophello"] .rsx-h1
 {
    font-family: rsx-font-black !important;
    letter-spacing: -1px;
    font-weight:200!important;
	 -webkit-font-smoothing:antialiased;
}


/** Mobility Device product detail Black Font **/
    html[id="shop"] h1.rsx-bell-font,
    html[id="shop"] .rsx-h1.rsx-bell-font,
    html[id="shophello"] h1.rsx-bell-font,
    html[id="shophello"] .rsx-h1.rsx-bell-font
 {
        font-family: rsx-font-black !important;
        font-weight: 200 !important;
		  -webkit-font-smoothing:antialiased;
    }


/** Bundles Page Banner Black font **/
html.js .rsx-offertile-gradient-title,
html.js div.rsx-eshop-bundles-page h2.rsx-offertile-gradient-title,
html.js div.rsx-eshop-bundles-page .rsx-h2.rsx-offertile-gradient-title {
    font-family: rsx-font-black !important;
    letter-spacing: -1px !important;
    font-weight: 200 !important;
	 -webkit-font-smoothing:antialiased;
}

/*Fix the general H3 default weight in Firefox*/
h3 {
    font-weight: normal
}

/*Change the H2-H3 headings in Consumer Shop to Bell Slim Black*/
html#shop h2,
html#shop .rsx-h2,
html#shop h3,
html#shop .rsx-h3 {
    font-family: 'rsx-font-black';
}

/*To keep the the main nav LOB headings and Aliant login flyout headings as bell-slim*/
html#shop .rsx-connector h3,
html#shop .rsx-connector h4 {
    font-family: 'bell-slim'
}

/*Change the H4 headings in Consumer Shop to Arial*/
html#shop h4,
html#shop .rsx-h4 {
    font-family: Helvetica,Arial,sans-serif;
}

html#shop h2,
html#shop .rsx-h2 {
    letter-spacing: -0.5px;
}

html#shop h3,
html#shop .rsx-h3 {
    letter-spacing: -0.4px;
}

html#shop h4,
html#shop .rsx-h4 {
    letter-spacing: normal;
}

html#shop h5,
html#shop .rsx-h5 {
    font-weight: bold;
}
html#shop .rsx-h5,
html#shop .rsx-h6 {
    font-family: Arial, Helvetica, sans-serif;
    letter-spacing: normal;
}

html#shop .rsx-h6 {
    font-weight: normal;
}
html#shop h6 {
    letter-spacing: normal;
}

/*for Mobility Device details page subheads, change to Bell Slim Black, but NOT the prices in Eshop*/
html#shop .rsx-bell-font:not(.rsx-price) {
    font-family: 'rsx-font-black' !important;
}

/*for Mobility Devices Apple tab, fixes Firefox weight on main heading*/
html#shop h2.rsx-txt-bold {
    font-weight: 400 !important;
}

/*for Internet packages page, fixes Firefox weight on tier names */
html#shop h3.rsx-txt-bold {
    font-weight: 400 !important;
}

/*for Why Bell TV page subheadings, fixes Firefox weight*/
html#shop [class^="fibe-main-container-section"] .rsx-h3 {
    font-weight: 400
}

/*for Eshop solution builder top navigation headers for each LOB, change to normal font weight*/
.rsx-sb-menu nav > a > .rsx-h4 {
    font-weight: normal !important;
}

/*for Eshop checkout review page heading, change to 32px*/
.rsx-checkout-content h1#contentpagetitle {
    font-size: 32px;
}


/*styles for brand treatment - h2 - h6*/
.FTTH-section-2 h3,
.FTTH-section-2 .HeaderFix,
.rsx-bndl-address-bar-links-wrap h4,
.rsx-sb-bndl-standard-address-bar_links > h4 {
    font-weight: normal !important;
    font-size: 18px !important;
    font-family: Helvetica,Arial,sans-serif !important;
    letter-spacing: normal !important;
}

@media (max-width: 999px) {
    .FTTH-section-2 h3,
    .FTTH-section-2 .HeaderFix,
    .rsx-bndl-address-bar-links-wrap h4,
    .rsx-sb-bndl-standard-address-bar_links > h4 {
        letter-spacing: -.4px !important;
    }
}

.special-promo h4 {
    font-size: 24px !important;
    letter-spacing: -0.4px !important;
    line-height: 1.1 !important;
    font-family: 'rsx-font-black' !important;
}

@media (max-width: 999px) {
    .special-promo h4 {
        font-weight: normal !important;
    }
}
