:root{
  --dgrey:#222222;
  --pink:#ff0060;
}

html {
  min-height:100vh;
}

.group:after {
  content: "";
  display: table;
  clear: both;
}

* {
    padding:0;
    margin:0;
    box-sizing: border-box;
	font-family:inherit;
	color:inherit;
}

img {
	display:block;
	max-width:100%;
}

.wrap {
  position:relative;
  width:calc(1100px + 2em);
  padding:0 1em;
  max-width:100%;
  margin:0 auto;
}

#burger,
#mobnav {
  display:none;
}

body {
  min-height:100vh;
  font-size:62.5%;
  background-color:var(--dgrey);
  background-image:url('../img/bg2.jpg');
  background-size:360px 625px;
  background-attachment: fixed;
  font-family: 'Roboto', sans-serif;
  color:#333;
}

header {
	background-color:#fff;
  margin:2em 0 1em 0;
}

  #logo {
    position: relative;
    float:left;
    height:6.5em;
    margin:2.5em;
    user-select: none;
  }

    #logo img {
      position: relative;
      z-index:1;
      height:100%;
    }

    #logo .bg {
      position:absolute;
      left:0;
      top:0;
      width:100%;
      height:100%;
      background-color:#333;
      z-index:0;
    }

  #diag-line {
    float:left;
    height:90px;
    pointer-events: none;
    user-select: none;
  }

  header h3 {
    float:left;
    margin:6.75em 0 0 1.5em;
  }

  header .account {
    float:right;
    margin-right:2em;
  }

    header #searchbox {
      position:relative;
      float:left;
    }

      header #search_query {
        border:0;
        outline:0;
        background-color:#eee;
        width:250px;
        padding:1em;
        font-size:1em;
      }

        header #search_query::placeholder {
          text-transform: uppercase;
          font-size:1em;
          letter-spacing: 0.1em;
        }

      header #search_submit {
        position:absolute;
        border:0;
        outline:0;
        background-color:#333;
        color:#fff;
        right:0;
        top:0;
        padding:0.5em 0.75em;
        height:100%;
        cursor: pointer;
      }

        header #search_submit:hover {
          background-color:var(--pink);
        }

    header .account a {
      float:left;
      margin-left:0.5em;
      background-color:var(--pink);
      color:#fff;
      text-transform: uppercase;
      text-align: center;
      padding:1em 1.5em;
      text-decoration: none;
      letter-spacing: 0.05em;
      transition: all 0.25s ease-out;
    }

      header .account a:hover {
        background-color:#eee;
        color:#333;
      }

  nav {
    float:right;
    clear:right;
    margin:4em 0.5em 0 0;

  }

    nav ul {
      float:left;
      clear:left;
      width:100%;
      list-style: none;
    }

      nav li {
        float:left;
        clear:none;
      }

        nav a {
          float:left;
          padding:1em 2em;
          text-transform: uppercase;
          text-decoration: none;
          letter-spacing: 0.05em;
        }

          .active,
          nav a:hover {
            color:var(--pink);
          }

    

.flex {
  display:-webkit-flex;
  display:flex;
  -webkit-flex-direction:row;
  flex-direction:row;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
}

.fcw {
  float:left;
  clear:left;
  width:100%;
}

h1,h2,h3,h4,h5,h6 {
	margin-bottom:1em;
	font-weight:normal;
}

main {
  float:left;
  clear:left;
  width:100%;
  margin-bottom:1em;
}

main p,
main li{
	font-size:1.2em;
	line-height:1.6;
	margin-bottom:1em;
}

main td {
  font-size:1.2em;
}

main p a {
  color:var(--pink);
}

  main li p {
    font-size:1em;
  }

main ul,
main ol {
	margin:2em;
}

  main li {
    padding-left:1em;
  }

.two-col {
  float:left;
  clear:left;
  width:100%;
  display:grid;
  grid-template-columns: 1fr 1fr;
  grid-gap:1em;
}

.heading {
  float:left;
  clear:left;
  background-color:#333;
  color:#fff;
  padding:0.25em 0.5em;
  font-size:2em;
  font-weight:200;
  line-height:1;
  transition: all 0.25s ease-out;
}

.smallheading {
  float:left;
  clear:left;
  text-transform: uppercase;
  font-size:1em;
  font-weight:normal;
  line-height:1.2;
  letter-spacing: 0.1em;
  padding-bottom:1em;
  border-bottom:1.75px dotted;
  width:100%;
}

.cat {
  float:left;
  clear:left;
  background-color:var(--pink);
  color:#fff;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding:0.25em 0.5em;
  font-size:0.8em;
  line-height:1;
  text-decoration: none;
}

  a.cat:hover {
    background-color:#eee;
    color:#333;
  }

.pinkbox {
  background-color:var(--pink);
  color:#fff;
}

.pink-btn,
.dgrey-btn {
  background-color:var(--pink);
  color:#fff;
  padding:1em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: all 0.25s ease-out;
}

.dgrey-btn {
  background-color:#333;
}

  .pink-btn:hover,
  .grey-btn:hover {
    background-color:#eee;
    color:#333;
  }

p:last-of-type {
    margin-bottom:0;
}

.hero {
    padding:2em;
    margin-bottom:1em;
}

  .hero h1 {
      font-size:3.5em;
      font-weight:200;
      line-height:1;
      margin:0;
  }

.pager-nav,
.pager-nav ul{
    float:left;
    Clear:left;
    width:100%;
    text-align: center;
    padding:0;
    margin:0;
}

.pager-nav {
    margin:1em 0 0;
}

    .pager-nav ul li {
        display:inline-block;
        color:#fff;
        padding:0;
        margin:0;
    }
    
        .pager-nav ul li a {
            float:left;
            background-color:#666;
            padding:0.5em 1em;
            text-decoration: none;
            margin:0 0.5em;
            font-size:1em;
            text-transform: uppercase;
        }
        
            .pager-nav ul li a:hover,
            .pager-nav ul li.active a{
                background-color:var(--pink);
            }

.align_left {
  float:left;
}

.align_right {
  float:right;
}

.align_center {
  text-align: center;
}

img.align_left {
  margin:0.5em 1em 1em 0;
}

img.align_right {
  margin:0.5em 0 1em 1em;
}

img.align_center {
  display:block;
  margin-left:auto;
  margin-right:auto;
}
  
footer {
  float:left;
  clear:both;
  background-color:#fff;
  color:#333;
  padding:2em;
  width:100%;
  margin-bottom:2em;
}

@media screen and (max-width:1099px) {
  header {
    position:relative;
    margin-top:1em;
  }

  footer {
    margin-bottom:1em;
  }
}

@media screen and (max-width:799px) {

  header .account {
    position:absolute;
    right:2em;
    top:0;
    margin:0;
  }

  nav {
    margin:0;
    float:left;
    clear:left;
    width:100%;
  }

    nav ul {
      float:right;
      clear:right;
      width:100%;
      display:none;
    }

    nav li,
    nav a {
      float:left;
      clear:left;
      width:100%;
      text-align: center;
    }

      nav a {
        border-top:1px solid #eee;
        padding:1.5em;
      }
  
  #burger {
    position:absolute;
    right:2em;
    top:6em;
    width:40px;
	  display:block;
    padding:0;
  }
}

@media screen and (max-width:629px) {
  header .account {
    position:static;
    float:right;
    width:100%;
    display:grid;
    grid-template-columns: 1fr 80px 80px;
    grid-gap:0.5em;
    padding:0 2em;
  }

    header .account a {
      margin:0;
    }

    header #searchbox {
      margin:0;
      display:grid;
      grid-template-columns: 1fr 35px;
    }

      #searchbox input {
        width:100%;
        position: relative;
      }

  #logo {
    height:5em;
    margin:2em 1em 2em 2em;
  }

  #diag-line {
    height:70px;
  }

  header h3 {
    margin-top:5em;
  }

  #burger {
    top:7em;
  }
}

@media screen and (max-width:359px) {

  header .account {
    padding:0 1em;
    grid-template-columns: 1fr 65px 80px;
  }

  #burger {
    right:1em;
    top:6em;
  }

  #logo {
    margin:1em;
  }

  #diag-line {
    height:58px;
  }

  header h3 {
    margin-top:4em;
    margin-left:1em;
  }
}

@media screen and (max-width:319px) {
  #diag-line {
    display:none;
  }

  header h3 {
    margin-left:0;
  }
}