@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200;0,300;1,200&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200;0,300;1,200&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&display=swap');

* {
    font-family: 'Nunito', sans-serif;
    font-weight: 300;
    padding: 0px;
    margin: 0px;
}
:root {
    --white:        #ffffff;
    --light-white:  #efefef;
    --yellow:       #ffd300;
    --blue:         #3498db;
    --orange:       #e67e22;
    --green:        #1abc9c;
    --red:          #a02620;
    --dark-teal:    #082033;
    --dark-blue:    #165b8a;
}

body {
    overflow: hidden;
    --padding: 2vw;
    --max-width: 60ch;
  }

  /* Preloader */

  #preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background-color: #000; */
    background: linear-gradient(rgba(28,52,71,0.1), rgba(56,95,128,0.35));
    /* change if the mask should have another color then white */
    z-index: 99;
    /* makes sure it stays on top */
  }

  #status {
    width: 200px;
    height: 200px;
    position: absolute;
    left: 50%;
    /* centers the loading animation horizontally one the screen */
    top: 50%;
    /* centers the loading animation vertically one the screen */
    background-image: url(../img/loader-200.gif);
    /* path to your loading animation */
    background-repeat: no-repeat;
    background-position: center;
    margin: -100px 0 0 -100px;
    /* is width and height divided by two */
  }


html {
    color: #CCC;
    font-size: 10px;
    line-height: 1.5;
    box-sizing: border-box;
    visibility:hidden;
    overflow-x: hidden;
}
body {
    margin: 0;
    font-size: 1.8rem;
    background: var(--dark-teal);
    -moz-transition: background-color 0.4s ease;
    -o-transition: background-color 0.4s ease;
    -webkit-transition: background-color 0.4s ease;
    transition: background-color 0.4s ease;
    overflow-x: hidden;
    scroll-behavior:smooth;
}


@media (pointer: fine) {
    .cursor {
        display: block;
    }
}
a {
    color: #777;
    text-decoration: none;
}
a.external[target="_blank"]::after {
    content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==);
    margin: 0 .25em 0 .15em;
}
p {
    margin: 0 0 2rem 0;
    font-size: 1.9rem;
    line-height: 2.4rem;
    font-weight: 500;
}
h1,h2,h3,h4,h5,h6 {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    color: #484848;
    margin: 3rem 0 2.5rem 0;
    line-height: 1.3
}
h3 {
    font-size: 2rem;
    line-height: 2.9rem;
    letter-spacing: .5px;
    text-transform: capitalize;
    font-weight: 100;
}
h4 {
    color: var(--white);
    text-transform: capitalize;
}
strong {
    font-weight: 400;
}
#container-main {
    overflow: hidden;
}

.logo {
        letter-spacing: -1px;
}
.lists {
overflow: auto;
}
.lists .list {
  margin-top: 40px;
  font-weight: 600;
  display: inline;
  width: 50%;
  float: left;
}

/* quote */
blockquote {
    font-weight: 100;
    font-size: 2rem;
    max-width: 500px;
    line-height: 1.4;
    position: relative;
    margin: 0;
    padding: 0.5rem;
    color: #000;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 2rem 2rem;
    margin-bottom: 2rem;
    margin-top: 4rem;
  }
  blockquote:before,
  blockquote:after {
    position: absolute;
    color: #444;
    font-size: 8rem;
    width: 4rem;
    height: 4rem;
  }
  blockquote:before {
    content: '“';
    left: -2rem;
    top: -1rem;
  }
  blockquote:after {
    content: '”';
    right: -2rem;
    bottom: 1rem;
  }
  cite {
    line-height: 1.4;
    text-align: left;
    color: #666;
    max-width: 500px;
  }
  cite, cite em {
    padding-left: 2rem;
  }
  .lines {
    border-top: 2px solid rgba(121, 175, 223, 0.5);
    border-bottom: 2px solid rgba(121, 175, 223, 0.5);
    padding: 6rem 4rem !important;
  }
/* .gallery figure, .gallery div {
    line-height: 0;
    grid-template-columns: 100%;
    grid-template-rows: auto;
} */
.gallery div.study a {
    position:relative;
    z-index: 100;
    display: block;
}
.gallery div.study a strong,
figure.case h4 strong {
    color: #0A2B4D !important;
}
.gallery div.study a:after {
    content:"";
    /* Set the element as full-size */
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    /* Set bg and hide the element + animation */
    background-color:#000;
    opacity:0;
    transition: all 0.5s ease 0s;
    border-radius: 15px;
    border: 5px solid #347bb5;
    /* padding: 20px 20px 10px 20px; */
    padding: 30px 30px 20px 30px;
    margin-left: -35px;
    margin-top: -35px;
  }
  .gallery div.study a:hover:after {
    /* Show the overlay on hover */
    opacity:0.15;
  }

.gallery figure.black-outline,
.gallery div.black-outline {
    outline: 0;
}
.gallery h4 {
    margin: 1rem 0;
    color: #444;
    font-size: 1.8rem;
    font-weight: 300;
    position: relative;
    font-family: 'Nunito', 'san-serif';
}
.gallery h4 span {
    color: #444;
    font-size: 1.2rem;
}
.gallery div.study h4 img {
    width: 20px !important;
    top: 0;
    position: absolute;
    right: 0;
    background: #2F6494;
	border-radius: 2px;
	padding: 4px;
}
.work h2 {
    color: var(--yellow);
    font-size: 2.75rem;
    text-transform: capitalize;
    font-weight: 200;
    font-family: 'Nunito', 'sans-serif';
}
/* .hideme {
     opacity: 70
 } */
@media (min-width: 1200px) {
    .work h2 {
        font-size: 3.25rem;
    }
}
.container {
    padding: 0 2rem 2rem 2rem;
    margin: 0 auto;
}
.container:not(.intro-text){
    max-width: 80vw;
}
.container:after,
.container:before {
    content: " ";
    display: table
}
.container:after {
    clear: both
}
.vh-100 {
      min-height: 100vh;
}
/* FLEX basic settings*/
.flex {
    display: flex;
}
.flex-wrap {
    display: flex;
    flex-wrap: wrap;
}
/* first row 100% */
.flex-first-row-100 *:not(:first-child) {
    flex: 1;
}
.flex-first-row-100 *:nth-child(1) {
    width: 100%;
}
/* last row 100% */
.flex-last-row-100 *:not(:last-child) {
    flex: 1;
}
.flex-last-row-100 *:last-child {
    width: 100%;
}
.round-img {
    border-radius: 100%;
    overflow: hidden;
    width: 125px;
    border: .5px solid rgba(255,255,255,.5);
    box-shadow: 0 1px 0 rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.1);
}
.deep-shadow {
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}
.float-left {
    float: left;
    margin: 0 3rem 3rem 0;
}
.curve {
    float: left;
    margin-right:50px;
    shape-outside:circle();
}
.display-none {
    display: none;
}
/* introduction */
.intro article.container {
    text-align: center;
    padding: 0;
    width: 100% !important;
}
.intro {
    overflow: hidden;
    height: 100vh;
}
.zip .scroll {
    color: var(--white);
    width: 10rem;
    display: block;
    text-align: center;
    height: 5rem;
    margin-left: -5rem;
    -webkit-filter: drop-shadow(5px 5px 5px rgb(0 0 0 / 100%));
    filter: drop-shadow(5px 5px 5px rgb(0 0 0 / 100%));
    background: var(--blue);
  	border-radius: 40px;
  	height: 40px;
  	width: 40px;
  	padding: 20px;
}
#include-intro {
    position: relative;
	z-index: 0;
}
.intro .foreground {
    position: absolute;
    bottom: 0;
    width: 100%;
}
.intro .fixed-intro {
    position: fixed;
    margin: 0 auto;
    width: 100%;
    padding-top: 4rem;
    display: none;
    opacity: 0;
}
.intro h1 {
    color: var(--yellow) !important;
    font-family: 'Playfair Display', serif;
    font-weight: 200;
    margin-bottom: 3rem;
    letter-spacing: -2px;
}
.intro h1 span {
    font-family: 'Playfair Display', serif;
    font-weight: 200;
}
.intro h1 br,
.intro h2 br {
    display: none;
}
.intro h2 {
    font-family: 'Spectral', serif;
    color: snow;
    font-weight: 200;
    max-width: 850px;
    margin: 0 auto;
    -webkit-filter: drop-shadow(0px 3px 1px rgb(0 0 0 / 100%));
    filter: drop-shadow(0px 3px 1px rgb(0 0 0 / 100%));
}
.intro p {
    color: #ccc;
}
.intro a {
    color: snow;
}
/* quote */
.quoteText {
    font-family: 'Spectral', serif;
    font-style: italic;
    font-weight: 300;
    font-size: 24px;
    padding: 0px 3rem;
    line-height: 140%;
    text-align: center;
    margin: 0 auto;
    max-width: 600px;
}
.credit {
    margin-top: 1rem;
    display: inline-block;
}

body.case-study #include-one {
    background-color: #347bb5;
    background-image: linear-gradient(315deg, #347bb5 0%, #143c5d 74%);
}
body.case-study div.details {
    font-size: 3rem;
	padding: 0 3rem 1.2rem 0;
	/* border-left: 1px solid rgba(255, 255, 255, 0.3); */
	margin-bottom: 2rem;
	max-width: 700px;
	/* color: var(--yellow); */
    color:rgb(181, 207, 238)
}
body.case-study div.details div:nth-of-type(2) {
    border-left: 2px solid var(--yellow);
    padding-left: 2rem;
    margin-top: 1.5rem;
}
.animated-link {
    margin-top: 40px;
    margin-bottom: 20px;
    max-width: 450px;
}
.md-chip {
    display: inline-block;
    background: var(--yellow);
    color: #444;
    padding: 4px 12px 3px 12px;
    border-radius: 16px;
    font-size: 1.3rem;
    clear: both;
}
body.home #include-one {
    background-color: white;
}
body.home .the-content {
    display: flex;
    flex-direction: column;


    align-items: center;
	/* min-height: 24em; */
	-webkit-box-pack: center;
	justify-content: center;
}

body.home #include-one p, body.home #include-one ul li {
    color: #444 !important;
}
body.home .the-content h3 > span,
body.home .the-content h3 > span > span {
    color: #16324A !important;
}


.push-down {
    margin-top: 5rem !important;
}
.responsive-thumbnails {
    display: block;
    padding: 3rem 0 2rem 0;
}
.responsive-thumbnails li {
    display: inline;
    margin-right: 10px;
}
.responsive-thumbnails img {
    max-width: 6vw;
    box-shadow: rgba(0, 0, 0, 0.45) 0px 25px 20px -20px;
}

@media (min-width: 1200px) {
    .responsive-thumbnails img {
        max-width: 6vw;
    }
}

.zip {
    position: fixed;
    left: 50%;
    bottom: 10rem;
    z-index: 1;
}
@-moz-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -moz-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -moz-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
@-webkit-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}
.bounce {
    -moz-animation: bounce 2s infinite;
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite;
}
/* link under */
.link-arrow:after {
    content: '';
    background-size: 100% 100%;
    width: 1.6rem;
    height: 1.2rem;
    position: absolute;
    top: .5rem;
    right: -2.8rem;
    /* -webkit-transition: all .4s cubic-bezier(.35, 1, .33, 1);
    transition: all .4s cubic-bezier(.35, 1, .33, 1) */
}
.link-arrow:hover:after {
    right: -3.5rem;
}
.link-arrow.link-arrow-white:after {
    background-size: 100% 100%
}
.link-arrow-hover:after {
    right: -3.5rem;
}
.link {
    display: inline-block;
    position: relative;
    border: none;
    padding-bottom: .4rem;
    text-transform: uppercase;
    font-weight: 200;
    font-size: 2rem;
}
.link:active,
.link:focus,
.link:hover {
    outline: 0
}
.link:hover {
    color: #484848;
}
.link:hover:before {
    width: 100%
}
.link-theme:before,
.link-external:before {
    background: var(--yellow)
}
.nav-main .scroll.active {
    color: #284664;
    font-weight: 600;
    border-bottom: 4px solid var(--yellow);
}

.tools {
    display: inline;
}
.tools img {
    width: 22%;
    margin-right: 10px;
}
.tools img:last-of-type {
    margin-right: 0;
}

@media only screen and (min-width:250px) {
    .container {
        width: 92%;
    }
    h1 {
        font-size: 5rem;
        line-height: 5.3rem;
        margin-bottom: 2rem !important;
    }
    h2 {
        font-size: 2.2rem;
        margin-bottom: 3rem !important;
    }
}

@media only screen and (min-width:768px) {
    h1 {
        font-size: 7rem;
        line-height: 7.3rem;
    }
    h2 {
        font-size: 2.8rem;
    }
    .footer {
        padding: 7rem 0;
    }
    .footer ul {
        margin-top: 1.5rem;
    }
    .footer ul li {
        margin: 0 0 1rem 1rem;
	list-style: none;
    }
    .footer .foot-content-left {
        float: left;
    }
    .footer .foot-content {
        float: right
    }
}
@media only screen and (min-width:992px) {
    h1 {
        font-size: 7rem;
    }  h2 {
        font-size: 2.8rem;
    }
}
@media only screen and (min-width:1200px) {
    h1 {
        font-size: 8rem;
    }
    h2 {
        font-size: 4rem;
    }
}

@media (min-width:1400px) {
    h2 {
        font-size: 4.5rem;
    }
    p, h3 {
        font-size: 2.3rem !important;
        line-height: 3.1rem !important;
    }
    #one p {
        font-size: 2.2rem !important;
        line-height: 3.2rem !important;
    }
    #one h3 span {
        font-size: 4.5rem !important;
        line-height: 4.7rem !important;
    }
    body:not(.case-study) #one h3 {
        font-size: 3.3rem !important;
        line-height: 3.6rem !important;
    }
}

@media only screen and (min-width: 1600px) {
    h2 {
        font-size: 4.5rem;
    }
}

.header {
    position: fixed;
    width: calc(100% - 3rem);
    padding: 1rem 1.5rem 0 1.5rem;
    z-index: 999;
    height: 60px;
    box-shadow: rgb(50 50 93 / 25%) 0px 6px 12px -2px, rgb(0 0 0 / 30%) 0px 3px 7px -3px;
}
.header ul {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
}
.header .logo span {
    float: right;
    margin-left: 5px;
    font-weight: 100;
    font-size: 3rem;
    color: #284664;
    letter-spacing: -1px;
    font-family: 'Playfair Display', serif;
    margin-top: 0;
}
.header .logo {
    float: left;
    font-size: 2em;
    text-decoration: none;
    font-family: 'Playfair Display', serif;
    color: var(--yellow);
}
.recommendation {
    background-color: var(--white);
}
.recommendation .quoteText {
    color:var(--dark-teal);
}
/* header bg colors on scroll */
.bg-transparent {
    background-color: transparent;
}
.bg-solid {
    background-color: var(--light-white);
}
.header.bg-solid .logo,
.bg-solid p,
.bg-solid h3 {
    color: #113754;
}
/* menu */
/* [ON BIG SCREEN] */
/* (A) WRAPPER */
#hamnav {
  width: 100%;
}

/* (B) HORIZONTAL MENU ITEMS */
#hamitems { display: flex; list-style: none; list-style-type: none; float: right}
#hamitems a {
  flex-grow: 1;
  flex-basis: 0;
  padding: 10px 6px;
  color: #444;
  text-decoration: none;
  text-align: right;
  MARGIN-RIGHT: 9px;
}
#hamitems a:hover {
  text-decoration: underline;
}
/* (C) HIDE HAMBURGER */
#hamnav label, #hamburger { display: none; }
/* [ON SMALL SCREENS] */
@media screen and (max-width: 768px){
  /* (A) BREAK INTO VERTICAL MENU */
  #hamitems a {
    box-sizing: border-box;
    display: block;
    width: 100%;
    border-bottom: 1px solid #d8d8d8;
    list-style: none;
    list-style-type: none;
    text-align: left;
    	padding: 20px 0 20px 30px;
  }

  /* (B) SHOW HAMBURGER ICON */
  #hamnav label:before {
    content: "☰";
  }
  #hamnav label{
    display: inline-block;
    color: white;
    background: var(--red);
    font-style: normal;
    font-size: 1.2em;
    width:50px; height:42px;
    float: right;
    margin-right: 40px;
    margin-bottom: 9px;
    display: block;
    text-align: center;
    padding-top:8px;
  }

  /* (C) TOGGLE SHOW/HIDE MENU */
  #hamitems { display: none; }
  #hamnav input:checked ~ #hamitems {
    display: block;
  	width: 100%;
  	background: #fff;
  	overflow: auto;
  	height: auto;
    float: none;
    	margin-left: -20px;
      box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
  }
  #hamnav input:checked ~ label:before {
    content: "⤫"; /*╳*/
  }
  .hamburger-icon:hover {
    cursor: pointer;
  }
}

/* section */

.section {
    overflow: hidden;
    margin: auto;
    max-width: 1400px;
}
.section a {
    position: relative;
    float: left;
    width: 100%;
}
.section a img {
    width: 100%;
    display: block;
}
.section a span {
    color: #fff;
    position: absolute;
    left: 5%;
    bottom: 5%;
    font-size: 2em;
    text-shadow: 1px 1px 0 #000;
}
.section-split a span {
    display: none;
}
.section-split a:hover span {
    display: block;
}
/* chevron */
.chevron::before {
    border-style: solid;
    border-width: 0.25em 0.25em 0 0;
    content: '';
    display: inline-block;
    height: 2rem;
    position: relative;
    width: 2rem;
}
.chevron.right:before {
    left: 0;
    transform: rotate(45deg);
}
.chevron.bottom:before {
    top: 0;
    transform: rotate(135deg);
}
.chevron.left:before {
    left: 0.25em;
    transform: rotate(-135deg);
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation: fadeIn 1s ease;
}  @keyframes fadeIn {
    0% {
        background:rgba(239, 239, 239, 0);
    }      100% {
        background:rgba(239, 239, 239, 1);
    }
}  @-webkit-keyframes fadeIn {
    0% {
        background:rgba(239, 239, 239, 0);
    }      100% {
        background:rgba(239, 239, 239, 1);
    }
}
.fadeIn * {
    -webkit-animation-name: fadeIn;
    animation: fadeIn 1s ease;
}  @keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}  @-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}


    /* header nav */
    .header li a {
        padding: 1.2rem 0 0 0;
    }
    .header .menu {
        clear: none;
        max-height: none;
        grid-row-gap: unset;
        padding-top: 0;
        grid-template-columns: auto;
        justify-content: end;
        grid-column-gap: 2rem;
    }
    .header .menu-icon {
        display: none;
    }


/* @media (min-width: 768px) {
    .section-split a {
        width: 50%;
    }
} */

#three {
    padding: 6rem 0;
}

.footer {
    padding: 4rem 0;
    background: #000;
}
.footer .container {
    position: relative;
}
.footer li,
.footer li a {
    font-size: 1.4rem;
    color: #888;
    margin-bottom: 1.5rem;
}
.footer ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    margin-top: 1.5rem;
}


@media (max-width: 874px) {
    .quoteText {
        max-width: 350px;
    }
    .intro {
        overflow: hidden;
    }
    .intro h1 br {
        display: block !important;
    }
    .header {
        background-color: var(--light-white);
        height: 62px;
    }
    .header .menu-btn:checked ~ .menu {
        max-height: 36.4rem;
        background-color: var(--light-white);
        padding: 0 0 3rem 0;
        padding-top: 1rem;
        width: 101vw;
        margin-left: -2rem;
    }

    .header li a:active::before {
        content:"";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 0.5em;
        border-top: 1px solid black;
        z-index: -1;
    }
    .link {
        text-align: left;
        padding-left: 3rem;
    }
    .header .logo {
        color: #000;
        font-size: 2.5rem;
    }
    .header .menu-icon {
        padding: 2.5rem ​0 1.8rem ;
    }
}
@media (max-width: 725px) {
    article.container h2:first-of-type {
        line-height: 3rem;
    }
    article.container h2:first-of-type span {
        font-size: 2.1rem;
    }
    #one h3 {
        font-size: 2rem !important;
    line-height: 2.4rem !important;
    }
    #one h3 span {
        font-size: 2.75rem;
        line-height: 3rem;
    }
    .curve {
        margin-right: 20px;
    }
    /* .responsive-thumbnails {
        display: none;
    } */
}
@media (max-width: 767px) and (min-height: 0) and (max-height: 600px) {
    .intro .foreground {
        width: 250% !important;
        height: auto !important;
    }
}

@media (max-width: 650px) {
  .lists .list {
    float: none !important;
    overflow: auto;
  }
  .lists .list h3{
    margin-bottom: 12px !important;
  }
  .lists .list h3:last-of-type{
    margin-top: 40px !important;
  }
  .lists .list:first-of-type {
    margin-right: 0 !important;
  }
    .intro article {
        padding-top: 5rem;
    }
    .block-650 {
        width: 10rem;
    }
    #one {
        padding-top: 2rem;
    }
    body.case-study #one h3 span {
        font-size: 2.4rem !important;
        line-height: 2.8rem !important;
    }
   body.home #one h3 span {
        font-size: 3.4rem !important;
	line-height: 3.6rem !important;
    }
}

/* #one hello */
#one .the-content {
    height: 100%;
}
#one h3 {
    color: #444;
    margin-top: 0;
    font-weight: 400;
    font-size: 24px;
    font-family: 'Nunito', sans-serif;
}
#one h3 span {
    font-size: 3.3rem;
    line-height: 3.6rem;
    display: block;
    margin-bottom: 1rem;
    color: var(--yellow);
    font-weight: 600;
    text-transform: capitalize;
    font-family: 'Playfair Display', serif;
}
#one h3:not(:first-of-type) {
    margin-bottom: 1rem;
    color: #444;
}
@media (min-width: 1000px) {
    #one p, #one ul li {
        font-size: 2.2rem;
        line-height: 3.2rem;
        font-weight: 200;
    }
}

/* #two Experience */
#include-two{
    background: #fff;
    padding-top: 4rem;
}

#two {
    padding: 10px 0 4rem 0;
    display: grid;
    position: relative;
}
@media (max-width: 776px) {
    /* #two Experience */
    #include-two{
        padding-top: 0;
    }
}






@media (max-width: 650px) {
    .header .logo span {
        font-size: 2.8rem;
        padding-top: .7rem;
    }
}

.container#one {
    padding-top: 8rem !important;
}
body.case-study .container#one {
    height: auto !important;

}
.container#one .proto {
    width: 1100px;
    -webkit-filter: drop-shadow(-1rem 1rem 10px rgb(20 20 20 / 7%));
    filter: drop-shadow(-1rem 1rem 10px rgb(20 20 20 / 7%));
}
.image-right {
    float:right;
    max-width: 440px;
}
body.home .image-right {
    margin-left: 3rem;
    margin-bottom: -15vh;
}
@media (min-width: 1200px) {
    .container#one {
        width: 80% !important;
    }
    article.container h2:first-of-type span {
        font-size: 4.4rem !important;
    }
}

@media (min-width: 960px) {
    .container#one {
        width: 92%;
    }
    img.process-mobile {
        display: none;
    }
}


@media (min-width: 960px) and (max-width:1100px) {
    .responsive-thumbnails img {
        max-width: 5vw;
    }
}



@media (max-width: 959px) {
    img.process-mobile {
        display: block !important;
        width: 100%;
        height: auto;
        margin-top: 3em;
    }
    .container#one {
        padding-top: 4rem !important;
    }
    body:not(.case-study) .container#one .image-right img {
        display: none;
    }
    .container#one .proto {
        width: 600px !important;
    }
    /* body:not(.case-study) .container#one,
    body:not(.case-study) .container#two {
        padding-bottom: 4rem;
	padding-top: 4rem !important;
    } */
    .container#one .image-right {
        order: 2;
    }
    .the-content {
        margin: 0 auto !important;
    }
    .responsive-thumbnails img {
        max-width: 10vw;
    }
    .responsive-thumbnails li {
        margin-right: 6px;
    }
    blockquote,
    cite {
        max-width: 500px;
    }
}

@media (max-width: 700px) {
    .responsive-thumbnails img {
        max-width: 10vw;
        margin-right: -3px !important;
    }
    .responsive-thumbnails {
        margin-top: 1.5rem;
    }
    blockquote,
    cite {
        max-width: 92%;
        width: 100%;
        margin:0 auto;
        margin-bottom: 2rem;
        font-size: 1.8rem;
    }
    blockquote {
        margin-top: 2rem;
    }
    .responsive-thumbnails {
        display: none;
    }
}

/* super small screens */
@media (max-width: 349px) {
    .intro h1 {
        font-size: 4rem !important;
        line-height: 4.3rem !important;
        margin-bottom: 2rem !important;
    }
    h3 {
        font-size: 1.7rem;
        line-height: 2.6rem;
    }
    .download-resume {
        font-size: 1.5rem !important;
    }
    #one h3 span {
        font-size: 2.9rem;
        line-height: 3.2rem;
    }
    .block-650 {
        display: none;
    }
    .download-resume {
        font-size: 1.4rem;
    }
    .header .logo span {
        font-size: 2.2rem;
        padding-top: 1rem;
    }
    .responsive-thumbnails img {
        max-width: 11vw;
    }
}

/* extra super small screens */
@media (max-width: 300px) {
    .responsive-thumbnails img {
        max-width: 9.5vw;
    }
}

.animate {
    animation-name: intro;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-delay: .1s;
  }
  @keyframes intro {
    from {
      transform: translateY(200px);
      opacity: 0;
    }
    to {
      height: 300px;
      opacity: 1;
    }
}

.hideme {
    opacity: 0;
}
.animate-port {
    -webkit-animation: slide-top .75s cubic-bezier(0.445, 0.050, 0.550, 0.950) both;
	animation: slide-top .75s cubic-bezier(0.445, 0.050, 0.550, 0.950) both;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    animation-delay: .25s;
}
@-webkit-keyframes slide-top {
    0% {
      -webkit-transform: translateY(150px);
              transform: translateY(150px);
              opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
              opacity: 1;
    }
}
@keyframes slide-top {
    0% {
      -webkit-transform: translateY(150px);
              transform: translateY(150px);
              opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
              opacity: 1;
    }
}

.animate-port.proto {
    -webkit-animation: slide-top-img .65s cubic-bezier(0.445, 0.050, 0.550, 0.950) both;
	animation: slide-top-img .65s cubic-bezier(0.445, 0.050, 0.550, 0.950) both;
    margin-top: 0 !important;
    animation-delay: .5s;
}
@-webkit-keyframes slide-top-img {
    0% {
      -webkit-transform: translateY(150);
              transform: translateY(150);
              opacity: 0;
    }
    100% {
      -webkit-transform: translateY(-150px);
              transform: translateY(-150px);
              opacity: 1;
    }
}
@keyframes slide-top-img {
    0% {
      -webkit-transform: translateY(150);
              transform: translateY(150);
              opacity: 0;
    }
    100% {
      -webkit-transform: translateY(-150px);
              transform: translateY(-150px);
              opacity: 1;
    }
}

.animate-port.the-content {
    -webkit-animation: slide-top-this .5s cubic-bezier(0.445, 0.050, 0.550, 0.950) both;
	animation: slide-top-this .5s cubic-bezier(0.445, 0.050, 0.550, 0.950) both;
    margin-top: 0 !important;
    animation-delay: .5;
}
@-webkit-keyframes slide-top-this {
    0% {
      -webkit-transform: translateY(150px);
              transform: translateY(150px);
              opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
              opacity: 1;
    }
}
@keyframes slide-top-this {
    0% {
      -webkit-transform: translateY(150px);
              transform: translateY(150px);
              opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
              opacity: 1;
    }
}


/* Experience Chart*/
.chart {
    display: table;
    table-layout: fixed;
    max-width: 100%;
    height: 250px;
    margin: 0 auto;
    background-image: linear-gradient(to top, rgba(160, 179, 188, 0.2) 2%, rgba(0, 0, 0, 0) 2%);
    background-size: 100% 50px;
    background-position: left top;
    margin-bottom: 10rem;
    width: 100%;
    margin-top: -4rem;
  }
  .chart li {
    position: relative;
    display: table-cell;
    vertical-align: bottom;
    height: 200px;
  }
  .chart span.play {
    margin: 0 1em;
    display: block;
    background: rgba(209, 236, 250, 0.75);
    animation: draw 1s ease-in-out;
  }
  .chart span:before {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    padding: 5px 1em 0;
    display: block;
    text-align: center;
    content: attr(title);
    word-wrap: break-word;
    color: var(--white);
  }

  @keyframes draw {
    0% {
      height: 0;
    }
  }
@media (max-width: 1000px) {
    .chart span {
        font-size: 1.4rem;
      }
}
@media (max-width: 750px) {
    .chart {
        display: none;
    }
}
















.scrolltop-wrap {

/* display: none; */

    z-index: 99999999999;
    box-sizing: border-box;
    position: absolute;
    top: 12rem;
    right: 2rem;
    bottom: 0;
    pointer-events: none;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}
.scrolltop-wrap #scrolltop-bg {
  fill: #3ea4f5;
}
.scrolltop-wrap #scrolltop-arrow {
  fill: white;
}
.scrolltop-wrap a:hover #scrolltop-bg {
  fill: #68b7f7;
}
.scrolltop-wrap a:hover #scrolltop-arrow {
  fill: white;
}
.scrolltop-wrap a {
  position: fixed;
  top: -5rem;
  right: 2rem;
  width: 4rem;
  height: 4rem;
  transform: translateY(100vh);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: inline-block;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: all;
  outline: none;
  overflow: hidden;
}
.scrolltop-wrap a svg {
  display: block;
  border-radius: 50%;
  width: 100%;
  height: 100%;
}
.scrolltop-wrap a #scrolltop-arrow {
  transform: scale(0.66);
  transform-origin: center;
}

@media (max-width: 800px) {
      .scrolltop-wrap a {
        top: -12rem;
        width: 5rem;
        height: 5rem;
        margin-bottom: 0;
      }
      .quoteText {
        font-size: 22px;
        line-height: 26px;
    }
}



@media (max-height: 570px){
    .intro .fixed-intro {
        padding-top: 3rem;
    }
    .intro h1 {
        font-size: 2.8rem !important;
        line-height: 2.8rem !important;
        margin-bottom: 2.8rem !important;
    }
    .intro .logo br {
        display: none !important;
    }
    .intro h2 {
        margin-top: -2rem !important;
    }
    .quoteText {
        font-size: 14px !important;
        line-height: 19px !important;
        margin-top: -2rem !important;
    }
}

@media (max-height: 570px) and (min-width: 0) and (max-width: 1000px){
    .intro .fixed-intro {
        padding-top: 2rem !important;
        margin-top: 0 !important;
    }
}

@media (max-height: 350px) and (min-width: 0) and (max-width: 1000px){
    .intro .fixed-intro {
        padding-top: 0 !important;
        margin-top: -2rem !important;
    }
}


/* chromebook (ish)*/
@media (max-width : 1920px) and (max-height : 1080px) {
    .intro .foreground {
        height: auto;
        width: 100% !important;
        margin-bottom: -4rem;
        /* here bottom: -4rem !important; */
    }
}

/* ipad portrait */
@media (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
    .intro .foreground {
        height: auto;
        width: 300% !important;
    }
}



@media (max-width: 800px) and (min-width: 1280px){
    .intro .foreground {
        height: auto;
        width: 300% !important;
    }
}

@media (max-width: 540px) and (min-width: 400px){
    .intro .foreground {
        height: auto;
        width: 240% !important;
        margin-left: -80%;
    }
}

@media (min-width: 1000px) and (min-height: 900px) {
    .intro .fixed-intro {
        margin-top: 10rem;
    }
}


@media (max-width: 399px){
    .intro .foreground {
        height: auto;
        width: 233% !important;
	left: -100vw;
    }
    .intro h1 {
        font-size: 5rem;
        line-height: 5.3rem;
    }
    .intro h2 {
        font-size: 2.4rem;
        line-height: 2.8rem;
    }
    .intro h2 br {
        display: block !important;
    }
    .intro h2 span {
        display:none !important;
    }
}

@media (min-device-width : 600px) and (max-device-height : 2400px) and (orientation : portrait) {
    .intro .fixed-intro {
        margin-top: 10vh;
    }
    .intro .foreground {
        height: auto;
        width: 200% !important;
    }
}

@media (max-width: 399px) and (max-device-height : 700px) and (orientation : portrait){
    .intro .foreground {
        height: auto;
        width: 245% !important;
        left: -100vw;
    }
}

/* landscape */
@media (min-device-width : 768px) and (orientation : landscape) {
    .intro .fixed-intro {
        padding-top: 10vh;
    }
}
@media (min-device-width : 1600px) and (orientation : landscape) {
    .intro .fixed-intro {
        padding-top: 6vh !important;
    }
}



/* case study */
body.case-study .container#one {
    overflow: auto !important;
}
body.case-study P,
body.case-study ul li  {
    line-height: 2.4rem !important;
    FONT-SIZE: 1.8rem;
}
body.case-study .menu-icon {
    display: none !important;
}
body.case-study .container#one {
    width: 96% !important;
}
body.case-study .header {
    background-color: var(--light-white);
    height: 63px;
}
body.case-study:not(.no-header) .work {
    padding-top: 75px;
}
body.case-study #one h3 span {
    color: var(--yellow);
    margin-bottom: 0;
}
body.case-study p {
    color: white !important;
}
body.case-study #one .prototype p {
    flex: 1 1 0;
    padding-right: 2rem;
    width: max-content;
}
body.case-study #one .prototype p:last-of-type {
    padding-right: 0;
}
body.case-study #one .prototype p span {
    display: block;
    margin-top: .5rem;
}
body.case-study a {
    color: rgb(181, 207, 238) !important;
    text-decoration: underline !important;
}
body.case-study h2 {
    font-size: 22px;
    line-height: 27px;
    margin-bottom: 1rem !important;
    text-transform: uppercase;
}
body.case-study h3:not(.title) {
    color: white !important;
    margin-bottom: 1rem !important;
    font-family: 'Nunito' !important;
}
body.case-study .title {
    text-transform: uppercase;
    color: var(--light-white) !important;
    font-size: 16px !important;
}
body.case-study .title-two {
    color: var(--light-white) !important;
}
body.case-study h4 {
    color: #7F9AB4 !important;
    font-family: 'Nunito', sans-serif;
    font-weight: 400;
    font-size: 2.5rem;
    margin-bottom: 1rem !important;
    margin-top: 6rem !important;
}
body.case-study .container#one .proto {
    max-width: 45vw;
    -webkit-filter: drop-shadow(0px 5px 25px rgb(0 0 0 / 40%));
    filter: drop-shadow(0px 5px 25px rgb(0 0 0 / 40%));
    margin-left: 30px;
}
body.case-study #one h3 span {
    display: block;
    margin-bottom: 16px;
}
body.case-study .the-content {
    max-width: 650px;
}
body.case-study .image-right {
    max-width: none;
    display: grid;
    padding-left: 40px;
}
body.case-study .image-right > div {
    margin-top: 10px;
    width: 45vw;
}
body.case-study .image-right > div i {
    margin-top: 20px;
}
body.case-study .image-right caption {
    font-size: 13px !important;
    line-height: 16px !important;
}
body.case-study .image-right > div span {
    color: var(--yellow) !important;
    font-weight: 400 !important;
}
body.case-study .image-right h2 {
    font-size: 2rem;
    font-weight: 600;
}
body.case-study .image-right h2 span {
    text-transform: none !important;
    color: snow;
    font-size: 1.9rem !important;
}
body.case-study .container#one .proto:not(:first-of-type) {
    margin-top: 3rem;
}
body.case-study hr {
    border: 0;
    height: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    margin-bottom: 4rem;
}
.case-deets {
    clear: left;
    margin-bottom: 6rem;
    overflow: auto;
}
.case-deets::before {
    float: left;
    margin-right: 10px;
    font-size: 20px;
}
.case-deets.uno::before {
    content: '1.';
}
.case-deets.dos::before {
    content: '2.';
}
.case-deets.tres::before {
    content: '3.';
}
.case-deets.quatro::before {
    content: '4.';
}
.case-deets.cinco::before {
    content: '5.';
}
.case-deets.seis::before {
    content: '6.';
}
.case-deets.siete::before {
    content: '7.';
}
.case-deets.ocho::before {
    content: '8.';
}
.case-deets img {
    max-width: 350px;
}
@media (min-width:1000px) {
    body.case-study p,
    body.case-study ul li  {
        font-size: 2.1rem !important;
        line-height: unset !important;
    }
}
.case-deets img {
    float: left;
    margin-right: 2rem;
}
@media (max-width: 959px) {
    body.case-study hr {
        margin-bottom: 3rem !important;
    }
    .case-intro {
        width: calc(100vw - 40px);
    }
    body.case-study .image-right > h2 {
        margin-left: 0px !important;
        margin-top: -10px;
        width: 100% !important;
        margin: 1rem auto 2rem !important;
        max-width: 550px;
    }
    body.case-study .container#one .proto {
        width: 100% !important;
        margin: 3rem auto 0 !important;
        max-width: 550px;
    }
    body.case-study .container#one .proto:first-of-type {
        margin: 0 auto !important;
    }
    body.case-study .image-right {
        padding-left: 0 !important;
    }
    body.case-study .image-right > div {
        width: 100% !important;
        margin: 1.25rem auto 0 ;
        max-width: 550px;
    }
    body.case-study .image-right {
        float: none !important;
        max-width: unset !important;
        order: 0 !important;
        padding-right: 20px !important;
    }
    body.case-study .case-deets p {
        /* width: calc(100vw - 60px) !important; */
    }
    body.case-study .prototype {
        margin-top: -2rem !important;
    }
}
@media (max-width: 650px) {
    .case-deets p {
        clear: both;
        padding-top: 1rem;
    }
    .case-deets img {
        float: none !important;
        margin-right: 0 !important;
        max-width: 78vw !important;
    }
}


/* case study nav */
body.case-study .container#one .inline-nums span {
    float: right;
    padding-right: 20px;
}
body.case-study .container#one .inline-nums .inline-count li {
    display:inline;
}
body.case-study .container#one .inline-nums .inline-count li a {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border-radius: 4px;
    color: #fff;
    background-color: #507281;
    text-decoration: none !important;
}
body.case-study .container#one .inline-nums .inline-count {
    margin-top: -8px;
}
body.case-study .container#one .inline-nums .inline-count li a.active {
    background-color: var(--light-white);
    color: #333 !important;
    pointer-events: none;
   cursor: default;
}

body.light.case-study #include-one {
    background-color: #fff !important;
    background-image: none;
}

body.light.case-study #include-one *,
body.light.case-study #include-one p * {
    color: #000 !important;
}
body.light.case-study #include-one h4,
body.light.case-study #include-one h2 {
    color: #507281 !important;
}
body.case-study.light .prototype img {
    /* max-width: 215px; */
    box-shadow: none !important;
}
body.case-study .container#one .proto {
	-webkit-filter: drop-shadow(0px 5px 25px rgb(0 0 0 / 0%));
	filter: drop-shadow(0px 5px 25px rgb(0 0 0 / 0%));
    margin-left: 0 !important;
}
body.case-study.light .prototype a:hover img {
    opacity: .75 !important;
}
body.case-study .container#one .proto {
    margin-top: 12px;
}
.prototype img {
    background: #E5E5E5;
    padding: 6px;
    margin-top: 12px;
}
body.case-study.light h4 {
    font-weight: 900 !important;
    color: #000;
}
body.case-study ul {
    /* padding-left: 40px */
}
body.case-study ul li {
    font-weight: 200;
    margin-bottom: 1rem;
}
body.case-study.empathy footer {
    display: none;
}
body.case-study a:hover {
   opacity: 65%;
}
body.case-study.empathy .the-content {
    margin: 0 auto;
}
body.case-study.empathy .the-content > div:nth-child(even) {
    margin-top: 4rem !important;
}
body.case-study.empathy .prototype p a {
    color: var(--blue) !important;
    font-weight: 900;
}
body.case-study.empathy #one .case-intro,
body.case-study.empathy #one .title-two {
    max-width: 650px;
    margin: 0 auto;
}
@media (max-width: 959px) {
    body.case-study.empathy #one .case-intro,
    body.case-study.empathy #one .title-two {
        max-width: 100%;
        margin: 0 auto;
    }
    body.case-study.empathy .container#one {
        width: 93% !important;
    }
    body.case-study.empathy .the-content {
        max-width: 100% !important;
    }
    body.case-study.empathy .case-intro {
        width: 100%;
    }
    body.case-study .container#one .proto:first-of-type {
        margin: 0 !important;
    }
    body.case-study .container#one .proto {
        margin-top: 0 !important;
        max-width: calc(100% - 40px);
    }
}

.iframe-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
  }

  /* Then style the iframe to fit in the container div with full height and width */
  .responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }
