/*
Author: Craig Twigg
Version: 1.0.0
*/

/*BODY-----------------------------------------------------------------------*/

body {
	font-family: museo-slab, serif;
  font-weight: 100;
	font-size: 14px;
	color: #ffffff;
	text-align: left;
}
.is-smaller {
  font-size: 80%;
}
.is-strong {
  font-weight: 700;
}
.is-strongest {
  font-weight: 800;
}
.is-struckout:before {
  content: "";
  position: absolute;
  top: 8px;
  right: 0;
  left: 0;
  border: 1px solid rgba(80, 80, 80, 1);
}
@media screen and (min-width: 768px) {
  .is-struckout:before {
    top: 12px;
  }
}
@media screen and (min-width: 992px) {
  .is-struckout:before {
    top: 8px;
  }
}
@media screen and (min-width: 1440px) {
  .is-struckout:before {
    top: 10px;
  }
}

/*UI-------------------------------------------------------------------------*/

#ui {
  height: 100%;
}

/*MAIN-----------------------------------------------------------------------*/

main {
}

/*CONTAINER------------------------------------------------------------------*/

.container {
  max-width: 85%;
  margin: 0 auto;
}
@media screen and (min-width: 375px) {
  .container {
    max-width: 90%;
  }
}
@media screen and (min-width: 1200px) {
  .container {
    max-width: 1100px;
  }
}
@media screen and (min-width: 1440px) {
  .container {
    max-width: 85%;
  }
}

/*HEADER---------------------------------------------------------------------*/

header {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 10;
  padding: 24px 0 24px 0;
  background-color: rgba(42, 109, 140, 0.85);
}
@media screen and (min-width: 992px) {
  header {
    padding: 16px 0 16px 0;
  }
}
@media screen and (min-width: 1200px) {
  header {
    padding: 32px 0 32px 0;
  }
}
#logo {
  width: 48px;
  height: 48px;
  border: 1px solid white;
  transition: all 0.15s ease;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  #logo {
    width: 56px;
    height: 56px;
  }
}
@media screen and (min-width: 992px) {
  #logo {
    width: 48px;
    height: 48px;
  }
}
#logo:hover {
  -webkit-box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.8); 
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.8);  
}
#logo a {
  width: 48px;
  height: 48px;
  display: block;
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: 46% 48%;
  background-image: url(../images/ct-white.png);
}
@media screen and (min-width: 768px) {
  #logo a {
    width: 56px;
    height: 56px;
  }
}
@media screen and (min-width: 992px) {
  #logo a {
    width: 48px;
    height: 48px;
  }
}
#about-me,
#my-cv,
#like-to-talk {
  display: none;
}
@media screen and (min-width: 768px) {
  #about-me,
  #my-cv,
  #like-to-talk {
    display: inline-block;
  }
  #show-menu {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  #about-me {
    margin-left: 20vw;
  }
}
@media screen and (min-width: 992px) {
  #about-me {
    margin-left: 400px;
  }
}
@media screen and (min-width: 1200px) {
  #about-me {
    margin-left: 600px;
  }
}
@media screen and (min-width: 1440px) {
  #about-me {
    margin-left: 1000px;
  }
}

/*MENU-----------------------------------------------------------------------*/

#menu {
  position: fixed;
  top: -100vh;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 9999;
  transition: all 0.4s ease;
  text-align: right;
  background-color: rgba(80, 80, 80, 0.9);
}
body.menu-visible #menu {
  top: 0;
}
.menu__container {
  background-color: rgba(42, 109, 140, 1);
  padding: 32px 32px 8px 32px;
}
.menu__container .btn {
  margin: 0 0 24px 0;
  display: block;
}
.menu__container .btn.js-toggle-menu {
  display: inline-block;
}

/*CONTENT--------------------------------------------------------------------*/

#intro {
  background-repeat: no-repeat;
  background-size: 130%;
  background-position: 50% 70%;
  background-image: url(../images/bg-keyboard.jpg);
  background-color: rgba(42, 109, 140, 1);
  height: 100vh;
  padding: 25vh 0 0 0;
}
@media screen and (min-width: 576px) {
  #intro {
    background-size: 90%;
  }
}
.intro__container,
.project__container {
  max-width: 85%;
  margin: 0 auto;
}
@media screen and (min-width: 375px) {
  .intro__container,
  .project__container {
    max-width: 80%;
  }
}
@media screen and (min-width: 576px) {
  .intro__container {
    max-width: 70%;
  }
}
@media screen and (min-width: 576px) {
  .project__container {
    max-width: 85%;
  }
}
@media screen and (min-width: 768px) {
  .intro__container {
    max-width: 65%;
  }
}
@media screen and (min-width: 768px) {
  .project__container {
    max-width: 80%;
  }
}
@media screen and (min-width: 992px) {
  .intro__container {
    max-width: 78%;
  }
}
@media screen and (min-width: 1200px) {
  .project__container {
    max-width: 75%;
  }
}
@media screen and (min-width: 1440px) {
  .intro__container {
    max-width: 65%;
  }
}
.intro__headline {
  font-size: 34px;
  font-weight: 100;
  hyphens: auto;
}
@media screen and (min-width: 375px) {
  .intro__headline {
    font-size: 40px;
  }
}
@media screen and (min-width: 414px) {
  .intro__headline {
    font-size: 44px;
  }
}
@media screen and (min-width: 576px) {
  .intro__headline {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) {
  .intro__headline {
    font-size: 56px;
  }
}
@media screen and (min-width: 992px) {
  #intro {
    background-size: 62%;
    background-position: 90% 48%;
    padding: 35vh 0 0 0;
  }
  .intro__headline {
    font-size: 36px;
  }
}
@media screen and (min-width: 1200px) {
  .intro__headline {
    font-size: 40px;
  }
}
@media screen and (min-width: 1440px) {
  #intro {
    background-position: 80% 48%;
  }
  .intro__headline {
    font-size: 48px;
  }
}
.btn a {
  font-family: muli, sans-serif;
  font-weight: 600;
  font-style: normal;
  border: 1px solid white;
  transition: all 0.15s ease;
  text-align: center;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  padding: 10px 20px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 2px;
  cursor: pointer;
  display: block;
}
.btn:hover,
.btn.active,
body.page-template-about-me #about-me {
  -webkit-box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 1); 
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 1);
}
@media screen and (min-width: 768px) {
  .btn a {
    font-size: 15px;
  }
}
@media screen and (min-width: 992px) {
  .btn a {
    font-size: 12px;
  }
}
.btn.is-narrow a {
  padding: 10px 12px;
}
.btn.is-large a {
  padding: 16px 32px;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 4px;
  background-color: rgba(80, 80, 80, 1);
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}
@media screen and (min-width: 768px) {
  .btn.is-large a {
    font-size: 18px;
  }
}
@media screen and (min-width: 992px) {
  .btn.is-large a {
    font-size: 14px;
  }
}
@media screen and (min-width: 1440px) {
  .btn.is-large a {
    font-size: 15px;
  }
}
.intro__btn {
  margin-top: 40px;
}
@media screen and (min-width: 375px) {
  .intro__btn {
    margin-top: 48px;
  }
}
@media screen and (min-width: 576px) {
  .intro__btn .btn {
    display: inline-block;
  }
}
@media screen and (min-width: 992px) {
  .intro__btn {
    margin-top: 32px;
  }
}
@media screen and (min-width: 1200px) {
  .intro__btn {
    margin-top: 40px;
  }
}
@media screen and (min-width: 1440px) {
  .intro__btn {
    margin-top: 50px;
  }
}
.intro__message {
  padding-top: 20vh;
  font-weight: 700;
}
@media screen and (min-width: 375px) {
  .intro__message {
    padding-top: 22vh;
    text-align: right;
  }
}
@media only screen and (device-width : 375px) and (device-height : 812px) and (-webkit-device-pixel-ratio : 3) {
  .intro__message {
    padding-top: 30vh;
  }
} 
@media screen and (min-width: 576px) {
  .intro__message {
    font-size: 13px;
  }
}
@media screen and (min-width: 768px) {
  .intro__message {
    padding-top: 26vh;
    font-size: 17px;
  }
}
@media screen and (min-width: 992px) {
  .intro__message {
    padding-top: 15vh;
    font-size: 13px;
  }
}
@media screen and (min-width: 1200px) {
  .intro__message {
    padding-top: 18vh;
    font-size: 14px;
  }
}
@media screen and (min-width: 1440px) {
  .intro__message {
    padding-top: 22vh;
    font-size: 16px;
  }
}

/*PROJECTS-------------------------------------------------------------------*/

.project {
  background-color: rgba(80, 80, 80, 1);
  /*min-height: 100vh;*/
  padding: 18vh 0 0 0;
  font-size: 15px;
}
@media only screen and (device-width : 375px) and (device-height : 812px) and (-webkit-device-pixel-ratio : 3) {
  .project {
    padding: 12vh 0 0 0;
  }
}
@media screen and (min-width: 576px) {
  .project {
    padding: 16vh 0 0 0;
  }
}
@media screen and (min-width: 768px) {
  .project {
    font-size: 16px;
    padding: 14vh 0 0 0;
  }
}
@media screen and (min-width: 992px) {
  .project {
    font-size: 14px;
  }
}
@media screen and (min-width: 1200px) {
  .project {
    padding: 18vh 0 0 0;
  }
}
@media screen and (min-width: 1440px) {
  .project {
    font-size: 16px;
    padding: 15vh 0 0 0;
  }
}
.project__type {
  color: rgba(255, 255, 255, 1);
  margin: 32px 0 0 0;
  font-size: 175%;
  line-height: 120%;
}
.project__involvement {
  font-weight: 700;
  color: rgba(255, 255, 255, 1);
  font-size: 110%;
  line-height: 130%;
  margin: 16px 0 0 0;
}
.project__client {
  font-family: muli, sans-serif;
  font-weight: 700;
  font-size: 90%;
  line-height: 150%;
  color: rgba(167, 167, 167, 1);
  margin: 16px 0 32px 0;
}
@media screen and (min-width: 768px) {
  .project__client {
    margin: 24px 0 32px 0;
  }
}
.project__thumb {
  max-width: 100%;
  margin: 30px auto 0 auto;
}
@media screen and (min-width: 556px) {
  .project__thumb {
    max-width: 100%;
  }
  .project__type {
    font-size: 150%;
  }
  .project__involvement {
    font-size: 100%;
  }
}
@media screen and (min-width: 1200px) {
  .project__thumb {
    margin: 40px auto 0 auto;
  }
  .project__type {
    font-size: 130%;
  }
  .project__involvement {
    font-size: 90%;
  }
}
@media screen and (min-width: 1440px) {
  .project__thumb {
    margin: 56px auto 0 auto;
  }
  .project__type {
    font-size: 130%;
  }
  .project__involvement {
    font-size: 90%;
  }
}

/*ABOUT----------------------------------------------------------------------*/

#about {
  background-color: rgba(42, 109, 140, 1);
  min-height: 100vh;
  padding: 18vh 0 0 0;
}
.about__container {
  max-width: 85%;
  padding: 0 0 24px 0;
  margin: 0 auto;
}
@media screen and (min-width: 375px) {
  .about__container {
    max-width: 80%;
  }
}
@media screen and (min-width: 576px) {
  .about__container {
    max-width: 70%;
  }
}
@media screen and (min-width: 768px) {
  .about__container {
    max-width: 75%;
    padding: 0 0 40px 0;
  }
}
@media screen and (min-width: 992px) {
  .about__container {
    max-width: 78%;
  }
}
@media screen and (min-width: 1440px) {
  .about__container {
    max-width: 65%;
  }
}
.about__container p {
  font-size: 24px;
  line-height: 130%;
  padding: 0 0 36px 0;
}
@media screen and (min-width: 576px) {
  .about__container p {
    font-size: 20px;
    padding: 0 0 36px 64px;
  }
}
@media screen and (min-width: 768px) {
  .about__container p {
    font-size: 28px;
    padding: 0 0 42px 80px;
  }
}
@media screen and (min-width: 992px) {
  .about__container p {
    font-size: 22px;
    padding: 0 0 30px 64px;
  }
}
@media screen and (min-width: 1200px) {
  .about__container p {
    font-size: 22px;
    padding: 0 0 30px 72px;
  }
}
@media screen and (min-width: 1440px) {
  .about__container p {
    font-size: 26px;
  }
}
.about__container img {
  max-width: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  border: 1px solid #ffffff;
  margin: 0 0 36px 0;
}
@media screen and (min-width: 576px) {
  .about__container img {
    max-width: 35%;
  }
}
@media screen and (min-width: 768px) {
  .about__container img {
    max-width: 30%;
  }
}
@media screen and (min-width: 992px) {
  .about__container img {
    max-width: 18%;
  }
}
@media screen and (min-width: 1200px) {
  .about__container img {
    max-width: 14%;
  }
}
@media screen and (min-width: 1440px) {
  .about__container img {
    max-width: 12%;
    margin: 0 0 48px 0;
  }
}

/*FOOTER---------------------------------------------------------------------*/

footer {
  background-color: rgba(80, 80, 80, 1);
  padding: 24px 0 24px 0;
}
@media screen and (min-width: 992px) {
  footer {
    padding: 0 0 24px 0;
  }
}
@media screen and (min-width: 1200px) {
  footer {
    padding: 0 0 32px 0;
  }
}
@media screen and (min-width: 1440px) {
  footer {
    padding: 0 0 48px 0;
  }
}

/*FANCYBOX-------------------------------------------------------------------*/

.fancybox-bg {
  background-color: rgba(80, 80, 80, 1) !important;
}
.fancybox-is-open .fancybox-bg {
  opacity: 1 !important;
}
.fancybox-navigation {
  top: calc(100vh - 20px);
}
@media screen and (min-width: 1200px) {
  .fancybox-navigation {
    top: calc(52vh - 20px);
  }
}
.fancybox-button--arrow_left {
  left: -6px !important;
}
.fancybox-button--arrow_right {
  right: -6px !important;
}©

@media screen and (min-width: 375px) {} /*iphone 6/7/8/X*/

@media screen and (min-width: 414px) {} /*iphone 6+/7+/8+*/

@media only screen and (device-width : 375px) and (device-height : 812px) and (-webkit-device-pixel-ratio : 3) { } /*iphone X*/

@media screen and (min-width: 576px) {} /*small - sm*/

@media screen and (min-width: 768px) {} /*medium - md*/

@media screen and (min-width: 992px) {} /*large - lg*/

@media screen and (min-width: 1200px) {} /*extra large - xl*/

@media screen and (min-width: 1440px) {} /*wide screen*/

/*background: transparent url(../images/xxxxx.xxx) no-repeat scroll 0 0;*/