.mask {
  position: absolute;
  width: 100%;
  height: 100%;
  color: #fff;
  z-index: 2;
  top: 0;
  background-color: #121e2c;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(46, 55, 63, 0.8)), to(rgba(18, 30, 44, 0.8)));
  background-image: linear-gradient(180deg, rgba(46, 55, 63, 0.8) 0%, rgba(18, 30, 44, 0.8) 100%);
  background-image: -o-linear-gradient(180deg, rgba(46, 55, 63, 0.8) 0%, rgba(18, 30, 44, 0.8) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#121e2c',endColorstr='#2E373F',GradientType=1);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  filter: alpha(opacity=70);
  -khtml-opacity: .7;
  -moz-opacity: .7;
  opacity: 0.7; }

.mask-dark {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -khtml-opacity: 1;
  -moz-opacity: 1;
  opacity: 1; }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

html {
  background: #121e2c; }

body {
  color: #fff;
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 400; }

*::-moz-selection {
  background: #121e2c;
  color: #fff; }

*::selection {
  background: #121e2c;
  color: #fff; }

.text-white,
.link-white {
  color: #fff !important; }
  .text-white:hover,
  .link-white:hover {
    color: #fff !important; }

.container {
  position: relative;
  z-index: 3; }

h1 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 2rem;
  font-weight: 300; }
  @media (min-width: 768px) {
    h1 {
      font-size: 2.5rem; } }
  @media (min-width: 992px) {
    h1 {
      font-size: 3rem; } }
  @media (min-width: 1200px) {
    h1 {
      font-size: 3.5rem; } }

@media (min-width: 768px) {
  p {
    font-size: 1.25rem; } }

@media (min-width: 1200px) {
  p {
    font-size: 1.5rem; } }

.sleep-app footer {
  background: #fff;
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 3; }
  .sleep-app footer img {
    max-height: 100px;
    max-width: 100%; }

.wow {
  visibility: hidden; }

.vh {
  height: calc(100vh - 96px);
  -webkit-transition: height .2s;
  transition: height .2s; }

.btn-primary {
  background-color: #fff;
  border: 1px solid #0079af;
  border-radius: 32px;
  color: #0079af;
  display: inline-block;
  font-weight: bold;
  padding: 16px 64px;
  -webkit-transition: all .2s;
  transition: all .2s; }
  @media (min-width: 768px) {
    .btn-primary {
      font-size: 1.25rem; } }
  @media (min-width: 1200px) {
    .btn-primary {
      font-size: 1.5rem; } }
  .btn-primary:hover, .btn-primary:active {
    background-color: #fff !important;
    color: #0079af !important;
    text-decoration: none; }
  .btn-primary:focus, .btn-primary:hover, .btn-primary:active {
    border-color: rgba(0, 121, 175, 0.8) !important;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(0, 121, 175, 0.6) !important;
            box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(0, 121, 175, 0.6) !important;
    outline: 0 none; }
  .btn-primary:active {
    background-color: #eee; }
  .btn-primary.next {
    margin-left: .5rem;
    padding: 16px 66px; }
    @media (min-width: 576px) {
      .btn-primary.next {
        padding: 16px 96px; } }
  .btn-primary.back {
    margin-right: .5rem;
    padding: 16px 32px; }
  .btn-primary.disabled {
    background-color: #eee !important;
    border-color: #ddd;
    color: #aaaaaa !important; }
    .btn-primary.disabled:focus, .btn-primary.disabled:hover, .btn-primary.disabled:active {
      border-color: #ddd !important;
      -webkit-box-shadow: none !important;
              box-shadow: none !important;
      outline: 0 none; }

.text-yellow {
  color: #ffba00; }

.text-bold {
  font-weight: 700; }

a:not([href]):not([tabindex]) {
  color: #0079af; }

footer .back:hover,
footer .next:hover {
  cursor: pointer; }

.overflow-scroll {
  overflow: scroll; }

::-webkit-input-placeholder {
  color: #2d3741;
  opacity: 1; }

:-ms-input-placeholder {
  color: #2d3741;
  opacity: 1; }

::placeholder {
  color: #2d3741;
  opacity: 1; }

:-ms-input-placeholder {
  color: #2d3741; }

::-ms-input-placeholder {
  color: #2d3741; }

.intro .content-area {
  background: #121e2c; }
  .intro .content-area .container h1 {
    max-width: 80%; }
  .intro .content-area .container p {
    max-width: 83%; }
    @media (min-width: 768px) {
      .intro .content-area .container p {
        max-width: 88%; } }

.intro .cloud-and-moon {
  background-color: #121e2c;
  background-image: url("../images/cloud-and-moon.png");
  background-position: bottom 10px right -30px;
  background-repeat: no-repeat;
  background-size: 100%;
  bottom: 0;
  height: 100%;
  position: absolute;
  right: 0;
  width: 100%;
  z-index: 1; }
  @media (min-width: 768px) {
    .intro .cloud-and-moon {
      background-position: bottom 0 right -50px;
      background-size: auto; } }

.age input {
  background-color: transparent;
  border: 1px solid #eee;
  border-radius: 5px;
  color: #fff;
  font-size: 4rem;
  max-width: 140px;
  padding: .25rem 1rem;
  text-align: center;
  -webkit-transition: all .2s;
  transition: all .2s;
  width: 100%; }
  @media (min-width: 576px) {
    .age input {
      font-size: 5rem;
      max-width: 170px; } }
  .age input:focus {
    border-color: #fff !important;
    -webkit-box-shadow: 0 1px 1px #fff inset, 0 0 4px #fff !important;
            box-shadow: 0 1px 1px #fff inset, 0 0 4px #fff !important;
    outline: 0 none; }

.hours h1 {
  max-width: 768px; }

.hours .owl-item h4 {
  color: #a88418;
  font-size: 2.25rem;
  padding-top: 29px;
  -webkit-transition: all .2s;
  transition: all .2s; }

.hours .owl-item .less-than-4 h4 {
  padding-top: 19px; }
  @media only screen and (min-width: 380px) {
    .hours .owl-item .less-than-4 h4 {
      padding-top: 29px; } }

.hours .owl-item.center h4 {
  color: #fff;
  font-size: 5rem;
  padding-top: 0; }

.hours .owl-item.center .less-than-4 h4 {
  font-size: 2.25rem;
  padding-top: 19px; }
  @media only screen and (min-width: 380px) {
    .hours .owl-item.center .less-than-4 h4 {
      padding-top: 29px; } }

.hours .owl-carousel {
  min-height: 180px; }
  .hours .owl-carousel .owl-stage {
    min-height: 110px; }
  @media (min-width: 992px) {
    .hours .owl-carousel .owl-nav {
      margin-top: 2rem; } }
  .hours .owl-carousel .owl-nav .owl-prev::before {
    content: '\2190';
    font-size: 2rem;
    margin: 0 10px; }
  .hours .owl-carousel .owl-nav .owl-next::after {
    content: '\2192';
    font-size: 2rem;
    margin: 0 10px; }
  .hours .owl-carousel .owl-nav [class*=owl-] {
    outline: none; }
    .hours .owl-carousel .owl-nav [class*=owl-]:hover {
      background: none; }

.results-chart .chart-container {
  margin: auto;
  width: 290px; }
  @media (min-width: 992px) {
    .results-chart .chart-container {
      width: 370px; } }

.results-chart .chart-area {
  background-image: url("../images/graph/outer-graph.png");
  background-repeat: no-repeat;
  background-size: contain;
  height: 220px;
  padding-left: 34px; }
  @media (min-width: 992px) {
    .results-chart .chart-area {
      height: 280px;
      padding-left: 41px; } }
  .results-chart .chart-area .bar-container {
    display: inline-block;
    height: 100%;
    position: relative;
    width: 19%; }
    .results-chart .chart-area .bar-container.bats .bar-fill {
      background-color: #e65245;
      height: 102%; }
    .results-chart .chart-area .bar-container.girrafes .bar-fill {
      background-color: #dd6ee2;
      height: 30%; }
    .results-chart .chart-area .bar-container.girrafes .shadow {
      height: 30%; }
    .results-chart .chart-area .bar-container.you .bar-fill {
      background-color: #ffba00; }
    .results-chart .chart-area .bar-container.your-age-group .bar-fill {
      background-color: #60cc63; }
    .results-chart .chart-area .bar-container.extra-age-group .bar-fill {
      background-color: #5ca1ff; }
  .results-chart .chart-area .bar-fill {
    bottom: 6px;
    position: absolute;
    width: 80%; }
    .results-chart .chart-area .bar-fill span {
      border-radius: 50%;
      -webkit-box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.3);
              box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.3);
      display: inline-block;
      height: 25px;
      margin-top: 5px;
      width: 25px; }
  .results-chart .chart-area .shadow {
    background-image: url("../images/graph/shadow.svg");
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 6px;
    height: 100%;
    position: absolute;
    right: 0;
    width: 18%; }

.results-chart .chart-legends {
  padding-left: 26px; }
  @media (min-width: 992px) {
    .results-chart .chart-legends {
      padding-left: 30px; } }
  .results-chart .chart-legends > div {
    display: inline-block;
    font-size: .8rem;
    text-align: center;
    vertical-align: top;
    width: 19%; }

.results-chart h3 {
  font-size: 1.25rem; }
  @media (min-width: 992px) {
    .results-chart h3 {
      font-size: 1.75rem; } }

.results-chart p {
  font-size: .875rem; }
  @media (min-width: 768px) {
    .results-chart p {
      font-size: 1rem; } }
  @media (min-width: 992px) {
    .results-chart p {
      font-size: 1.25rem; } }

.maps .see-through {
  background: rgba(0, 0, 0, 0.4);
  border-radius: 20px;
  color: #fff;
  font-size: .875rem; }
  @media (min-width: 576px) {
    .maps .see-through {
      font-size: 1rem;
      font-weight: 700; } }

.maps .map-bg {
  background-color: #121e2c;
  background-image: url("../images/map-bgs/england.png");
  background-position: bottom 70px right 10px;
  background-repeat: no-repeat;
  background-size: 200%;
  bottom: 0;
  height: 100%;
  position: absolute;
  right: 0;
  width: 100%;
  z-index: 1; }
  @media (min-width: 768px) {
    .maps .map-bg {
      background-position: bottom 70px right 10px;
      background-size: 180%; } }
  @media (min-width: 992px) {
    .maps .map-bg {
      background-position: bottom 70px center;
      background-size: auto; } }

.maps.wales .map-bg {
  background-image: url("../images/map-bgs/wales.png");
  background-position: bottom 100px center; }

.maps.scotland .map-bg {
  background-image: url("../images/map-bgs/scotland.png");
  background-position: top 10px center; }

.maps.n-ireland .map-bg {
  background-image: url("../images/map-bgs/n-ireland.png");
  background-position: center left -30px; }
  @media (min-width: 992px) {
    .maps.n-ireland .map-bg {
      background-position: bottom 70px left 70px; } }
  @media (min-width: 1200px) {
    .maps.n-ireland .map-bg {
      background-position: center left 70px; } }

.maps h1 {
  font-size: 3.5rem; }

.maps h4 {
  font-size: 1.25rem; }
  @media (min-width: 768px) {
    .maps h4 {
      font-size: 1.75rem; } }

.maps p {
  opacity: .75; }
  @media (min-width: 1200px) {
    .maps p {
      font-size: 1.25rem; } }

.maps .message,
.maps .second {
  margin-top: 1.5rem; }
  @media (min-width: 768px) {
    .maps .message,
    .maps .second {
      margin-top: 2.5rem; } }

.maps .change-country {
  color: #6ec1db;
  font-size: .875rem;
  text-decoration: underline; }
  @media (min-width: 992px) {
    .maps .change-country {
      font-size: 1rem; } }

.england .ambulance {
  margin-top: 30%;
  max-width: 60px;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg); }
  @media (min-width: 992px) {
    .england .ambulance {
      margin-top: 30px; } }
  @media (min-width: 1366px) {
    .england .ambulance {
      margin-top: 15px; } }

.wales .city {
  margin-top: 5px;
  max-width: 60px; }
  @media (min-width: 768px) {
    .wales .city {
      margin-top: 30px; } }
  @media (min-width: 1366px) {
    .wales .city {
      margin-top: 20px; } }

.scotland .alarm {
  margin-top: 15px;
  max-width: 60px; }
  @media (min-width: 992px) {
    .scotland .alarm {
      margin-top: 30px; } }
  @media (min-width: 1366px) {
    .scotland .alarm {
      margin-top: 15px; } }

.n-ireland .heart {
  margin-top: 30%;
  max-width: 60px; }
  @media (min-width: 992px) {
    .n-ireland .heart {
      margin-top: 30px; } }
  @media (min-width: 1366px) {
    .n-ireland .heart {
      margin-top: 15px; } }

.gender .content-area a {
  color: #fff; }
  .gender .content-area a:hover {
    text-decoration: none; }
  .gender .content-area a:focus {
    outline: 0; }

.gender-results .content-area h2 {
  font-size: 1.25rem;
  margin: 0 auto .5rem;
  max-width: 260px; }
  @media (min-width: 576px) {
    .gender-results .content-area h2 {
      max-width: 550px; } }
  @media (min-width: 992px) {
    .gender-results .content-area h2 {
      font-size: 1.75rem; } }

.gender-results .content-area .small {
  font-size: 1rem; }

.gender-results img {
  height: 135px; }
  @media (min-width: 768px) {
    .gender-results img {
      height: auto; } }

.man,
.woman {
  -webkit-transition: all 1s;
  transition: all 1s; }

.summary .summary-footer {
  background: #fff;
  position: relative;
  z-index: 3; }

.summary .share {
  padding: 16px 66px; }
  @media (min-width: 576px) {
    .summary .share {
      padding: 16px 124px; } }

.summary .mask {
  position: relative; }

.summary .see-through {
  background: rgba(0, 0, 0, 0.4);
  border-radius: 20px;
  color: #fff;
  font-size: .875rem; }
  @media (min-width: 576px) {
    .summary .see-through {
      font-size: 1rem;
      font-weight: 700; } }

.summary h4 {
  font-size: 1.25rem;
  font-weight: 700; }
  @media (min-width: 768px) {
    .summary h4 {
      font-size: 1.5rem; } }

.summary .btn-find-out-more {
  background-color: transparent;
  border: 1px solid #ffba00;
  border-radius: 32px;
  color: #ffba00;
  display: inline-block;
  font-weight: bold;
  padding: 8px 24px;
  -webkit-transition: all .2s;
  transition: all .2s; }
  .summary .btn-find-out-more:hover, .summary .btn-find-out-more:active {
    background-color: transparent !important;
    color: #ffba00 !important;
    text-decoration: none; }
  .summary .btn-find-out-more:focus, .summary .btn-find-out-more:hover, .summary .btn-find-out-more:active {
    border-color: rgba(255, 186, 0, 0.8) !important;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(255, 186, 0, 0.6) !important;
            box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(255, 186, 0, 0.6) !important;
    outline: 0 none; }
  .summary .btn-find-out-more:active {
    background-color: transparent; }

.summary .further-reading {
  color: #6ec1db;
  text-decoration: underline; }

.summary .hr-footer {
  border-top: 1px solid #ffba00;
  margin-bottom: 1.75rem;
  margin-top: 1.75rem; }

.summary .alarm-blue {
  margin-left: -50px;
  max-width: 130px;
  opacity: .9; }
  @media (min-width: 768px) {
    .summary .alarm-blue {
      margin-left: -20px; } }
  @media (min-width: 992px) {
    .summary .alarm-blue {
      margin-left: 20px; } }
  @media (min-width: 1200px) {
    .summary .alarm-blue {
      margin-left: 50px; } }

.summary .sheep {
  margin-left: -30px;
  margin-top: 20px;
  max-width: 80px;
  opacity: .6; }
  @media (min-width: 768px) {
    .summary .sheep {
      margin-left: -20px;
      max-width: 100px; } }
  @media (min-width: 992px) {
    .summary .sheep {
      margin-left: 20px;
      max-width: 120px; } }

.location .img-map {
  max-height: 425px; }
