﻿/* Screen reader only */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  clip: rect(0, 0, 0, 0);
  border: 0; }

/* Button styling */
.menu-toggle {
  display: inline-block;
  padding: 0.75em 15px;
  line-height: 1em;
  font-size: 1em;
  color: #fff;
  float: right; }

.menu-toggle:hover,
.menu-toggle:focus {
  color: rgba(255, 255, 255, 0.3); }

/*
 Default styles + Mobile first
 Offscreen menu style
 */
.main-menu {
  position: absolute;
  left: -200px;
  top: 0;
  height: 100%;
  transition: left 0.3s ease, box-shadow 0.3s ease;
  z-index: 999; }

.main-menu ul {
  list-style: none;
  margin: 0;
  padding: 2.5em 0 0;
  /* Hide shadow w/ -8px while 'closed' */
  -webkit-box-shadow: -8px 0 8px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: -8px 0 8px rgba(0, 0, 0, 0.5);
  box-shadow: -8px 0 8px rgba(0, 0, 0, 0.5);
  min-height: 100%;
  width: 200px;
  background: #034a7d; }

.main-menu a {
  font-family: "verdana";
  display: block;
  padding: 0.75em 15px;
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid #0a3b5f; }

.main-menu li:first-child a {
  border-top: 1px solid #0a3b5f; }

.main-menu a:hover,
.main-menu a:focus {
  background: #0a3b5f;
  text-decoration: underline; }

.main-menu .menu-close {
  border: none;
  line-height: 1em;
  position: absolute;
  right: 0;
  top: 0; }

/*
 :target for non-JavaScript
 aria-expanded="true/false" will be for JavaScript
 */
.main-menu:target,
.main-menu[aria-expanded="true"] {
  left: 0;
  outline: none;
  -moz-box-shadow: 3px 0 12px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: 3px 0 12px rgba(0, 0, 0, 0.25);
  box-shadow: 3px 0 12px rgba(0, 0, 0, 0.25); }

.main-menu:target .menu-close,
.main-menu[aria-expanded="true"] .menu-close {
  z-index: 1001; }

.main-menu:target ul,
.main-menu[aria-expanded="true"] ul {
  position: relative;
  z-index: 1000; }

.main-menu:target + .backdrop,
.main-menu[aria-expanded="true"] + .backdrop {
  position: absolute;
  display: block;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 998;
  background: #000;
  background: rgba(0, 26, 45, 0.85);
  cursor: default; }

@supports (position: fixed) {
  .main-menu,
  .main-menu:target + .backdrop,
  .main-menu[aria-expanded="true"] + .backdrop {
    position: fixed; } }

/*
 Larger screen styling
 Horizontal menu
 */
@media (min-width: 768px) {
  .menu-toggle,
  .main-menu .menu-close {
    display: none; }
  /* Undo positioning of off-canvas menu */
  .main-menu {
    position: relative;
    left: auto;
    top: auto;
    height: auto;
    display: inline-block;
    margin-left: 30px;
    font-size: 13px;
    line-height: 28px; }
  .main-menu ul {
    display: flex;
    /* Undo off-canvas styling */
    padding: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    height: auto;
    width: auto;
    background: none; }
  .main-menu li {
    border-right: 1px solid rgba(255, 255, 255, 0.27); }
  .main-menu a {
    color: #fff;
    border: 0 !important;
    background: none;
    transition: background 1s;
    padding: 1.1em 15px; }
  .main-menu a:hover,
  .main-menu a:focus {
    background: none;
    /* Remove background from off-canvas styling */
    text-decoration: none;
    background: rgba(0, 0, 0, 0.2);
    transition: background 0.7s; } }
