@import url("https://fast.fonts.net/lt/1.css?apiType=css&c=e11f5528-9a58-4656-873b-1c45012daaf6&fontids=1448933,1448937,1448941");
@font-face {
    /*font-family: "DIN Next LT W04 Regular";*/
    font-family: "DIN Next";
    src: url("/Site/Dst/Fonts/1448933/bbb280b3-b74d-49f2-908d-0395516a3dc8.eot?#iefix");
    src: url("/Site/Dst/Fonts/1448933/bbb280b3-b74d-49f2-908d-0395516a3dc8.eot?#iefix") format("eot"), url("/Site/Dst/Fonts/1448933/95d17c42-537a-4cbf-a8c1-60fcc6edf28f.woff2") format("woff2"), url("/Site/Dst/Fonts/1448933/3097f8f0-50b7-4d8d-8745-6281850a1b05.woff") format("woff"), url("/Site/Dst/Fonts/1448933/ac4b95cb-49c4-493a-a895-471d763cea38.ttf") format("truetype");
    font-weight: 400;
}

@font-face {
    /*font-family: "DIN Next LT W04 Medium";*/
    font-family: "DIN Next";
    src: url("/Site/Dst/Fonts/1448937/fd94b7ac-c184-4f5c-a847-0a4785f3e98f.eot?#iefix");
    src: url("/Site/Dst/Fonts/1448937/fd94b7ac-c184-4f5c-a847-0a4785f3e98f.eot?#iefix") format("eot"), url("/Site/Dst/Fonts/1448937/cf1948b4-c50b-418b-a059-e8ed8bf0f9f1.woff2") format("woff2"), url("/Site/Dst/Fonts/1448937/bd983b7f-76bb-4f54-83bb-889fd36d60e6.woff") format("woff"), url("/Site/Dst/Fonts/1448937/63fb1f94-0e8f-4c85-b559-b0dd27ecbf5a.ttf") format("truetype");
    font-weight: 600;
}

@font-face {
    /*font-family: "DIN Next LT W04 Bold";*/
    font-family: "DIN Next";
    src: url("/Site/Dst/Fonts/1448941/435ec954-73b2-4a0c-89ed-0c36d79ee595.eot?#iefix");
    src: url("/Site/Dst/Fonts/1448941/435ec954-73b2-4a0c-89ed-0c36d79ee595.eot?#iefix") format("eot"), url("/Site/Dst/Fonts/1448941/7e3bc38e-72f2-4d0b-8e96-4c466b57b052.woff2") format("woff2"), url("/Site/Dst/Fonts/1448941/8283248b-29aa-4d91-8920-841505269e68.woff") format("woff"), url("/Site/Dst/Fonts/1448941/929bfe48-8086-4796-820d-ff0222f68dd0.ttf") format("truetype");
    font-weight: bold;
}

body {
    font-family: "Open Sans", "Open Sans", Helvetica, Arial, sans-serif;
    color: #1D3234;
    margin: 0;
    padding: 0;
}

main {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.overthetop {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: #FFFFFF;
    border-bottom: 1px solid #ffffff;
    padding-top: 1px;
}

.topmenulink {
    color: #0F417A;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
}

.topmenulink:hover {
    color: #0F417A;
    text-decoration: none;
}

#langlink {
    float: right;
    padding-right: 30px;
    padding-top: 4px;
}

#headline {
    padding-left: 30px;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 22px;
}

.topmenutext {
    text-transform: uppercase;
    color: #0F417A;
    font-size: 25px;
}

.hcbton {
    height: 50px;
    border: 1px solid #ffffff;
    padding: 2px;
    margin-left: 7px;
}

.hcbton:hover {
    border: 1px solid #0079cb;
}

#datasets {
    margin-top: 2em;
    z-index: 1;
}

.tabs:hover {
    color: #0F417A;
}

.tabs {
    color: #0F417A;
    padding-top: 7px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 2px;
    cursor: pointer;
    border-bottom: none;
    white-space: pre-wrap;
    display:inline-block;
    text-align: center;
   /* max-width: 108px;*/
}

.tabon:hover {
    color: #00863b;
}

.tabon {
    color: #0079db;
    border: 1px solid #e4e4e4;
    border-bottom: none;
    background-color: #f9fbfd;
}

#themecontent {
    border: 1px solid #e4e4e4;
    background-color: #f9fbfd;
}

.themecont {
    padding: 10px;
}

.themecontoff {
    display: none;
}

.themecont>select {
    padding: 4px;
    width: 250px;
}

button:not(.noButton) {
    text-transform: uppercase;
    color: #ffffff;
    background-color: #0F417A;
    border: 1px solid #0F417A;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-left: 10px;
    cursor: pointer;
}

button:hover:not(.noButton) {
    background-color: #00863b;
}

button:focus:not(.noButton) {
    border: 2px solid #e21616;
}

#wrapper {
    margin-right: 4em;
}

#pageHeader {
    top: 20px;
    width: 1170px;
    padding-left: 40px;
    height: 50px;
    /*position: absolute;*/
    /* help for touch devices and slider usability */
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

#pageHeader h1 {
    padding-top: 5px;
    margin: 0;
    font-size: 18px;
    letter-spacing: -0.03em;
    float: left;
    color: #444;
}

#pageHeader img {
    right: 10px;
    /*position: absolute;*/
    border: 0;
}

h4 {
    font-size: 12px;
    font-weight: bold;
    margin-top: 12px;
    margin-bottom: 8px;
}

#themecontent p {
    font-size: 12px;
    font-weight: bold;
    margin-top: 12px;
    margin-bottom: 8px;
}
#themecontent label {
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin-top: 12px;
    margin-bottom: 8px;
}

#easel {
    /* help for touch devices and slider usability */
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

#easel p {
    padding-top: 200px;
    padding-left: 100px;
}

#easel .spinner {
    font-size: 24px;
}

#easel .fineprint {
    font-size: 14px;
}

#play,
#pause {
    fill: #0F417A;
}

#pause:hover,
#play:hover {
    fill: #0F417A;
}

#dashBoard {
    display: flex;
    flex-direction: column;
    max-width: 450px;
    align-items: center;
    justify-content: space-between;
    /* help for touch devices and slider usability */
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

#variantBox {
    font-size: 13px;
}

#variantBox .radioButton {
    font-size: 12px;
    margin-top: 4px;
    margin-bottom: 2px;
    margin-left: 2px;
}

#variantBox input {
    margin-right: 7px;
}

#assumptions {
    font-size: 12px;
}

#assumptions p {
    margin-top: 6px;
    margin-bottom: 0;
    padding-left: 24px;
}

#assumptions li {
    line-height: 140%;
    padding-bottom: 6px;
}

#currAssumptions {
    font-size: 12px;
}

#currAssumptions p {
    margin-top: 6px;
    margin-bottom: 0;
    padding-left: 24px;
}

#currAssumptions li {
    line-height: 140%;
    padding-bottom: 6px;
}

#missingdata {
    font-size: 12px;
}

#missingdata p {
    margin-top: 6px;
    margin-bottom: 0;
    padding-left: 24px;
}

#missingdata li {
    line-height: 140%;
    padding-bottom: 6px;
}

#copyright {
    float: right;
    margin-right: 4em;
}

#copyright p {
    font-size: 11px;
    text-align: right;
    margin: 0px;
}

#data {
    font-size: 14px;
}

caption {
    font-size: small;
}

table {
    text-align: right;
    border-collapse: collapse;
}

#tAge {
    width: 78px;
    text-align: left;
    font-weight: bold;
}

#tMill {
    width: 96px;
    font-weight: bold;
}

#tRatio {
    width: 120px;
    font-weight: bold;
}

td {
    padding-top: 7px;
    padding-bottom: 5px;
}

.above {
    border-top: 3px solid #e4e4e4;
}

.middle {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
}

.ageLimitTxt {
    border-right: 8px solid white;
}

.ageLimitTxt {
    padding-right: 16px;
}

#footer {
    align-self: end;
}

#footer p {
    margin: 0;
    font-size: 11px;
}

#footer ul {
    list-style-type: none;
}

#footer li {
    float: left;
}

.hcbtn {
    height: 20px;
    border: 1px solid #ffffff;
    padding: 2px;
    margin-left: 7px;
}

.hcbtn:hover {
    border: 1px solid #0079cb;
}

a, .noButton {
    text-decoration: none;
    color: #0079cb;
    background: none;
    border: none;
}

a:hover, .noButton:hover {
    cursor: pointer;
    text-decoration: none;
}

#ageLimitControl {
    float: right;
}

#ageLimitControl p {
    font-size: 12px;
    margin-top: 6px;
    margin-bottom: 6px;
}

#legend {
    top: 4em;
    left: 5em;
    position: relative;
    width: 1em;
    z-index: 1;
}

#legend button {
    pointer-events: none;
    position: absolute;
    top: 0px;
    padding-left: 3px;
    padding-right: 3px;
    font-size: 9px;
    margin-left: 0;
}

.mini {
    fill: #444;
    pointer-events: none;
}

.Year {
    font-weight: bold;
    font-size: 11px;
}

.Variant {
    font-size: 10px;
}

.mini.Variant {
    display: none;
}

svg {
    overflow: hidden;
    font: 10px Arial, sans-serif;
    text-anchor: middle;
}

.x.axis path {
    display: none;
}

.x.axis line {
    stroke: #fff;
    /*   stroke-opacity: .2; */
    stroke-opacity: 0.3;
    shape-rendering: crispEdges;
}

.xAxisLabel {
    font-size: 11px;
    fill: #000;
}

.title {
    font-size: 36px;
    letter-spacing: -2px;
    font-weight: bold;
    fill: #999;
}

.subtitle {
    font-size: 13px;
    font-weight: normal;
    fill: #333;
}

.birthyear {
    font-size: 8px;
    fill: #fff;
    /*   fill: none; */
}

.hoverBirthYear {
    pointer-events: none;
    font-size: 14px;
    font-weight: bold;
    fill: #fff;
    z-index: 5;
    /*stroke: black;*/
    text-shadow: 1px 1px 2px #333;
}

.age {
    fill: #444;
    font-weight: bold;
    font-size: 12px;
}

.ageLimit {
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: bold;
    position: absolute;
    left: -7px;
    /* 	padding-top: 2px; */
    z-index: 10;
    pointer-events: none;
}

.symmetry {
    pointer-events: none;
    fill-opacity: 0.25;
    fill: white;
}

.envelopeCurve {
    fill: none;
    stroke: #e21616;
    stroke-width: 1.5px;
    stroke-linejoin: bevel;
    pointer-events: none;
}

.miniCurve {
    stroke-width: 20px;
    pointer-events: none;
}

.swoosh {
    stroke: #e21616;
    stroke-width: 5;
    fill: none;
}

.xl {
    /* 	these elements will only be used in the XL size */
}

.nick {
    font-weight: normal;
    padding-left: 6px;
}


/* 
	slider styles from external D3 slider file merged here
*/

#sliderHolder {
    /* help for touch devices and slider usability */
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    height: 480px;
    /*left: 722px;
    top: 150px;
    position: absolute;*/
    float: right;
}

.tick text {
    -moz-user-select: none;
}

.d3-slider {
    position: relative;
    font-family: Arial, sans-serif;
    font-size: 1.1em;
    border: 1px solid #a6c9e2;
    z-index: 2;
}

.d3-slider-range-vertical {
    background: none;
    left: 0px;
    right: 0px;
    position: absolute;
    top: 0;
}

.d3-slider-vertical {
    width: 0.8em;
    height: 100px;
}

.d3-slider-handle {
    position: absolute;
    width: 1.2em;
    height: 1.2em;
    border: 1px solid #0F417A;
    background: #0F417A;
    z-index: 3;
}

.d3-slider-handle:hover {
    border: 1px solid #00863b;
    background: #00863b;
}

#ageSliderHolder {
    display: none;
    border: 0;
}

#ageSliderHolder .d3-slider-range-vertical {
    background: none;
}

#ageSliderHolder .d3-slider-handle {
    width: 130px;
    margin-bottom: -0.35em;
    height: 9px;
    left: -65px;
    cursor: row-resize;
}

.d3-slider-axis {
    position: relative;
    z-index: 1;
}

.d3-slider-axis-right {
    left: 0.8em;
    pointer-events: none;
}

.d3-slider-axis path {
    stroke-width: 0;
    fill: none;
}

.d3-slider-axis line {
    fill: none;
    stroke: #aaa;
    shape-rendering: crispEdges;
}

.d3-slider-axis text {
    font-size: 11px;
}

.d3-slider-vertical .d3-slider-handle {
    left: -0.25em;
    margin-left: 0;
    margin-bottom: -0.6em;
}


/* end slider styles */


/* Social media and download stuff */

#sharecont1 {
    display: none;
    align-self: end;
}

.social-share ul {
    list-style: none;
    margin: 0;
}

.social-share ul li.social-share__item {
    padding: 0;
    display: inline-block;
    margin-right: 20px;
}

.social-share ul svg.icon {
    width: 25px;
    height: 25px;
    margin-bottom: -6px;
    margin-right: 5px;
}

svg.icon-fill {
    fill: #0079ca;
}

svg.icon-fill:hover {
    fill: #00863b;
}

svg:not(:root) {
    overflow: hidden;
}

#downloadmenu {
    display: none;
    border: 1px solid #0079cb;
    bottom: 0px;
    right: 0px;
    padding-top: 1%;
    padding-bottom: 1%;
    padding-left: 0;
    width: 250px;
    background-color: #ffffff;
    list-style: none;
    list-style-position: outside;
    align-self: end;
    margin: 0;
}

#downloadmenu a {
    width: 95%;
    padding-top: 0px;
    padding-left: 5%;
    padding-bottom: 2%;
    padding-top: 2%;
    color: #0079cb;
    display: inline-block;
}

#downloadmenu a:hover {
    background-color: #0079cb;
    color: #ffffff;
}

@media print {
    .noPrint,
    .symmetry,
    #ageSliderHolder,
    .d3-slider-handle {
        display: none;
    }
    .x.axis line,
    .males,
    .females {
        stroke: #fff;
        stroke-opacity: 1;
        stroke-width: 0.2pt;
        shape-rendering: crispEdges;
    }
    a {
        color: #000;
    }
}


/* loading spinner */

.spinner {
    position: relative;
    left: 250px;
}
/*
@media screen and (max-width: 700px) {
    #wrapper {
        width: 512px;
        height: 740px;
    }
    .themecont>select {
        width: 200px;
    }
    .spinner {
        position: relative;
        left: 160px;
    }
}*/

a.evitement {
    border: 4px solid rgba(92, 88, 88, 0.459);
    border-radius: 2px;
    color: #965bca;
    background-color: white;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    line-height: 20px;
    margin: 6px 11px;
    min-height: 32px;
    text-decoration: underline;
    text-align: center;
    width: 106px;
    margin-top: 80px;
    position: absolute;
}

a.evitement:not(:focus) {
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    padding: 0;
}

/* Pour la fenetre modale */

.c-dialog {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  padding: 2.4rem;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  background-color: rgba(black, .75);
  transition: .2s;
  background-color: rgba(124, 124, 124, 0.5);
}

.c-dialog__box {
  flex: 1;
  max-width: 48rem;
  margin: auto;
  padding: 2.4rem;
  background-color: white;
}

.c-dialog[aria-hidden="true"] {
  visibility: hidden;
  opacity: 0;
}