* {
    margin:0;
    padding:0;
    outline:0;
}

:root {
    --main-colour:#FFF;
    --light-colour:#777;
    --border-color:#CCC;
    --text-colour:#222;
    --accent-colour:#800020;
    --logo-width:100px;
    --logo-mobile-width:75px;
    --main-font:'Open Sans', sans-serif;
    --secondary-font:'Roboto', sans-serif; 
}

body {
    background:var(--main-colour);
    color:var(--text-colour);
    font-family:var(--main-font);
}

a {
    color:var(--accent-colour)
}

header,
section,
footer,
.page-container {
    position:relative;
    width:100%;
    box-sizing:border-box;
}
h1 {
    font-family:var(--secondary-font);
}
.page-container {
    width:1600px;
    margin:0 auto;
}
@media only screen and (max-width:1667px){
    .page-container {
        width:1200px;
    }
}

@media only screen and (max-width:1267px){
    .page-container {
        width:1000px;
    }
}

@media only screen and (max-width:1067px){
    .page-container {
        width:90%;
    }
}

header {
    position:fixed;
    background:#FFF;
    border-bottom:1px var(--border-color) solid;
    top:0;
    padding:15px 0;
    left:0;
    z-index:5;
}
.logo,
.logo img,
.logo span,
.menu,
.menu ul li  {
    display:inline-block;
    vertical-align:middle;
    box-sizing: border-box;
}
.logo img {
    width:35px;
}

.logo span {
    font-size:14px;
    font-weight:900;
    font-family:var(--secondary-font);
    padding:0 0 0 15px;
    color:var(--light-colour);
    text-transform: uppercase!important;
}
.logo span i {
    font-size:11px;
    font-weight:300;
    display:block;
    width:100%;
    font-style: normal;
}

.menu {
    text-align:right;
    width:calc(100% - 150px);
}
.menu nav ul {
    list-style-type:none;
    list-style: none;
}

.menu ul li {
    padding:0 10px;
}
.menu ul li:last-child {
    padding-right:0;
}
.menu ul li a {
    text-transform: uppercase;
    color:var(--text-colour);
    text-decoration:none;
    font-size:12px;
}

@media only screen and (max-width:667px){
    .menu ul li a {
        font-size:10px;
    }
    .menu ul li {
        padding:0 5px;
    }
}

.menu ul li:hover a {
    text-decoration:underline;
    color:var(--text-colour);
}
.splash-header {
    position:relative;
    overflow:auto;
    height:90vh;
    width:100%;
    background-image:url('../img/section-wave.png');
    background-position:center bottom;
    background-repeat:no-repeat;
    background-color:#E7E7E7;
}

.splash-header {
    text-align:center;
}

.splash-header img {
    width:60px;
    margin:0 auto 20px;
}
.splash-header h1 {
    font-family: var(--secondary-font);
    font-weight: 500;
    text-transform: uppercase;
    font-size: 36px;
    color:var(--light-colour);
}

@media only screen and (max-width:667px){
    .splash-header h1 {
        font-size:36px;
        width:80%;
        margin-left:auto;
        margin-right:auto;
        line-height:38px;
    }
}

.splash-header  span {
    display:block;
    margin:25px auto;
    width:10px;
    height:10px;
    border-radius:50%;
}

.splash-header span div {
    position: relative;
    left: 50%;
    top: 0;
    transform: translateX(-50%) translateY(-50%);
    width: 10px;
    height: 10px;
  }
.splash-header span div:before {
    content: "";
    position: relative;
    display: block;
    width: 300%;
    height: 300%;
    box-sizing: border-box;
    margin-left: -100%;
    margin-top: -100%;
    border-radius: 50%;
    background-color: var(--accent-colour);
    -webkit-animation: pulse-ring 1.25s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
            animation: pulse-ring 1.25s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
  }
  .splash-header span div:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    margin-top:10px;
    width: 100%;
    height: 100%;
    background-color: var(--accent-colour);
    border-radius: 15px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    -webkit-animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -0.4s infinite;
            animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -0.4s infinite;
  }

.main-wrap {
    display:table;
    width:100%;
    height:100%;
}
.main-frame {
    display:table-cell;
    vertical-align:middle;
    text-align:center;
}

.splash-header .main-wrap {
    margin-top:-100px;
}

.about-section {
    position:relative;
    height:100vh;
    width:100%;
    margin-top:-400px;
}

.capabilities-section {
    background:#F7F7F7;
}
.capabilities-section .page-container,
.contact-section .page-container {
    text-align:center;
    padding:150px 0;
}

.about-section .page-container,
.capabilities-section .page-container,
.contact-section .page-container {
    width:50%;
}

@media only screen and (max-width: 1067px){
    .about-section .page-container,
    .capabilities-section .page-container,
    .contact-section .page-container {
        width:96%;
    }
}

.section-capabilities {
    margin:150px auto 0;
    text-align:center;
}
.sc-item {
    display:inline-block;
    width:30%;
    vertical-align:top;
    box-sizing: border-box;
    padding:0 15px;
    margin-bottom:100px;
}

.sci-image {
    position:relative;
    margin:0 auto 25px;
    width:60%;
    border-radius:50%;
    border:1px var(--text-colour) solid;
    padding:10px;
    box-sizing: border-box;
}
.sci-image img {
    width:100%;
}

@media only screen and (max-width:1267px){
    .sc-item {
        width:50%;
    }
}

@media only screen and (max-width:967px){
    .sci-image {
        width:35%;
    }
    .sc-item {
        display:block;
        position:relative;
        width:96%;
        margin:0 auto 50px;
    }
}

.sc-title {
    color:var(--accent-colour);
    font-size:14px;
    text-transform:uppercase;
    font-weight:700;
    margin:0 auto 10px;
}
.sc-text {
    font-size:14px;
}

.contact-section {
    border-bottom:1px var(--border-color) solid;
}

.section-title {
    font-family: var(--secondary-font);
    font-size:21px;
    text-transform:uppercase;
    font-weight:500;
    color:var(--light-colour);
}
.section-text {
    font-size:21px;
    line-height:32px;
}

@media only screen and (max-width:667px){
    .section-text {
        font-size:18px;
    }
}

.section-text span {
    border-bottom:1px var(--light-colour) dotted;
}

.circle {
    display:block;
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--accent-colour);
    position:relative;
    margin:15px auto 75px;
}

.chicken-section {
    height:100vh;
    background-image:url('../img/chicken-skateboarding.jpg');
    background-size:cover;
    background-position:center center;
}

.crown,
.chicken {
    position:relative;
    text-align:center;
}
.chicken {
    margin-bottom:100px;
}
.crown img,
.chicken img {
    width:55px;
    margin:0 auto 15px;
    position:relative;
}
.chicken img {
    width:350px;
}

footer {
    padding:50px 0;
}

.footer-col {
    display:inline-block;
    width:50%;
    vertical-align: top;
    box-sizing: border-box;
}
.footer-col.fcl {
    text-align:left;
}
.footer-col.fcr {
    text-align:right;
}

.footer-col p:first-child {
    font-size:14px;
    color:var(--text-colour);
}
.footer-col p:last-child {
    font-size:12px;
    color:var(--light-colour);
}

.footer-crown {
    margin-top:-30px;
}

.footer-crown .crown img {
    width:35px;
}

@media only screen and (max-width:967px){
    .footer-crown {
        margin-top:50px;
    }
    .chicken img {
        width:77%;
    }
    .contact-section .section-text a {
        display:block;
    }
}

@media only screen and (max-width:667px){
    .footer-crown {
        margin-top:25px;
    }
    footer {
        padding:35px 0 30px;
    }
    footer .page-container {
        display: flex;
        flex-direction: column-reverse;
    }
    .footer-col {
        display:block;
        width:96%;
        margin-left:auto;
        margin-right:auto;
    }
    .footer-col.fcl,
    .footer-col.fcr {
        text-align:center;
    }

    .fcr {
        margin-bottom: 15px;
    }
}
  
  @-webkit-keyframes pulse-ring {
    0% {
      transform: scale(0.33);
    }
    80%, 100% {
      opacity: 0;
    }
  }
  
  @keyframes pulse-ring {
    0% {
      transform: scale(0.33);
    }
    80%, 100% {
      opacity: 0;
    }
  }
  @-webkit-keyframes pulse-dot {
    0% {
      transform: scale(0.8);
    }
    50% {
      transform: scale(1);
    }
    100% {
      transform: scale(0.8);
    }
  }
  @keyframes pulse-dot {
    0% {
      transform: scale(0.8);
    }
    50% {
      transform: scale(1);
    }
    100% {
      transform: scale(0.8);
    }
  }