html, body {
  height: 100%;
  padding: 0;
  margin: 0;
}

body {
  font-family: 'Open Sans', sans-serif;
  font-size: 100%;
  line-height: 1.5;
}

a[disabled] {
  cursor: default;
  text-decoration: none;
}

strong {
  font-weight: 600;
}

/********/
/* LOGO */
/********/
.navmenu .logo {
  float: left;
}
.navmenu .logo a {
  display: block;
  background-image: url(../../images/taxcalc-logo.png);
  /* Fallback */
  background-image: url(../../images/taxcalc-logo.svg), linear-gradient(transparent, transparent);
  /* Modern browsers and screens */
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 237px 59px;
  width: 237px;
  height: 59px;
}

/******************************/
/* OFF CANVAS TOGGLING STYLES */
/******************************/
.navbar-toggle {
  float: left;
  margin-left: 15px;
}

.navmenu,
.navbar-offcanvas {
  width: 250px;
  /* Resized the off canvas menu to fit minimum iphone 5 */
}

.navmenu {
  border: 0;
  background: #333;
  z-index: 0;
}

.canvas {
  position: relative;
  left: 0;
  z-index: 2;
  min-height: 100%;
  padding: 50px 0 0 0;
}

.new-events-list .canvas {
  background: #333;
}

/**************/
/* NAVIGATION */
/**************/
.nav a {
  color: #fff;
  cursor: pointer;
  font-weight: 400;
}

.nav li {
  text-transform: uppercase;
  font-size: 24px;
  font-size: 1.5rem;
}

.navmenu-nav {
  margin: 0;
  padding: 39px 0 0 0;
}
.navmenu-nav.navbar-right {
  margin: 0;
  padding: 39px 0 0 0;
}

.navmenu-default .navmenu-nav > li > a,
.navmenu-default .navmenu-nav > li > a:hover,
.navmenu-default .navmenu-nav > li > a:focus,
.navbar-default .navbar-offcanvas .navmenu-nav > li > a,
.navbar-default .navbar-offcanvas .navmenu-nav > li > a:hover,
.navbar-default .navbar-offcanvas .navmenu-nav > li > a:focus {
  color: #fff;
	background: transparent;
}

.navmenu-default .navmenu-nav > .dropdown > a .caret,
.navmenu-default .navmenu-nav > .dropdown > a:hover .caret,
.navmenu-default .navmenu-nav > .dropdown > a:focus .caret,
.navbar-default .navbar-offcanvas .navmenu-nav > .dropdown > a .caret,
.navbar-default .navbar-offcanvas .navmenu-nav > .dropdown > a:hover .caret,
.navbar-default .navbar-offcanvas .navmenu-nav > .dropdown > a:focus .caret {
  border-top-color: #fff;
  border-bottom-color: #fff;
}

/* Full width dropdown menu styles */
.navmenu-default .navmenu-nav > .open > a,
.navmenu-default .navmenu-nav > .open > a:hover,
.navmenu-default .navmenu-nav > .open > a:focus,
.navbar-default .navbar-offcanvas .navmenu-nav > .open > a,
.navbar-default .navbar-offcanvas .navmenu-nav > .open > a:hover,
.navbar-default .navbar-offcanvas .navmenu-nav > .open > a:focus {
  background: #ff0066;
  color: #fff;
  border-radius: 2px 2px 0 0;
	border:0;
}

.navmenu-default .navmenu-nav.dropdown-menu,
.navbar-default .navbar-offcanvas .navmenu-nav.dropdown-menu {
  background: #ff0066;
	border: 0;
	box-shadow: none;
}

.nav li li {
  text-transform: none;
  list-style: none;
  margin: 3px 0;
}
.nav li li li li a {
  color: #fff;
}

.navmenu-nav.dropdown-menu {
  z-index: 5;
  top: 80px;
  left: 0;
  width: 100%;
  padding: 30px 0;
}
.navmenu-nav.dropdown-menu.dropdown-menu .col-nav {
  float: left;
  width: 22%;
  margin: 0 0 0 30px;
  padding: 0;
}
.navmenu-nav.dropdown-menu.dropdown-menu .col-nav .col-nav:first-child {
  margin-left: 0;
}
.navmenu-nav.dropdown-menu.dropdown-menu ul {
  margin: 0 0 30px 0;
  padding: 0;
}

.nav li .dropdown-header-main {
  text-transform: none;
  font-size: 28px;
  font-size: 1.75rem;
  color: #fff;
  padding: 0;
  min-height: 50px;
}
.nav li .dropdown-header-main a {
  color: #fff;
  font-weight: 700;
}

.nav li .dropdown-header {
  text-transform: uppercase;
  color: #ffaccd;
  padding: 0;
  padding-top: 20px;
  font-weight: 600;
}

.navmenu-nav.navbar-right > li.basket a {
  position: relative;
  display: block;
  background-image: url(../../images/basket-icon.png);
  /* Fallback */
  background-image: url(../../images/basket-icon.svg), linear-gradient(transparent, transparent);
  /* Modern browsers and screens */
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 25px 25px;
  background-color: transparent;
  text-indent: -5000px;
  overflow: hidden;
}
.navmenu-nav.navbar-right > li.basket a:hover, .navmenu-nav.navbar-right > li.basket a:focus {
  background-color: transparent;
}

/*********/
/* LISTS */
/*********/
.clean-list {
  margin: 0;
  padding: 0;
}

/**********/
/* FOOTER */
/**********/
footer {
  border-top: 1px solid #434343;
  background: #333;
  color: #fff;
  padding: 30px 0 60px;
}
footer h4 {
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  color: white;
  font-size: 26px;
  font-size: 1.625rem;
}
footer li {
  font-size: 22px;
  font-size: 1.375rem;
}
footer a,
footer a:hover,
footer a:visited,
footer a:focus {
  color: #fff;
}
footer .small {
	font-size: 22px;
  font-size: 1.375rem;
}
.terms,
.works {
  margin-top: 50px;
}

.social-list {
  list-style-type: none;
  margin: 10px 0 0 0;
  padding: 0;
}
.social-list li {
  margin: 3px 0 10px;
}
.social-list a {
  display: inline-block;
  width: 20px;
  height: 20px;
  padding-left: 28px;
  white-space: nowrap;
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: 0 0;
}

.facebook {
  background: url(../../images/facebook.png);
  /* Fallback */
  background: url(../../images/facebook.svg), linear-gradient(transparent, transparent);
  /* Modern browsers and screens */
}

.twitter {
  background: url(../../images/twitter.png);
  /* Fallback */
  background: url(../../images/twitter.svg), linear-gradient(transparent, transparent);
  /* Modern browsers and screens */
}

.linkedin {
  background: url(../../images/linkedin.png);
  /* Fallback */
  background: url(../../images/linkedin.svg), linear-gradient(transparent, transparent);
  /* Modern browsers and screens */
}

.googleplus {
  background: url(../../images/google.png);
  /* Fallback */
  background: url(../../images/google.svg), linear-gradient(transparent, transparent);
  /* Modern browsers and screens */
}

/****************************/
/* Responsive media queries */
/****************************/
/* These media queries are taken from the MTD microsite responsive template (header and footer).
	 Ideally these need to be spat out and nested inline. */
@media (max-width: 767px) {
  .navbar-default .navbar-toggle,
  .navbar-default .navbar-toggle a,
  .navbar-default .navbar-toggle a:hover,
  .navbar-default .navbar-toggle a:focus {
    display: block;
    /* force showing the toggle menu button */
    border: 0;
    border-radius: 2px;
    background: #525252 !important;
    margin: 12px 10px 0;
    padding: 8px;
  }
  .navbar-default .navbar-toggle .icon-bar,
  .navbar-default .navbar-toggle a .icon-bar,
  .navbar-default .navbar-toggle a:hover .icon-bar,
  .navbar-default .navbar-toggle a:focus .icon-bar {
    background-color: #fff;
    width: 16px;
  }
  .navbar-default .navbar-toggle .icon-bar + .icon-bar,
  .navbar-default .navbar-toggle a .icon-bar + .icon-bar,
  .navbar-default .navbar-toggle a:hover .icon-bar + .icon-bar,
  .navbar-default .navbar-toggle a:focus .icon-bar + .icon-bar {
    margin-top: 3px;
  }
  .navbar-default .navbar-toggle .icon-bar-wrap,
  .navbar-default .navbar-toggle a .icon-bar-wrap,
  .navbar-default .navbar-toggle a:hover .icon-bar-wrap,
  .navbar-default .navbar-toggle a:focus .icon-bar-wrap {
    float: left;
    margin-top: 0px;
    margin-right: 5px;
    background-image: url(../../images/menu.png);
    /* Fallback */
    background-image: url(../../images/menu.svg), linear-gradient(transparent, transparent);
    /* Modern browsers and screens */
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 16px 14px;
    background-color: transparent;
  }
  .navbar-default .navbar-toggle .icon-text,
  .navbar-default .navbar-toggle a .icon-text,
  .navbar-default .navbar-toggle a:hover .icon-text,
  .navbar-default .navbar-toggle a:focus .icon-text {
    float: left;
    font-size: 14px;
    line-height: 14px;
    margin: 1px 0 0 0;
    color: #fff;
  }

  .canvas-slid .navbar-default .navbar-toggle .icon-bar-wrap {
    background-image: url(../../images/close.png);
    /* Fallback */
    background-image: url(../../images/close.svg), linear-gradient(transparent, transparent);
    /* Modern browsers and screens */
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 14px 14px;
    background-color: transparent;
    margin-right: 7px;
  }

  .navmenu .logo a {
    display: none;
  }

  .mobile-logo {
    display: inline-block;
    margin-left: -32px;
  }
  .mobile-logo a {
    display: block;
    background-image: url(../../images/taxcalc-logo.png);
    /* Fallback */
    background-image: url(../../images/taxcalc-logo.svg), linear-gradient(transparent, transparent);
    /* Modern browsers and screens */
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 125px 35px;
    background-color: transparent;
    margin: 8px auto 0;
  }

  .mobile-basket {
    display: inline-block;
    float: right;
    margin: 13px 15px 11px;
  }
  .mobile-basket a {
    display: block;
    background-image: url(../../images/basket-icon.png);
    /* Fallback */
    background-image: url(../../images/basket-icon.svg), linear-gradient(transparent, transparent);
    /* Modern browsers and screens */
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 26px 26px;
    background-color: transparent;
    text-indent: -5000px;
    overflow: hidden;
  }

  .navmenu-nav,
  .navmenu-nav.navbar-right {
    padding-top: 0;
  }

  .navbar {
    margin: 0;
  }

  .navbar-default {
    text-align: center;
    border: 0;
    background: #333;
  }

  .navmenu {
    background: #464646;
  }

  .navmenu-default .navmenu-nav.dropdown-menu,
  .navbar-default .navbar-offcanvas .navmenu-nav.dropdown-menu {
    padding-top: 0;
    background: #5f5f5f;
    min-width: 0;
    width: 100%;
  }

  .navmenu-nav.navbar-right .dropdown-menu {
    padding: 15px;
  }

  .navmenu-links,
  .navmenu-default .navmenu-nav > .open > a,
  .navmenu-default .navmenu-nav > .open > a:hover,
  .navmenu-default .navmenu-nav > .open > a:focus,
  .navbar-default .navbar-offcanvas .navmenu-nav > .open > a,
  .navbar-default .navbar-offcanvas .navmenu-nav > .open > a:hover,
  .navbar-default .navbar-offcanvas .navmenu-nav > .open > a:focus,
  .navmenu-default .navmenu-nav > li > a,
  .navmenu-default .navmenu-nav > li > a:hover,
  .navmenu-default .navmenu-nav > li > a:focus,
  .navbar-default .navbar-offcanvas .navmenu-nav > li > a,
  .navbar-default .navbar-offcanvas .navmenu-nav > li > a:hover,
  .navbar-default .navbar-offcanvas .navmenu-nav > li > a:focus {
    /* Create an extentsion class for reuse below */
    background: #525252;
    margin-bottom: 1px;
    padding: 13px 15px 14px;
  }

  .navmenu-nav.dropdown-menu.dropdown-menu .col-nav {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
  }

  .navmenu-nav.dropdown-menu.dropdown-menu .col-nav:first-child {
    margin-top: 0;
  }

  .nav li li {
    margin: 5px 0;
  }

  .nav li .dropdown-header-main {
    border-top: 1px solid #777;
    padding-top: 20px;
    min-height: 0;
  }

  .navmenu-nav.dropdown-menu .col-nav:first-child .dropdown-header-main {
    border: 0;
  }

  .navmenu-nav.dropdown-menu ul {
    margin: 0;
  }

  .nav li .dropdown-header {
    padding-top: 15px;
    color: #bbb;
  }

  .navmenu-nav.navbar-right .dropdown-menu .user {
    background: #525252;
  }

  .navmenu-nav.navbar-right li.basket {
    display: none;
  }

  footer {
    text-align: center;
  }

  footer h4 {
    margin: 10px 0 0 0;
  }

  footer .clean-list {
    display: none;
  }

  .social-list {
    margin: 0 auto;
  }

  .social-list li {
    text-align: left;
    display: inline;
  }

  .social-list a {
    display: inline-block;
    margin: 8px 5px 0 5px;
    width: 120px;
  }

  .works {
    display: none;
  }

  .canvas {
    padding: 0;
  }

  .big {
    font-size: 20px;
  }

  .right {
    text-align: center;
  }

  .hero {
    min-height: 300px;
  }

  .google-map {
    padding-bottom: 85%;
  }
}
@media (max-width: 479px) {
  .hero {
    min-height: 200px;
  }
}
@media (min-width: 768px) {
  body {
    padding: 0;
  }

  .mobile-logo {
    display: none;
  }

  nav {
    background: #333;
    border: 0;
  }

  .navbar {
    background: none;
    border: none;
    min-height: 0;
    margin-bottom: 0;
  }

  .canvas {
    position: relative;
    padding: 0;
  }

  .affix {
    /* Affix the menu to the top of the page */
    width: 100%;
    z-index: 1000;
  }

  .affix + .canvas {
    padding-top: 81px;
  }

  .navmenu {
    position: relative;
    width: 100%;
    height: 45px;
    z-index: 5;
  }

  .navmenu-nav {
    float: left;
  }

  .user-details,
  .navmenu-nav.navbar-right {
    margin-right: 15px;
  }

  .navmenu-fixed-left {
    overflow-y: visible;
  }

  .navmenu-nav.dropdown-menu {
    position: fixed;
  }

  .nav > li {
    display: inline;
    float: left;
    position: static;
  }

  .navmenu-nav.navbar-right > li {
    position: relative;
    margin-right: 15px;
  }
  .navmenu-nav.navbar-right > li a, .navmenu-nav.navbar-right > li a:hover, .navmenu-nav.navbar-right > li a:focus {
    background-color: #DA0057;
    border-radius: 2px 2px 0 0;
  }

  .navmenu-nav.navbar-right > li.open > a a:hover, .navmenu-nav.navbar-right > li.open > a a:focus {
    background-color: #DA0057;
    border-radius: 2px 2px 0 0;
  }

  .navmenu-nav.navbar-right .dropdown-menu {
    position: absolute;
    top: 42px;
    left: auto;
    right: 0;
    padding: 20px;
    background: #DA0057;
  }

  .nav > li > a {
    display: inline-block;
  }

  .navmenu-nav.navbar-right li.basket {
    margin-right: 0;
  }
  .navmenu-nav.navbar-right li.basket a, .navmenu-nav.navbar-right li.basket a:hover, .navmenu-nav.navbar-right li.basket a:focus {
    top: 4px;
    background-position: 1px 1px;
    background-size: 20px 20px;
    width: 22px;
    height: 22px;
    padding: 2px;
  }

  .mobile-basket {
    display: none;
  }

  footer .col-sm-4 {
    min-height: 320px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .affix + .canvas {
    /* Add padding to the canvas when navigation becomes fixed */
    padding-top: 52px;
  }

  .navmenu .logo {
    margin-left: 15px;
    margin-top: 15px;
  }
  .navmenu .logo a {
    width: 120px;
    height: 28px;
    background-size: 120px;
  }

  .navmenu-nav {
    padding: 20px 0 0 0;
  }

  .nav li {
    font-size: 11px !important;
    /* Override the global font sizing */
  }

  .nav > li > a {
    padding: 8px 8px;
  }

  .navmenu-nav.dropdown-menu {
    top: 52px;
  }

  .navmenu-nav.dropdown-menu .col-nav {
    width: 16%;
  }

  .navmenu-nav.navbar-right > li {
    margin-right: 10px;
  }

  .navmenu-nav.navbar-right .dropdown-menu {
    top: 32px;
  }

  .user-details {
    display: none;
  }

  .navmenu-nav.navbar-right {
    padding: 20px 0 0 0;
  }

  footer h4 {
    font-size: 15px !important;
    /* Override the global font sizing */
  }

  footer li {
    font-size: 13px !important;
    /* Override the global font sizing */
  }

  .hero {
    min-height: 300px;
  }

  .google-map {
    padding-bottom: 85%;
  }
}
@media (min-width: 992px) and (max-width: 1200px) {
  .navmenu .logo {
    margin-left: 15px;
    margin-top: 22px;
  }
  .navmenu .logo a {
    width: 200px;
    background-size: 200px;
  }

  .nav li {
    font-size: 14px !important;
    /* Override the global font sizing */
  }

  .nav > li > a {
    padding: 10px 8px;
  }

  .navmenu-nav {
    padding: 40px 0 0 0;
  }

  .navmenu-nav.navbar-right {
    padding: 40px 0 0 0;
  }

  .navmenu-nav.navbar-right li.basket {
    margin-right: 0;
  }
  .navmenu-nav.navbar-right li.basket a, .navmenu-nav.navbar-right li.basket a:hover, .navmenu-nav.navbar-right li.basket a:focus {
    top: 4px;
    background-position: 4px 4px;
    background-size: 25px 25px;
    width: 34px;
    height: 34px;
    padding: 7px;
  }

  .navmenu-nav.navbar-right .dropdown-menu {
    top: 40px;
  }

  .navmenu-nav.dropdown-menu .col-nav {
    width: 16.8%;
  }

  footer h4 {
    font-size: 15px !important;
    /* Override the global font sizing */
  }

  footer li {
    font-size: 13px !important;
    /* Override the global font sizing */
  }
}
@media (min-width: 992px) {
  .navmenu-nav.navbar-right li.basket {
    margin-right: 0;
  }
  .navmenu-nav.navbar-right li.basket a, .navmenu-nav.navbar-right li.basket a:hover, .navmenu-nav.navbar-right li.basket a:focus {
    top: 4px;
    background-position: 4px 4px;
    background-size: 25px 25px;
    width: 34px;
    height: 34px;
    padding: 7px;
  }
}
@media (min-width: 1200px) {
  .navmenu .logo {
    margin-left: 15px;
    margin-top: 15px;
  }
  .navmenu .logo a {
    width: 237px;
    background-size: 237px;
  }

  .nav li {
    font-size: 24px;
    font-size: 1.5rem;
  }

  .nav > li > a {
    padding: 10px 15px;
  }
}
