/**
* HTML5 ✰ Boilerplate
*
* style.css contains a reset, font normalization and some base styles.
*
* Credit is left where credit is due.
* Much inspiration was taken from these projects:
* - yui.yahooapis.com/2.8.1/build/base/base.css
* - camendesign.com/design/
* - praegnanz.de/weblog/htmlcssjs-kickstart
*/

/**
* html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
* v1.6.1 2010-09-17 | Authors: Eric Meyer & Richard Clark
* html5doctor.com/html-5-reset-stylesheet/
*/

/*
* revu et corrigé par Pedro
*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, .figcaption, figcaption, .figure, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}
article, aside, details, .figcaption, figcaption, .figure, figure, footer, header, hgroup, menu, nav, section, img {
    display: block;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    content: none;
}
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}
/**
* Font normalization inspired by YUI Library's fonts.css: developer.yahoo.com/yui/
*/

body {
    font: 16px sans-serif;
    *font-size: small;
}
/* Hack retained to preserve specificity */

/* Normalize monospace sizing:
en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome */

pre, code, kbd, samp {
    font-family: monospace, sans-serif;
}
/**
* Minimal base styles.
*/

/* 1) Always force a scrollbar in non-IE
2) Remove iOS text size adjust without disabling user zoom: www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */

html {
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}
/* j.mp/webkit-tap-highlight-color */

a:link {
    -webkit-tap-highlight-color: transparent;
}
/* Accessible focus_med treatment: people.opera.com/patrickl/experiments/keyboard/test */

a:hover, a:active {
    outline: none;
}
/*a, a:active, a:visited { color: #607890; }
a:hover { color: #036; }*/

ul {
    list-style-type: none;
}
ul, ol {
    margin: 0;
}
ol {
    list-style-type: decimal;
}
/* Remove margins for navigation lists */

nav ul, nav li {
    margin: 0;
    list-style: none;
    list-style-image: none;
}
small {
    font-size: 85%;
}
/*b, strong, th {
    font-weight: 600;
}*/
td {
    vertical-align: top;
}
/* Set sub, sup without affecting line-height: gist.github.com/413930 */

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.25em;
}
pre {
    /* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
    padding: 15px;
}
.ie6 legend, .ie7 legend {
    margin-left: -7px;
}
/* 1) Make inputs and buttons play nice in IE: www.viget.com/inspire/styling-the-button-element-in-internet-explorer/
2) WebKit browsers add a 2px margin outside the chrome of form elements.
Firefox adds a 1px margin above and below textareas
3) Set font-size to match <body>'s, and font-family to sans-serif
4) Align to baseline */

button, input, select, textarea {
    width: auto;
    overflow: visible;
    margin: 0;
    font-size: 100%;
    font-family: sans-serif;
    vertical-align: baseline;
}
/* 1) Remove default scrollbar in IE: www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/
2) Align to text-top */

textarea {
    overflow: auto;
    vertical-align: text-top;
}
/* Hand cursor on clickable input elements */

label, input[type="button"], input[type="submit"], input[type="image"], button {
    cursor: pointer;
    border: 0;
    box-shadow: none;
    background: none;
}
/* Remove extra padding and inner border in Firefox */

input::-moz-focus_med-inner, button::-moz-focus_med-inner {
    border: 0;
    padding: 0;
}
/* Colors for form validity */

input:valid, textarea:valid {} input:invalid, textarea:invalid {
    border-radius: 1px;
    -moz-box-shadow: 0px 0px 5px red;
    -webkit-box-shadow: 0px 0px 5px red;
    box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid, .no-boxshadow textarea:invalid {
    background-color: #f0dddd;
}
/* Bicubic resizing for non-native sized IMG:
code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */

.ie7 img {
    -ms-interpolation-mode: bicubic;
}
/**
* You might tweak these..
*/

body, select, input, textarea {
    color: #000;
    /*font-family: Arial, Helvetica, sans-serif;*/
    font-size: 16px;
}
/* Headers (h1, h2, etc) have no default font-size or margin; define those yourself */

h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}
/* These selection declarations have to be separate
No text-shadow: twitter.com/miketaylr/status/12228805301
Also: hot pink! */

/*::-moz-selection { background: none; color:#000; text-shadow: none; }
::selection { background:none; color:#000; text-shadow: none; }*/

/***********************************************************************************************
* Primary styles
***********************************************************************************************/

/*h1, h2, h3, h4 {-webkit-font-smoothing: antialiased;}
@media only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and ( min-device-pixel-ratio: 1.25), only screen and ( min-resolution: 200dpi), only screen and ( min-resolution: 1.25dppx) {
  -webkit-font-smoothing: subpixel-antialiased;
}*/

/* utils */

.fl {
    float: left;
}
.fr {
    float: right;
}
.clr {
    clear: both;
}
.nobrd {
    border: 0 none;
}
.hide {
    display: none;
}
.txtc {
    text-align: center;
}
.txtl {
    text-align: left;
}
.txtr {
    text-align: right;
}
* {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
}
.block {
    display: block;
}
.display_table {
    display: table;
    width: 100%;
}
.display_table_row {
    display: table-row;
}
.display_table_cell {
    display: table-cell;
}
.cursor {
    cursor: pointer;
}
.disabled {
    cursor: default;
}
.img_ctr img {
    width: 100%;
}
.btn_ctr {
    padding: 25px 0;
}
p {
    padding: 0 0 15px 0;
}

/* fonts *********************************************************************************/

body {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #333333;
    background: #ecebeb;
}
strong {
    font-weight: 700;
}

/* boutons and form elements *********************************************************************************/

/* Effect 10: reveal, push out */
.btn1  {
    position: relative;
    z-index: 1;
    display: block;
    text-align: center;
}
.btn1 a {
    overflow: hidden;
    margin: 0 15px;
    position: relative;
    display: inline-block;
    outline: none;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 400;
    text-shadow: 0 0 1px rgba(255,255,255,0.3);
    font-size: 12px;
    width: 260px;
    border: 2px solid #c94a00;
}

.btn1 a span {
    display: block;
    padding: 15px 35px;
    background: #c94a00;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
}

.btn1 a:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    padding: 15px 35px;
    color: #c94a00;
    background: #fff;
    content: attr(data-hover);
    width: 75%;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
    -webkit-transform: translateX(-25%);
}

.btn1 a:hover span,
.btn1 a:focus span {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    transform: translateX(100%);
}

.btn1 a:hover:before,
.btn1 a:focus:before {
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    transform: translateX(0%);
}

.btn2  {
    position: relative;
    z-index: 1;
    display: block;
    text-align: center;
}
.btn2 a {
    overflow: hidden;
    margin: 0 15px;
    position: relative;
    display: inline-block;
    outline: none;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 400;
    text-shadow: 0 0 1px rgba(255,255,255,0.3);
    font-size: 12px;
    width: 260px;
    border: 2px solid #125f96;
}

.btn2 a span {
    display: block;
    padding: 15px 35px;
    background: #125f96;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;    
}

.btn2 a:before {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    padding: 15px 35px;
    color: #125f96;
    background: #fff;
    content: attr(data-hover);
    width: 75%;    
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
    -webkit-transform: translateX(100%);
}

.btn2 a:hover span,
.btn2 a:focus span {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    transform: translateX(-100%);
}

.btn2 a:hover:before,
.btn2 a:focus:before {
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    transform: translateX(0%);
}


/* end boutons and form elements *********************************************************************************/

/* general styles *********************************************************************************/

/* structure */
.header_ct,
.section_ct,
.prefooter_ct,
.footer_ct,
.subfooter_ct {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}
/* /structure */

/* header */
header {
    position: fixed;
    width: 100%;
    left: 0;
    z-index: 99999;
    -webkit-transition: all .25s ease;
       -moz-transition: all .25s ease;
        -ms-transition: all .25s ease;
         -o-transition: all .25s ease;
            transition: all .25s ease;
}
.fixed header {
    background: rgba(255, 255, 255, 1);
    -webkit-box-shadow: 0px 14px 12px -6px rgba(0,0,0,0.15);
    -moz-box-shadow: 0px 14px 12px -6px rgba(0,0,0,0.15);
    box-shadow: 0px 14px 12px -6px rgba(0,0,0,0.15);
}
.header_ct {
    padding: 0 5%;
    position: relative;
}
.header_logo {
    padding: 30px 0;
    -webkit-transition: all .25s ease;
       -moz-transition: all .25s ease;
        -ms-transition: all .25s ease;
         -o-transition: all .25s ease;
            transition: all .25s ease;
}
.header_logo img {
    width: 100%;
    height: auto;
}
.header_nav {
    padding: 20px 0;
    -webkit-transition: all .25s ease;
       -moz-transition: all .25s ease;
        -ms-transition: all .25s ease;
         -o-transition: all .25s ease;
            transition: all .25s ease;
}
.header_nav li {
    margin: 25px 0 0 25px;
}
.header_nav a {
    color: #333333;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
    -webkit-transition: all .25s ease;
       -moz-transition: all .25s ease;
        -ms-transition: all .25s ease;
         -o-transition: all .25s ease;
            transition: all .25s ease;
}
.header_nav a.active_item {
    font-weight: 700;
}
/* /header */

/* body */

/* titres */
h1 {
    font-weight: 700;
    color: #125f96;
    padding: 25px 0 15px 0;
}
h1 span {
    display: block;
    font-weight: 400;
}
h2 {
    font-weight: 700;
    text-transform: uppercase;
    padding: 15px 0 0 0;
}
h3 {
    color: #125f96;
    padding: 0 0 15px 0;
}
h4 {
    font-weight: 700;
    text-transform: uppercase;
    color: #c94a00;
    padding: 0 0 15px 0;
}
section {
    padding: 25px 0;
    background: #fff;
}

/*purpose_section*/
.purpose_section {
    background: url(../img/purpose-bg.jpg) no-repeat center top /cover;
    padding-bottom: 0;
}
.purpose_ctr {
    margin: 0 5%;
    padding: 10% 0 0 0;
    overflow: hidden;
}
.purpose_ctr img {
    max-width: 100%;
    height: auto;
    display: inline-block;
    margin: 25px 0 -5px 0;
}
.btn_ctr li {
    padding: 15px 0;
}

/* how section */
.how_section {
    background: #f8f9fb;
}
/* /how section */


/* why section */
.advantages {
    line-height: 1.4;
    margin-top: 25px;
}
.advantage_elmt {
    padding: 120px 25px 10px 25px;
    position: relative;
}
.advantage_elmt:before {
    content: "";
    display: block;
    width: 130px;
    height: 130px;
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -65px;
    background: red;
}
.advantage1:before {
    background: url(../img/sprite.png) no-repeat center top;
}
.advantage2:before {
    background: url(../img/sprite.png) no-repeat center -146px;
}
.advantage3:before {
    background: url(../img/sprite.png) no-repeat center -309px;
}

/* /why section */

/*video_section*/
.video_section_ct {
    width: 90%;
    max-width: 765px;
    text-align: center;
}
.video_mask_ctr {
    position: relative;
    cursor: pointer;
}
.video_ctr {
    margin: 5% 0;        
}
.cover {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../img/cover.jpg) no-repeat center center /cover;
}
.cover.close {
    opacity: 0;
    -webkit-transition: all .25s ease;
       -moz-transition: all .25s ease;
        -ms-transition: all .25s ease;
         -o-transition: all .25s ease;
            transition: all .25s ease;
}
.how_section .cover {
    background: url(../img/how-cover.jpg) no-repeat center center /cover;    
}
.they_did_it_section .cover {
    background: url(../img/they-did-it-cover.jpg) no-repeat center center /cover;    
}

/* prefooter */
.prefooter {
    background: #ecebeb;
    padding: 25px 0;
    text-transform: uppercase;
    color: #125f96;
}
.prefooter a {
    color: #125f96;
    text-decoration: none;   
}
.prefooter a:hover {
    text-decoration: underline;
}
.circle {
    display: inline-block;
    color: #fff;
    text-align: center;
    padding: 10px 0 0 0;
    background: #c94a00;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    font-size: 28px;
}

/* footer */
footer {    
    padding: 0 0 25px 0;
}
.footer_bottom {
    background: #fff;    
    padding: 0.78125rem 0 2rem 0;
}
footer img {
    display: inline-block;
}
.footer_header {
    padding: 10px 0;
    background: #125f96;
    color: #fff;
}
.footer_header a {
    color: #fff;
    font-size: 18px;
    text-decoration: none;
}
.footer_header a:hover {
    text-decoration: underline;
}
.partners{
    -webkit-box-align:start;align-items:flex-start;
    display:-webkit-box;display:flex;
    flex-wrap:wrap;
    justify-content:space-around;
    padding:0;
    margin: 1.5rem 0;
}
.partners__item{
    box-sizing:content-box;
    list-style-type:none;
    padding:0 .25rem 1rem;
}
.partners__item--fse,
.partners__item--ministere-travail,
.partners__item--ministere-eco-ess,
.partners__item--union-europeenne{
    width:2.96875rem;
}
.partners__item--diess,
.partners__item--cdd{
    width:2.65625rem;
}
.partners__item--cget{
    width:6.09375rem;
}
.partners__item--dae{
    width:2.8125rem;
}
.partners__item--union-europeenne,.partners__item--fse-speech{
    line-height:1.5;
    padding-bottom:0;
    text-align:center;
    width:100%;
}
.partners__item--union-europeenne img{
    width:2.96875rem;
}
.partners img {
    max-width: 100%;
    height: auto;
    image-rendering: auto;    
}
.partners__item--fse-speech{
    font-size:0.625rem;
    line-height:0.75rem;
}

@media only screen and (min-width:1155px){
    .partners{
        flex-wrap:nowrap;
    }
    .partners__item--fse,.partners__item--union-europeenne{
        width:5.9375rem;
    }
    .partners__item--ministere-travail,.partners__item--ministere-eco-ess{
        width:8.125rem;
    }
    .partners__item--union-europeenne img{
        width:auto;
    }
    .partners__item--diess,.partners__item--cdd{
        width:5.3125rem;
    }
    .partners__item--cget{
        width:12.1875rem;
    }
    .partners__item--dae{
        width:5.625rem;
    }
    .partners__item--fse-speech{
        /*font-size:0.625rem;
        line-height:0.75rem;*/
        text-align:left;
        width:6.875rem;
    }
}
/* /footer */




/* media queries *********************************************************************************/
@media screen and (min-width: 1200px) {
    /*footer ul {
        display: table;
    }
    footer li {
        display: table-cell;
        vertical-align: top;
    }*/
}
@media screen and (max-width: 1199px) {
    /*footer li {
        display: inline-block;
        width: auto;
    }
    footer li:last-child {
        display: block;
        width: 100%;
        text-align: center;
    }*/
}

@media screen and (min-width: 1024px) {

    /* header */
    .header_menu_btn {
        display: none;
    }
    .fixed .header_logo {
        padding: 20px 0;
    }
    .fixed .header_nav {
        padding: 30px 0 0 0;
    }
    .fixed .header_nav li {
        margin: 0 0 0 25px;
    }
    .fixed .header_nav a {
        font-size: 12px;
    }

    .header_ct {
        display: table;        
    }
    .header_logo {
        display: table-cell;
        vertical-align: top;
        max-width: 250px;
    }
    .header_nav {
        display: table-cell;
        vertical-align: top;
        text-align: right;
    }
    .header_nav li {
        display: inline-block;
    }
    /* /header */
    
    h1 {
        font-size: 28px;
    }
    h2 {
        font-size: 18px;
    }
    h3 {
        font-size: 30px;
    }

    /* body */
    

}

@media screen and (max-width: 1023px) {

    /* header */
    .header_menu_btn {
        position: absolute;
        right: 4%;
        top: 23px;
    }
    .header_menu_btn:before {
        content: "";
        display: block;
        width: 36px;
        height: 36px;
        background: url(../img/sprite.png) no-repeat 0 -424px;
    }
    .header_menu_btn span {
        position: fixed;
        right: -9000px;
        top: -9000px;
    }
    .header_nav {
        background: #ecebeb;
        display: block;
        height: 100%;
        position: fixed;
        right: 0;
        transform: translateX(100%);
        top: 0;
        width: 66%;
        z-index: 999;
        -webkit-transition: all .25s ease-out;
           -moz-transition: all .25s ease-out;
            -ms-transition: all .25s ease-out;
             -o-transition: all .25s ease-out;
                transition: all .25s ease-out;
        text-align: left;
    }
    header,
    section {
        -webkit-transition: all .25s ease-out;
           -moz-transition: all .25s ease-out;
            -ms-transition: all .25s ease-out;
             -o-transition: all .25s ease-out;
                transition: all .25s ease-out;
    }
    .header_nav li {
        display: block;
    }
    .header_nav a {
        padding: 5px 0;
        margin: 0 0 10px 0;
    }
    /* /header */

    /* footer */
    

}

@media screen and (min-width: 768px) {
    
    /* header */
    .fixed .header_logo {
        width: 12%;
    }
    .header_logo {        
        width: 19%;
    }
    /* /header */

    /* purpose */
    .btn_ctr li {
        display: inline-block;
    }
    /* /purpose */

    /* why */
    .advantages {
        display: table;
        width: 100%;
    }
    .advantage_elmt {
        display: table-cell;
        width: 33.3333%;
    }
    /* /why */  

}/*/mediaquery*/

@media screen and (min-width: 768px) and (max-width: 1023px) {

    /* header */
    .open_nav header,
    .open_nav section {
        transform: translateX(-33%);
    }
    /* /header */

    .header_logo {
        display: block;
        width: 22%;
    } 

    h1 {
        font-size: 28px;
    }
    h2 {
        font-size: 18px;
    }
    h3 {
        font-size: 30px;
    }  

}

@media screen and (max-width: 767px) {
    /* general */
    .page_ct {
        text-align: center;
    }
    .m_hide {
        display: none;
    }

    /* header */
    .header_logo {
        display: block;
        width: 39%;
        max-width: 140px;
    }
    .open_nav header,
    .open_nav section,
    .open_nav footer {
        transform: translateX(-66%);
    }
    .header_nav li {
        display: block;
    }
    .header_nav li a {
        padding: 5px 0;
        margin: 0 0 10px 0;
        display: block;
    }
    /* /header */

    /* video */
    .section p {
        padding-bottom: 15px;
    }
    /* /video */

    /* why */
    .advantages {
        width: 90%;
        margin: 0 auto;
        max-width: 340px
    }
    /* /why */

}/*/mediaquery*/  

@media screen and (max-width: 600px) {
    .footer_ct>a {
        display: block;
        padding: 10px 0;
        float: none !important;
        text-align: center;
    }
    .footer_ct img {
        display: inline-block;
    }
}

@media screen and (min-width: 500px) and (max-width: 767px) { 

    .purpose_ctr {
        /*padding: 29% 0 0 0;*/
    }

    h1 {
        font-size: 24px;
    }
    h2 {
        font-size: 18px;
    }
    h3 {
        font-size: 24px;
    }
    
}/*/mediaquery*/  

@media screen and (max-width: 499px) {
    
    .purpose_ctr {
        /*padding: 45% 0 0 0;*/
    }

    h1 {
        font-size: 22px;
    }
    h2 {
        font-size: 18px;
    }
    h3 {
        font-size: 24px;
    }
    
}/*/mediaquery*/  


/* IE 10+ specific */

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {}

/* end mediaqueries **********************************************************************************/

/**
* Non-semantic helper classes: please define your styles before this section.
*/

/* For image replacement */

.ir {
    display:block;
    text-indent:-999em;
    overflow:hidden;
    background-repeat:no-repeat;
    text-align:left;
    direction:ltr;
}
.ir br {
    display:none;
}
/* Hide for both screenreaders and browsers:
css-discuss.incutio.com/wiki/Screenreader_Visibility */

.hidden {
    display: none;
    visibility: hidden;
}
/* Hide only visually, but have it available for screenreaders: by Jon Neal.
www.webaim.org/techniques/css/invisiblecontent/ & j.mp/visuallyhidden */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
/* Extends the .visuallyhidden class to allow the element to be focus_medable when navigated to via the keyboard: drupal.org/node/897638 */

.visuallyhidden.focus_medable:active, .visuallyhidden.focus_medable:focus_med {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}
/* Hide visually and from screenreaders, but maintain layout */

.invisible {
    visibility: hidden;
}
/* The Magnificent Clearfix: Updated to prevent margin-collapsing on child elements in most situations.
nicolasgallagher.com/micro-clearfix-hack/ */

.clearfix:before, .clearfix:after {
    content: "";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    zoom: 1;
}
/**
* Print styles.
*
* Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
*/

@media print {
    * {
        background: transparent !important;
        color: black !important;
        text-shadow: none !important;
        filter: none !important;
        -ms-filter: none !important;
    }
    /* Black prints faster: sanbeiji.com/archives/953 */
    a, a:visited {
        color: #444 !important;
        text-decoration: underline;
    }
    /*a[href]:after {
        content: " (" attr(href)")";
    }*/
    /*abbr[title]:after {
        content: " (" attr(title)")";
    }*/
    /*.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
        content: "";
    }*/
    /* Don't show links for images, or javascript/internal links */
    pre, blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }
    thead {
        display: table-header-group;
    }
    /* css-discuss.incutio.com/wiki/Printing_Tables */
    tr, img {
        page-break-inside: avoid;
    }
    img {
        max-width: 100% !important;
    }
    @page {
        display: none;
    }
    p, h2, h3 {
        orphans: 3;
        widows: 3;
    }
    h2, h3 {
        page-break-after: avoid;
    }

}
