:root {
	--nav-back-border:#FFFFFF;	/*White*/
	--text-color-one:#003265; /*Navy*/
	--text-color-two:#FFFFFF; /*White*/
	--acent-one:#CC228E; /*Pink*/
	--acent-two:#F0F0F0; /*Light Grey*/
	--acent-three:#616161; /*Dark Grey*/
}


html {
    font-size: 100%
}

* {
    box-sizing: border-box;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}



#theme-toggle {
    font-weight: 700;
}

button#theme-toggle:focus {
    border: 2px solid var(--acent-one);
    outline: none;
}

a,body {
    color: var(--text-color-one);
}

body {
    font-size: 1.125rem;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    margin: 0;
    padding: 0;
}

a {
    text-decoration: underline;
    font-weight: 500
}

a:hover {
    cursor: pointer;
    text-decoration: none
}

button#toggle span {
    display: block;
    margin-top: -.2rem;
    font-size: 1rem
}

#theme-toggle img
{
	height:20px;
	padding: .2rem .2rem 0 .2rem;
	
}

* a:hover {
    background-color: var(--acent-one);
    color: var(--text-color-two);
}

* a:focus {
    outline: 0;
    background-color:  var(--acent-one);
    color: var(--text-color-two);
    padding: .2rem
}

.card-header:hover a>h2,.mejs-container *,a>h1:hover,a>h2:hover,a>h3:hover,a>h4:hover,a>h5:hover,a>h6:hover {
    color: var(--text-color-two);
}

.widget .social-icons-lists.show-icons-label li.social-icons-list-item a:focus,.widget .social-icons-lists.show-icons-label li.social-icons-list-item a:hover {
    background-color:  var(--acent-one);
    color: var(--text-color-two);
    border-radius: 20%
}

.card a {
    display: block
}

.card a:focus>h2 {
    color: var(--text-color-two);
}

.card a:hover, .card h2>a:hover {
    padding: .2rem
}

.card a:focus:hover>img,.card a:focus>img,.card a:hover>img,.content-case-study a.external:focus img,.content-case-study a.external:hover img, a.external:focus img, a.external:hover img  {
    filter: invert(1)
}

a.social-icon:focus,a.social-icon:hover {
    padding: .5rem
}

a.social-icon:focus>span.social-icons-list-label {
    color: var(--text-color-two);
    text-decoration: underline
}

.home .cards .card-header a {
    /*min-height: 45px;*/
	font-weight:bold;
	display:flex;
	padding-bottom:.5rem;
}

.ios .home .cards .card-header a {
    min-height: 45px;
	font-weight:bold;
	display:block;
	padding-bottom:.5rem;
}

.home .card-header img {
    margin-right: .833rem;
    display: inline;
    vertical-align: top;
}

@font-face {
    font-family:'Noe Display';font-style:normal;font-display:swap;font-weight:500;src:local('NoeDisplay-Medium'),url(../fonts/noe-display-medium.woff2) format('woff2'),url(../fonts/noe-display-medium.woff) format('woff')
}

h1,h2,h3,h4,h5,h6 {
    font-family: "Roboto"
}

.card a>h2,.card a>h3,.hero-right p a,.process-item a>h2,.process-item a>h3,.card h2>a,.card h3>a,.process-item h2>a,.process-item h3>a,h2 a{
    text-decoration: underline
}

footer {
    padding: 1.667rem;
    max-width: 55.556rem;
    margin: 0 auto;
    display: flex!important;
    justify-content: space-between
}

.container ol li,.container ul li {
    font-family: Roboto;
    letter-spacing: 0;
    line-height: 1.667rem
}

.sub-navigation {
    height: inherit;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.main-navigation h5 {
    position: absolute;
    left: 5rem;
    top: .167rem
}

.content-case-study p.historyLocationicon,.historyDate {
    line-height: 1rem;
    margin-top: .3rem
}

h3.historyHeading {
    margin-top: .2rem;
    margin-bottom: 0;
    font-size: 1.35rem
}

.content-case-study h2.panel-heading {
    margin-bottom: 1rem
}

.burger-container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column wrap
}

.logo {
    width: 3.778rem;
    min-height: 55px;
    position: absolute;
    padding: .25rem
}

.logo img {
    width: 95%;
    border-radius: 50%;
    margin-left: 4%;
    margin-top: 4%;
    border: 2px solid var(--acent-one);
}

.nav-toggle {
    align-self: flex-end;
    margin-left: auto;
    position: relative;
    width: 70px;
    height: 55px;
    float: right;
    background-color: var(--nav-back-border);
    padding: .25rem;
    outline: 0;
    border: 1px solid var(--acent-three);
}

.logo:hover,.main-navigation-link:hover {
    box-shadow: 0 2px .222rem 0 rgba(0,0,0,.12)
}

nav#nav-menu {
    border-top: 1px solid var(--acent-two);
    border-bottom: 1px solid var(--acent-two);
    width: 100%
}

nav#nav-menu ul {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-end
}

nav#nav-menu ul li {
    list-style: none;
    text-align: center;
    border-left: 1px solid var(--nav-back-border);
    border-right: 1px solid var(--nav-back-border);
    padding: .833rem
}

nav#nav-menu ul li:first-child {
    border-left: 1px solid var(--acent-two);
}

nav#nav-menu ul li a {
    text-decoration: none;
    color: var(--text-color-three);
    padding: .833rem;
    font-weight: 500
}

.nav-toggle:focus,a.logo:focus {
    border: 2px solid var(--acent-one);
    background: 0 0
}

.icons a:first-child {
    padding: .222rem .222rem .222rem 0
}

.icons a {
    padding: .222rem
}

article {
    border-bottom: 1px solid var(--acent-two);
    padding: 3.889rem 1.667rem
}

.case-studies,.hero,.process {
    max-width: 55.556rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto
}

.hero {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.case-studies,.process {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.subtitle {
    font-size: 1.556rem;
    font-weight: 300
}

.hero-left {
    width: 22.222rem
}

#home-right-image .hero-left,.hero-right {
    width: 27.778rem
}

#home-right-image .hero-right {
    width: 22.222rem
}

.case-study-item p,.hero-right p,.process-item p {
    font-size: .889rem;
    letter-spacing: 0;
    line-height: 1.8rem
}

.hero-right em {
    font-style: normal!important
}

.icons {
    width: 8.889rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify
}

.download-resume,.title {
    font-family: Roboto;
    letter-spacing: 0
}

.title {
    font-weight: 700;
    margin: 0;
    font-size: 2.444rem;
    line-height: .4rem
}

.process-item {
    max-width: 16.667rem;
    padding-top: 1.111rem
}

.card a,.card a>h2:hover,.card a>h3:hover,.process-item a,.process-item a>h2:hover,.process-item a>h3:hover, .card h2>a:hover,.card h3>a:hover,.process-item h2>a:hover,.process-item h3>a:hover {
    text-decoration: none
}

.process-item a img {
    vertical-align: bottom
}

.process-item h2,.process-item h3 {
    margin-left: .833rem;
    display: inline
}

.page .card h2,.page .card h3 {
    margin-left: .833rem;
    display: inline;
    vertical-align: top
}

.page-template-homeppage .card h2,.page-template-homeppage .card h3 {
    margin-left: 0;
}

.page-template-homeppage .card img {
    filter: invert(.1) sepia(1) saturate(5) hue-rotate(175deg)
}

.card h2.no-icon {
    margin-left: 0;
    display: block
}

.process-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.case-studies-wrapper,.item-header,.process-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.item-header {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin: 0;
    height: 1.944rem
}

.process-item h3 {
    font-size: 1.556rem;
    letter-spacing: 0
}

.case-studies-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.case-study-item {
    max-width: 16.667rem;
    margin-top: 2.5rem
}

.case-study-item h4,.results-content h2 {
    font-size: 1.333rem;
    font-weight: 300;
    margin: 0;
    line-height: 2.4rem
}

.case-study-item h5 {
    font-size: 1.111rem;
    font-weight: 700;
    margin: 0;
    line-height: .3rem;
    text-transform: uppercase
}

.read-more {
    display: inline-block;
    width: 100%;
    border: solid 2px var(--acent-two);
    padding: 1rem 0;
    text-align: center;
    font-weight: 500;
    -webkit-transition: .2s ease-out;
    transition: .2s ease-out;
    border-radius: .111rem
}

.main-case-study {
    max-width: 55.556rem;
    display: block;
    margin: 0 auto;
    margin-top: 1.667rem
}

.main-case-study ul li a {
    line-height: 1.8
}

.results-content {
    max-width: 50rem;
    text-align: center;
    display: block;
    margin: 0 auto
}

.results-content img {
    margin-top: 2.222rem;
    max-width: 3.889rem;
    border-radius: 100%
}

.results-content h1 {
    font-size: 1.444rem;
    line-height: 1.6rem;
    font-weight: 300
}

.results-content h2 {
    font-size: 1.389rem;
    line-height: 1rem;
    margin-top: .3rem
}

.results-content h3 {
    margin: 0;
    margin-top: .4rem;
    padding-bottom: 1.944rem
}

.card>a>img,.case-study-item img,.main-case-study img {
    max-width: 100%
}

.main-case-study .title {
    line-height: 1rem;
    margin-top: 1.111rem
}

.single .title {
    line-height: 3rem
}

.main-case-study .subtitle,.main-case-study .summary {
    font-family: Roboto;
    font-weight: 700;
    font-size: 1.222rem;
    letter-spacing: 0
}

.main-case-study .summary {
    font-weight: 300;
    font-size: 1.444rem;
    line-height: 2.167rem
}

.case-details {
    margin: 0;
    padding: 0;
    display: flex;
    max-width: 38.889rem;
    list-style-type: none;
    justify-content: space-between;
    flex-wrap: wrap
}

.case-links {
    margin-top: 1.444rem;
    padding-bottom: 1.667rem
}

.link-div {
    display: inline-block;
    padding: .833rem .833rem .833rem 0
}

.case-links img {
    position: relative;
    top: .161rem;
    padding-right: .444rem
}

.case-detail-link {
    padding: .833rem 1.667rem;
    border-radius: .111rem;
    background: var(--acent-two);
    margin-right: 1rem
}

.content-case-study {
    max-width: 55.556rem;
    display: block;
    margin: 0 auto
}

.content-case-study ol li,.content-case-study p,.content-case-study ul li {
    font-family: Roboto;
    font-size: 1.056rem;
    letter-spacing: 0;
    line-height: 1.667rem
}

.content-case-study img {
    max-width: 100%;
    margin-top: 1.111rem
}

.content-case-study a {
    text-decoration: underline
}

.content-case-study a.external img, a.external img {
    width: 3%;
    margin-top: 0;
    margin-left: .5rem;
    filter: invert(.16) sepia(1) saturate(5) hue-rotate(175deg)
}

footer a.external img {
    width: 2.5%;
}

article.content-case-study {
    padding-bottom: 1.944rem;
    padding-top: 1.944rem
}

div.content-case-study {
    padding: 1.944rem 1.667rem
}

.content-case-study h2 {
    margin-bottom: 0
}

.content-case-study h2 a,.content-case-study h2 a:hover {
    text-decoration: none;
    padding-bottom: .167rem;
    border-bottom: 1px solid;
    line-height: 1.8
}

.videos .card h2,.videos .card h3 {
    text-decoration: none;
    padding-bottom: .167rem;
    margin-bottom: 0;
    margin-left: 0
}

.content-case-study h2 a:hover {
    border-bottom: none
}

.content-case-study h1 {
    margin: 0;
    margin-top: 2.4rem
}

.content-case-study p.details,.videos .card p.details {
    font-size: .8rem;
    display: block;
    margin-top: 0;
    margin-bottom: .25rem
}

.content-case-study h1~p.details {
    font-size: .8rem;
    margin-top: .8rem;
    display: block;
    margin-bottom: .25rem
}

.card-header {
    min-height: 20%
}

.videos .card .card-header {
    min-height: 25%
}

.case-details-item {
    padding-right: 1.111rem
}

.case-details-item strong {
    font-weight: 700
}

.case-details-item p {
    line-height: 1.8rem;
    font-size: .889rem
}

.active {
    transition: .2s ease-in-out
}

.cards {
    display: flex;
    flex-wrap: wrap
}

.card {
    flex: 1 0 27.778rem;
    box-sizing: border-box;
    margin: 1rem .25rem;
    vertical-align: top
}

.videos .card {
    padding-bottom: 1.5rem
}

.centered {
    margin: 0 auto;
    padding: 0 1rem;
    padding-bottom: 3.889rem
}

.page-numbers {
    justify-content: center;
    margin: 10px auto;
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    list-style-type: none;
    width: 24rem
}

.page-numbers>li:not(:last-child) {
    padding-right: 10px
}

.page-numbers>li:not(:first-child) {
    padding-left: 10px
}

.page-numbers>a:not(:last-child) span,.page-numbers>span {
    padding-right: 20px
}

section.first-section {
    padding-top: 3.5rem;
    border-bottom: 1px solid var(--acent-two);
}

.page-template-portfolio section.first-section {
    padding-top: 1rem;
    border-bottom: none
}

.blog section.container,.page section.container, .archive section.container {
    border-top: 1px solid var(--acent-two);
    border-bottom: 1px solid var(--acent-two);
}

.blog article:last-of-type, .archive article:last-of-type {
    border-bottom: 0
}

ul.page-numbers {
    border: 1px solid var(--acent-two);
}

@media (max-width:599px) {
    .card {
        max-width: calc(100% - 1em)
    }

 
    #home-right-image .hero-left {
        width: 22.222rem;
        padding-left: 1em
    }
	
	#home-right-image .hero-right {
    width: 22.222rem;
	text-align:center;
	margin:0 auto;
}

    .hero {
        display: block
    }
    .burger-container {
        min-height: 66px;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-flow: column wrap
    }

    .logo {
        width: 3.778rem;
        min-height: 55px;
        position: absolute;
        padding: .25rem
    }

    #about,nav#nav-menu {
        display: none
    }

    #process-link {
        display: none!important
    }

    .process-item {
        max-width: 100%
    }

    .nav-toggle,nav#nav-menu ul,nav#nav-menu ul li a,nav#nav-menu.active {
        display: block
    }
	
	#theme-toggle
	{
		padding:.833rem;
	}

    .case-details {
        justify-content: flex-start
    }

    .download-resume {
        display: block;
        width: 100%
    }

    .case-details-item {
        padding-right: 1.389rem!important
    }

    nav#nav-menu ul li {
        display: block;
        border-bottom: 1px solid var(--acent-two);
        text-align: left;
        padding: 0
    }

    nav#nav-menu ul li a:focus,nav#nav-menu ul li a:hover {
        color: var(--text-color-two);
    }

    .card.widget {
        font-size: 1.056rem;
        padding: 0;
        line-height: 1.667rem;
        border: 0
    }

    .card.widget h2 {
        margin-left: 0
    }

    .card.widget ul.good_old_twitter_widget {
        list-style: none;
        padding: 0
    }

    .card.widget ul.good_old_twitter_widget li {
        padding-bottom: 1em
    }

    .card.widget ul.good_old_twitter_widget li>a {
        text-decoration: underline;
        display: inline-block
    }
	.card.widget ul.good_old_twitter_widget li>a:hover
	{
		text-decoration:none;
	}

    .widget .social-icons-lists.show-icons-label li.social-icons-list-item {
        margin-top: 1rem
    }

    .widget .social-icons-lists.show-icons-label li.social-icons-list-item a {
        display: inline-block
    }

    section.first-section {
        padding-top: 2.5rem
    }
	
	a.external img, .content-case-study a.external img
	{
		width: 4.5%;
	}	
	
	footer a.external img {
    width: 4.5%;
	}
}

@media (min-width:600px) {
    .burger-container {
        min-height: 66px;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-flow: column wrap
    }

    .logo {
        border: 1px solid var(--acent-two);
    }

    .card {
        max-width: calc(80% - 1em)
    }
	
	.ios .card {
        max-width: calc(34% - 1em)
    }
 

    .hero {
        display: flex
    }

    .case-study-item {
        max-width: 100%;
        margin-top: 2.222rem
    }

    .case-study-item:first-of-type {
        margin-top: .722rem
    }

    .hi,.title {
        font-size: 2.222rem
    }

    .process-item h3,.subtitle {
        font-size: 1.444rem
    }

    section {
        padding-top: 3.333rem;
        padding-bottom: 3.333rem
    }

    #scroll-element {
        padding-top: 5.556rem!important
    }

    .link-div,.nav-toggle,nav#nav-menu ul,nav#nav-menu ul li a,nav#nav-menu.active {
        display: block
    }

    #ctf .ctf-retweet-text,nav#nav-menu {
        display: none
    }

    nav#nav-menu ul li {
        display: block;
        border-bottom: 1px solid var(--acent-two);
        text-align: left;
        padding: 0
    }

    .case-detail-link {
        display: block;
        width: 100%;
        padding: 1.389rem;
        text-align: center
    }

    .centered {
        max-width: 52em
    }

    #ctf,.card.widget {
        font-size: .889rem
    }

    .card.widget {
        padding: 0;
        border: 0
    }

    .card.widget h2 {
        margin-left: 0
    }

    .card.widget ul.good_old_twitter_widget {
        list-style: none;
        padding: 0
    }

    .card.widget ul.good_old_twitter_widget li {
        padding-bottom: 1em
    }

    .card.widget ul.good_old_twitter_widget li>a {
        text-decoration: underline;
        display: inline-block
    }
	
	.card.widget ul.good_old_twitter_widget li>a:hover
	{
		text-decoration:none;
	}


    .widget .social-icons-lists.show-icons-label li.social-icons-list-item {
        margin-top: 1rem
    }

    .widget .social-icons-lists.show-icons-label li.social-icons-list-item a {
        display: inline-block
    }

	#theme-toggle
	{
		padding:.833rem;
	}	
}

@media (min-width:750px)
{
    .card {
        max-width: calc(29.8% - 1em)
    }

	.videos .card {
    max-width: calc(50% - 1em);
	}
}


/* iPads (portrait) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
.ios .home section.first-section {
		padding-top: 3.5rem;
		border-bottom: 1px solid var(--acent-two);
		margin: 0 auto;
		padding-left: 8rem;
	}
	.ios .home .card {
        max-width: calc(34% - 1em)
    }
	.ios .home .card-header img
	{
		margin-right: .5rem;
	}
	.ios .videos .card {
    max-width: calc(50% - 1em);
	}
}

/* iPads (landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
	
	.ios .videos .card {
    max-width: calc(50% - 1em);
	}
}

@media (min-width:900px) {
    .burger-container {
        min-height: 66px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-flow: column wrap
    }

    .logo {
        border: 0
    }

    .hero-right {
        width: 100%;
        margin-top: 1.667rem
    }

    .process-item {
        max-width: 45%
    }

    .nav-toggle {
        display: none
    }

    .hero-left {
        margin: 0 auto;
        text-align: left
    }

    .hero-left .icons {
        margin: 0 auto;
        justify-content: center
    }

    nav#nav-menu {
        display: block;
        border-top: none;
        border-bottom: none
    }

    nav#nav-menu ul {
        display: flex
    }

    nav#nav-menu ul li {
        text-align: center;
        border-left: none;
        border-right: none;
        border-bottom: none;
        padding: .833rem
    }

    nav#nav-menu ul li a {
        display: inline
    }

    nav#nav-menu ul li:first-child {
        border-left: none
    }

    .main-navigation-link:hover {
        box-shadow: none
    }

    nav#nav-menu ul li a:hover {
        outline: 0;
        background-color: var(--acent-one);
        color: var(--text-color-two);
        border-radius: 15px
    }

    nav#nav-menu ul li a:focus {
        color: var(--text-color-two);
        border-radius: 15px
    }
		#theme-toggle
	{
		padding: 0 .2rem 0 .2rem;
	}
}

@media (min-width:1200px) {
    .burger-container {
        min-height: 66px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-flow: column wrap
    }

    .logo {
        border: 0
    }

    .case-study-item {
        max-width: 48%;
        margin-top: 2.222rem
    }

    .case-studies-wrapper {
        margin-top: 0
    }

    .nav-toggle {
        display: none
    }

    nav#nav-menu {
        display: block
    }

    nav#nav-menu ul {
        display: flex
    }
	#theme-toggle
	{
		padding: 0 .2rem 0 .2rem;
	}
}

@media (min-width:1800px) {
    .logo {
        border: 0
    }

    .card {
        max-width: calc(29.8% - 1em)
    }

    .videos .card,.widgets .card {
        max-width: calc(50% - 1em)
    }

    .widgets .card {
        padding: 1rem
    }

    .hero,nav#nav-menu ul {
        display: flex
    }

    .nav-toggle {
        display: none
    }

    nav#nav-menu {
        display: block
    }
	#theme-toggle
	{
		padding: 0 .2rem 0 .2rem;
	}
}

.social-icons-lists li.social-icons-list-item a.social-icon:hover .socicon {
    opacity: 1!important
}

.widget .social-icons-lists.show-icons-label li.social-icons-list-item {
    display: inline-block!important
}

.social-icons-list-label,.visually-hidden {
    position: absolute!important;
    clip: rect(1px 1px 1px 1px);
    clip: rect(1px,1px,1px,1px);
    padding: 0!important;
    border: 0!important;
    height: 1px!important;
    width: 1px!important;
    overflow: hidden
}

.frm_forms input[type=text].frm_verify,body:hover .visually-hidden a,body:hover .visually-hidden button,body:hover .visually-hidden input {
    display: none!important
}

.grecaptcha-badge {
    visibility: hidden
}

.btn:active,.btn:focus,.btn:hover {
    background-color: var(--acent-one);!important
}

.author-image {
    margin: 0 auto;
    width: 100%;
    text-align: center;
    padding-bottom: 2rem
}

.author-image img {
    border-radius: 20%;
    border: 3px solid var(--acent-one);
}