*{
    box-sizing:border-box; 
     -moz-box-sizing:border-box; 
     -webkit-box-sizing:border-box; 
     -ms-box-sizing:border-box;
}

:root{
    --blue:#1d3572;
    --orange:#f57a20;
    --creame:#faf9f0;
    --lightBlue:#7ca0fc;
    --gray:#322f2f;
}

html {scroll-behavior: smooth;}

body{
    margin:0;
    font-size:62.5%;
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}

a, a.box *, a.btn::after, a span[class^="icon-"], button[type=submit]{text-decoration: none;-webkit-transition: all 0.25s ease-in;transition: all 0.25s ease-in;}
h2{font-weight: 900;font-family: 'Libre Baskerville', serif;}
.content h2{color:var(--blue);font-size: 4em;}
.content p, .content li{font-size: 1.95em;color:var(--gray);line-height:1.35;}
.content ul{padding-left: 18px}
.content li{padding-bottom: 10px;}
/*.content li{font-size: 1.75em;padding-bottom: 8px;}*/
.content a{color:var(--lightBlue);}
.content a:hover:not(.btn){color:var(--orange);}

.material-symbols-rounded {
  font-variation-settings:
  'FILL' 0,
  'wght' 400,
  'GRAD' 0,
  'opsz' 48
}
.material-symbols-rounded{vertical-align: middle;}

header{background-color:var(--creame);display: flex;justify-content: space-between;padding:50px 10%;}
header .logo img{width:250px;}
header .logo a:hover{opacity: .5;}

.navWrap{display: flex;flex-direction: column;align-items:flex-end;justify-content: center;}

.handle{display:none;}

nav.mainNav{width:100%;position: relative;z-index: 999;}
nav.mainNav ul{
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-left: 0;
    list-style-type: none;
}
nav.mainNav ul li{
    text-align: center;
    padding-left: 55px;
    
}
nav.mainNav ul li > span{cursor: pointer;}
nav.mainNav ul li > a, nav.mainNav  ul li > span{
    color:#3b3b3b;
    font-weight: 600;
    font-size: 1.85em;
    font-family: 'Libre Baskerville', serif;
}

nav.mainNav ul li > a:hover, nav.mainNav  ul li > span:hover{color:var(--orange);}
nav.mainNav ul li .hasSubNav::after{
    font-family: 'Material Symbols Rounded';
    content:"\e5cf";
    font-size: 1em;
    line-height: 1;
    vertical-align: middle;
    color:#3b3b3b;
	padding-left:0;
}
nav.mainNav ul li.active > a, nav.mainNav  ul li.active > span{color:var(--orange);}
nav.mainNav ul li.active > a::after{display: inline;content:"\2022";color:var(--blue);width:100%;padding-left: 5px;}
nav.mainNav ul li .subWrap .sub ul li::after{border-bottom: 0;}
nav.mainNav ul li.hasSub .subWrap{display: none;}
nav.mainNav ul li .subWrap{position: absolute;}
nav.mainNav ul li .subWrap .sub{margin-top:12px;padding:20px 20px 20px 0;background-color:#0b1d51;text-align: left;width: auto;display: flex;}
nav.mainNav ul li .subWrap .sub ul{display: block;width: auto;}
nav.mainNav ul li .subWrap .sub ul li{text-align: left;padding-left: 22px;padding-bottom: 10px;}
nav.mainNav ul li .subWrap .sub ul li a{font-size: 1.5em;font-weight: 600; color:#FFF;}
nav.mainNav ul li .subWrap .sub ul li:hover > a{color:#0361aa;opacity: 1;}

.hero{display: flex;padding:40px 10% 170px 10%;align-items: center;background-color:var(--creame);}
.hero .text{flex:1;margin-right:80px;}
.hero .text h2{color:#0b1d51;font-size: 7em;margin-bottom: 0;}
.hero .text p{color:#3b3b3b;font-size: 2em;}
.hero .image{flex-basis: 40%;position: relative;}

a.btn, button[type=submit]{display: inline-block;color:#FFF;background-color: #0b1d51;padding:15px 40px 10px 40px;border-radius: 10px;font-size: 1.85em;font-weight: 500;}
a.btn::after, button[type=submit]::after{font-family:Material Symbols Rounded; content:"\e5cc";vertical-align: middle;font-weight: 500;font-size: 1.85em;color:var(--lightBlue);}
a.btn:hover, button[type=submit]:hover{background-color: var(--orange);}
a.btn:hover::after, button[type=submit]:hover::after{color:#FFF;}
p a.btn{font-size: inherit;}
button[type=submit]{border:0;cursor:pointer;}

.internalHero{padding:110px 10% 190px 10%;background-color:var(--creame);display: flex;flex-direction: column;overflow: hidden;}
.internalHero h1{font-size: 11em;font-weight: 700;margin: 0;font-family: 'Libre Baskerville', serif;color:var(--blue);position: relative;z-index: 2;}
.internalHero p{font-size: 2em;margin-top: 20px;margin-bottom: 0;width:50%;color:var(--gray);position: relative;z-index: 2;}

.centerText{padding:60px 25%;text-align: center;margin: 80px 0;}
.centerText h2{color:#0b1d51;font-size: 4.5em;margin-top:0;margin-bottom: 0;}
.centerText h2 + p{margin-top:5px;}
.centerText p{color:#3b3b3b;font-size: 2em;}

.textBullets{display: flex;align-items: center;padding:60px 10%;}
.textBullets .text{flex-basis: 50%;padding:40px 40px 40px 0;}
.textBullets .text h2{font-size: 9rem;color:var(--blue);}
.textBullets .text h2 span.offset{display: inline-block;margin-left:40%;}
.textBullets .bullets ul{list-style: none;}
.textBullets .bullets ul li::before{content: "\2022";color:var(--orange);font-weight: bold;display:inline-block;width:1em;margin-left: -1em;}
.textBullets .bullets ul li{padding:20px 0;font-size: 1.95em;}
.textBullets .bullets ul li strong{font-size: 1.15em;}

.xbck{position: absolute;height:900px;width: 100%;content:"";background-image: url(images/site/x-blue.svg);background-repeat: no-repeat;background-position: right;background-size: contain;opacity: .2;}

.wordWrap{position: relative;overflow:hidden;}
.bckWord{
    position: absolute;
    z-index: -1;
    width: 100%;
    opacity: .2;
    color:var(--blue);
    font-weight: 900;
    font-size: 20vw;
    animation: horz 1.75s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -1s);
    animation-iteration-count: 1;
    animation-fill-mode: both;
}
.bckWord.wordWork{top: 32%;transform: translateY(-32%);}
.bckWord.wordWork::before{content:"WORK"}
@keyframes horz {
    from {
		transform: translateX(50%);
	}
	to {
		transform: translateX(0%);
	}
}

.bckTitle{position: absolute;z-index: 1; width: 100%;color:#e8ebf2;font-weight: 900;font-size: 20vw;
    animation: horzTitle 1.75s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -1s);
    animation-iteration-count: 1;
    animation-fill-mode: both;
    line-height: 1px;
    top: 50%;
}

.bckTitle.wordAbout::before{content:"ABOUT"}
.bckTitle.wordBlog::before{content:"BLOG"}
.bckTitle.wordServices::before{content:"SERVICES"}
.bckTitle.wordWork::before{content:"WORK"}
.bckTitle.wordContact::before{content:"CONTACT"}
.bckTitle.word404::before{content:"404"}
.bckTitle.wordRequest::before{content:"REQUEST"}
@keyframes horzTitle {
    from {
		transform: translateX(25%);
	}
	to {
		transform: translateX(0%);
	}
}

.project{display: flex;padding:60px 5%;align-items: center;}
.project.vidRight .text{margin-right:80px;}
.project.vidLeft .video{margin-right:80px;}
.project.vidLeft .image{margin-right:80px;}
.project .image img{max-width: 100%;}
.project .video{border-radius: 8px;overflow: hidden;flex:1;box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);}
.project .video .videoWrap{width:100%;height: 100%;}
.project .videoTop{background-color:#f8af77;height:30px;width:100%;content:"";display: flex;align-items: center;}
.project .videoTop .circ{border-radius: 100%;background-color:#FFF;height:8px;width:8px;}
.project .videoTop .circ:nth-child(1){margin:0 5px 0 10px;}
.project .video video{width: 100%;height: auto;}
.project .text{flex-basis: 40%;}
.project.vidRight .text{order:-1;}
.project .text h2{font-size: 2.35em;margin-bottom: 5px;margin-top: 0;font-weight: 700;color:var(--gray);font-family: 'Lato', sans-serif;}
.project .text p{font-size: 1.75em;color:var(--gray);}
.project .text p.label{font-family: 'Libre Baskerville', serif;color:var(--blue);font-size: 1.6em;font-weight: 400;margin-bottom: 5px;}
.project .text p.label::before{content: "\2022";color:var(--orange);font-weight: bold;display:inline-block;width:20px;font-size: 2.3em;vertical-align: middle;}
.project.rounded .image img{border-radius: 10px;}

.services{display: flex;margin:60px 0 80px 5%;align-items:center;overflow-x: hidden;}
.services .text{flex: 1;margin-right: 130px;}
.services .text h2{color:#0b1d51;font-size: 4.5em;margin:0;}
.services .text h2 + p{margin-top: w0px;}
.services .text p{color:#3b3b3b;font-size: 2em;}

.carouselWrap{width: 70%;margin-right: -150px;padding-bottom:20px;}
.slick-slide{height:auto !important;}
.slick-slide > div{height:100%;}
.slick-track{display:flex !important;}
.carouselWrap .carousel .slick-slide{margin-right: 20px;}
.carouselWrap .carousel .slick-dots{bottom:-40px;}
.carouselWrap .carousel .item{position: relative;border-radius:10px;width:370px;height:100%;margin-right:40px;-webkit-transition: all 0.25s ease-in;transition: all 0.25s ease-in;}
.carouselWrap .carousel .item a{cursor: pointer;width:100%;height: 100%;display:block;}
.carouselWrap .carousel .item .itemBck{overflow: hidden;position: relative;display: flex;flex-direction: column;background-size: cover;background-position: center;border-radius: 10px;padding:20px;height:100%;}
.carouselWrap .carousel .item .itemBck::before{position: absolute;display: block;margin:-20px; content:"";width:100%;height: 100%;background-color:rgba(50, 47, 47, .75);}
.carouselWrap .carousel .item .itemBck:hover::before{background-color:rgba(29, 53, 114, .75);}
.carouselWrap .carousel .item *{position: relative;}
.carouselWrap .carousel .item h3{color:#FFF;font-size: 1.5em;font-weight: 400;font-family: 'Libre Baskerville', serif;}
.carouselWrap .carousel .item h3::before{content: "\2022";color: var(--orange);font-size: 1.85em;padding-right: 5px;vertical-align: sub;}
.carouselWrap .carousel .item p{color:#FFF;font-size: 1.75em;}
.carouselWrap .carousel .item p.quote{font-style: italic;}
.carouselWrap .carousel .item p.quote::before{content: open-quote;}
.carouselWrap .carousel .item p.quote::after{content: close-quote;}
.carouselWrap .carousel .item p.name::before{content:"-";padding-right: 3px;}
.carouselWrap .carousel .item p.name{font-weight: 600;margin-bottom: 0;padding-bottom: 0}
.carouselWrap .carousel .item p.company{margin-top: 0;padding-left:10px;font-size: 1.5em;}
.carouselWrap .carousel .item .logo{margin-top: auto;display: flex;justify-content: flex-end;align-items: flex-end;}
.carouselWrap .carousel .item .logo img{height:50px;}
.carouselWrap .carousel .slick-current .item .itemBck::before{background-color:rgba(29, 53, 114, .65);}
.carouselWrap .carousel .slick-dots{width:100%;left:0;right:0;}
.carouselWrap .carousel .slick-dots li button:before{font-size: 10px;color:#0b1d51;opacity: 1;}
.carouselWrap .carousel .slick-dots li.slick-active button:before{color:#3e78b2;}

.sideText{display: flex;align-items: center;padding:0 10%;margin:60px 0;}
.sideText .big{flex-basis: 50%;padding-right:100px;}
.sideText .big h2{font-size: 8rem;color:var(--blue);}
.sideText .awards{display: flex;flex-wrap: wrap;flex-basis: 50%;justify-content: center;align-items: center;}
.sideText .awards div{flex-basis: 40%;margin:20px;}
.sideText .awards img{max-width: 100%;height: auto;}
.sideText.switch{margin-top:0;}
.sideText.switch .big{padding-right:0;padding-left:100px;}
.sideText.switch .text{order:-1;}
p.biggerText{font-size: 2.5em;font-weight: 700;}

.banner{display: flex;align-items: center;padding:180px 10% 180px 500px;background-color: var(--blue);background-image: url(images/site/xbanner.svg);background-repeat: no-repeat;background-size: contain;color:#FFF;margin:60px 0;}
.banner .left{flex-basis: 45%;margin-right: 80px;}
.banner .left h2{font-size: 9em;}
.banner .right h3{font-size: 2.25em;margin-bottom: 0;}
.banner .right h3 + p{margin-top: 5px;}
.banner .right h3:nth-child(n+2){margin-top: 40px;}
.banner .right p{opacity: .8;color:#FFF;}

.banner .right ul{list-style: none;}
.banner .right ul li::before{content: "\2022";color:var(--orange);font-weight: bold;display:inline-block;width:1em;margin-left: -1em;font-size: 2.5em;}
.banner .right ul li{font-size: inherit;}
.banner .right ul li:nth-child(n+2){margin-top:40px;}
.banner .right ul li h3{margin-top: 0;display: inline-block;color:#FFF;}

.imageText{margin:80px 10%;display: flex;align-items: center;}
.imageText div:nth-child(1){margin-right:80px;}
.imageText .image{flex-basis: 40%;position: relative;}
.imageText.switch .image{order:-1;}
.imageText.noSwitch .image .imageWrap{display:block;width:500px;height:500px;border-radius: 100%;z-index: -1;background:linear-gradient(90deg, rgba(255,255,255,1) 50%, rgba(62,120,178,1) 50%);text-align: center;position: relative;}
.imageText.switch .image .imageWrap{display:block;width:500px;height:500px;border-radius: 100%;z-index: -1;background:linear-gradient(90deg, rgba(62,120,178,1) 50%, rgba(255,255,255,1) 50%);text-align: center;position: relative;}
.imageText .image .imageWrap img{max-height: 450px; border-radius: 100%;border:20px solid #FFF;position: absolute;  top: 50%;
  left: 50%;transform: translate(-50%, -50%);}

.featureWrap{padding:80px 0;}
.boxes{display: flex;flex-wrap: wrap;margin:60px 5%;}
.boxes .box{flex-basis: 30%;margin-bottom: 80px;}
.boxes .box:nth-child(3n+2){margin:0 49px;}
.boxes .box .image img{width:100%;border-radius: 10px;}
.boxes .box h2{font-size: 2.5em;font-weight: 600;line-height: 32px;font-family: 'Lato', sans-serif;margin-bottom: 5px;}
.boxes .box p{font-size: 1.65em;}
.boxes .box h2 + p{margin-top: 0;}
.boxes a.box:hover .image{opacity: .8;}
.boxes a.box:hover h2{color:var(--orange);}
.boxes a.box:hover p{color:var(--lightBlue);}
.boxes .box p.label{font-family: 'Libre Baskerville', serif;color:var(--blue);font-size: 1.6em;font-weight: 400;margin-bottom: 5px;}
.boxes .box p.label::before{content: "\2022";color:var(--orange);font-weight: bold;display:inline-block;width:20px;font-size: 2.3em;vertical-align: middle;}
.boxes .box p.label + h2{margin-top:0;}

.blogEntry{margin:50px 5% 80px 5%;}
.blogEntry .image{float:right;margin-left:80px;border-radius:10px;max-width:40vw;margin-top: 55px;margin-bottom: 15px;}
.blogEntry .image img{border-radius:10px;width:100%;}
.blogEntry p.label{font-family: 'Libre Baskerville', serif;color:var(--blue);font-size: 1.6em;font-weight: 400;margin-bottom: 5px;}
.blogEntry p.label::before{content: "\2022";color:var(--orange);font-weight: bold;display:inline-block;width:20px;font-size: 2.3em;vertical-align: middle;}
.blogEntry p.label + h2{margin-top:0;}

.breadcrumbs{margin:60px 5% 0;}
.breadcrumbs a{font-size:1.35em;}
.breadcrumbs a span{color:var(--blue);}

.alertBox{margin:40px 5%;color:#FFF;background-color:var(--orange);padding:20px;border-radius: 8px;display: flex;align-items: center;scroll-margin-top:40px;}
.alertBox .icon{flex-basis: 50px;}
.alertBox .icon *{font-size: 4em;}
.alertBox .text{flex:1;}
.alertBox .text p{color:#FFF;font-weight:bold;}

figure{margin:0;}
figure video{padding-right:5%;padding-left:5%;}
#reel{width:100%;height: 100%;scroll-margin-top:100px;}

.xDivider{text-align:center;margin:0 5%;}
.xDivider img{width:50px;height:50px;}

.srOnly {
position:absolute;
left:-10000px;
top:auto;
width:1px;
height:1px;
overflow:hidden;
}

.freeform-row{margin-bottom:40px !important;}

.contactForm label.freeform-label {
    font-size: 1.65em;
    padding-bottom:8px;
}

.contactForm .freeform-input {
    border-bottom: 1px solid var(--blue);
    border-top: 0;
    border-right: 0;
    border-left: 0;
    font-size: 1.65em;
    padding:5px;
    border-radius:8px 8px 0 0;
}

.contactForm .freeform-input:focus {
    outline: 2px solid rgba(29,53,114,0.2);
}

.contactForm textarea{font-size: 1.65em;font-family: 'Lato', sans-serif;}
#request > .freeform-row{display:none;}
#request > .freeform-row ~ .freeform-row ~ .freeform-row{display:flex;}
.submittedTicket{margin:0 5%;}
.submittedTicket table {
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0 0 10px;
    text-align: left;
    font-size: 1.65em;
    width:100%;
}
.submittedTicket table td, table th {padding: 10px;vertical-align: top;}
.submittedTicket tr:nth-child(2), .submittedTicket tr:nth-child(3){display:none;}

footer{background-color:var(--creame);padding:80px 5% 30px;margin-top:60px;}
footer .footerInfo{display: flex;justify-content: space-between;margin-top:20px;}
footer .footerInfo .footerX{align-self: center;}
footer .footerInfo .footerX img{width:120px;}
footer .footerInfo .for{font-size: 2.85em;font-weight: 700;flex-basis: 23%;align-self: center;color:var(--gray);position: relative;}
footer .footerInfo .for p{margin:0;display: inline-block;vertical-align: top;}
footer .footerInfo .for .text {
  position: absolute;
  width: 450px;
  left: 50%;
  margin-left: -225px;
  height: 40px;
  top: 50%;
  margin-top: -20px;
}

footer .footerInfo .for .word {
  position: absolute;
  width: 220px;
  opacity: 0;
}

footer .footerInfo .for .letter {
  display: inline-block;
  position: relative;
  float: left;
  transform: translateZ(25px);
  transform-origin: 50% 50% 25px;
}

footer .footerInfo .for .letter.out {
  transform: rotateX(90deg);
  transition: transform 0.32s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

footer .footerInfo .for .letter.behind {
  transform: rotateX(-90deg);
}

footer .footerInfo .for .letter.in {
  transform: rotateX(0deg);
  transition: transform 0.38s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

footer .footerInfo nav{display: flex;}
footer .footerInfo nav ul{padding-left: 0;list-style-type: none;font-family: 'Libre Baskerville', serif;font-weight: 700;}
footer .footerInfo nav ul li{padding-bottom: 8px;font-size: 1.25em;text-align: center;}
footer .footerInfo .nav a{color:var(--gray);font-size: 1.55em;}
footer .footerInfo .nav a:hover{color:var(--orange);}
footer .footerInfo .contact{text-align: right;font-family: 'Libre Baskerville', serif;align-self: flex-end;padding-bottom: 8px;}
footer .footerInfo .contact p{line-height: 12px;}
footer .footerInfo .contact p.social a:nth-child(n+2){margin-left:5px;}
footer .footerInfo .contact p.social a span{font-size: 2.5em;color:var(--blue);display: inline-block;}
footer .footerInfo .contact p.social a span:hover{color:var(--orange);}
footer .footerInfo a[href^="tel:"]{color:var(--gray);font-size: 1.75em;font-weight: 800;padding-top:10px;display: block;}
footer .footerInfo a[href^="tel:"]:hover, footer .footerInfo a[href^="mailto:"]:hover{color:var(--orange);}
footer .footerInfo a[href^="mailto:"]{color:var(--gray);font-size: 1.75em;font-weight: 800;}
footer .footerCopy{padding-top:10px;}
footer .footerCopy p{color:var(--gray);font-size: 1.25em;text-align: right;}

#bckTop{
  display: none;
  position: fixed;
  bottom: 20px;
  right: 12px; 
  z-index: 999;
  border: none; 
  outline: none;
  background-color: #3e78b2;
  color: white; 
  cursor: pointer; 
  padding: 15px; 
  border-radius: 100%; 
  font-size: 18px; 
}

#bckTop:hover {opacity: .5;}

@media (min-width:1625px){
 .banner .left h2 span{display: block;}
}

@media (min-width:1153px){
    #buttonWrap{display: none;}
    [hidden]{display: block;} 
}

@media (max-width:1390px) and (min-width:1153px){
    .banner{background-position: -150px;padding-left:350px;}
}

@media (max-width:1315px){
    footer .footerInfo .for .words{display: inline-block;left:0;}
    footer .footerInfo .for .word{left: 0;margin-top: 8px;}
}

@media (max-width:1225px){
    .boxes{justify-content: space-around;}
    .boxes .box:nth-child(3n+2){margin-left: 0;margin-right: 0;margin-bottom: inherit;}
    .boxes .box{flex-basis: 40%;}
    .boxes .box:nth-child(odd){margin-right: 40px;}
}

@media (max-width:1152px){
    header{align-items: center;}
    [hidden]{display: none !important;}
    #buttonWrap button{
        background-color: transparent;
        border: 0;
        color:#0b1d51;
        font-size: 3em;
        cursor: pointer;
    }
    #buttonWrap.mobile button{color:#FFF;position: relative;z-index: 999;}
    #buttonWrap button span{font-size:1.25em;}

    nav.mainNav{text-align: center;margin: 10px 0;}
    
    nav.mainNav.mobile{background-color: transparent;visibility: hidden;opacity: 0;transition: all 0.7s ease-in-out;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    }
    nav.mainNav.desktop{
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        background-color: #0b1d51;
        padding:20px 0;
        margin:0;
        z-index: 998;
        
        opacity: 1;
        visibility: visible;
        transition: all 0.7s ease-in-out;
        
    }
    #buttonWrap.mobile .bars{display: none;}
    #buttonWrap .close{display: none;}
    #buttonWrap.mobile .close{display: block;}
    nav.mainNav ul{
        height: 100vh;
        flex-direction: column;
        justify-content: flex-start;
        margin-top: 130px;
    }
    nav.mainNav ul li{margin:20px 0;width:100%;text-align: center;padding: 0;}
    nav.mainNav ul li a{padding: 0;color:#FFF;}
    nav.mainNav ul li > a, nav.mainNav ul li > span{color:#FFF;font-size: 2.5em;}
    
    nav.mainNav ul li .hasSubNav::after{color:#FFF;}
    
    nav.mainNav ul li .subWrap .sub{flex-direction: column;text-align:center;padding:10px 20px;background-color: #3e78b2;} 
    nav.mainNav ul li.hasSub .subWrap{width: 100%;left:0;position: relative;}
    nav.mainNav ul li .subWrap .sub ul{padding: 0;height: auto;}
    nav.mainNav ul li .subWrap .sub ul li{text-align: center;padding:0;}
    nav.mainNav ul li .subWrap .sub ul li a{color:#FFF;}
    nav.mainNav ul li .subWrap .sub ul li a:hover{color:#0b1d51;}
    nav.mainNav ul li .subWrap .sub ul li a:after{display: none;}
    nav.mainNav ul li::after{display: none;}
    
    .hero{flex-direction: column;text-align: center;}
    .hero .text{margin-right:0;}
    .hero .image{margin-top:40px;}
    
    .internalHero p{width:100%;}
    
    .xbck{background-position:top left;}
    .bckTitle{font-size: 50vw;}
    .wordWrap{overflow: hidden;}
    .bckWord{
        font-size: 45vw;
        animation: horz 0.75s linear infinite;
        animation-play-state: paused;
        animation-delay: calc(var(--scroll) * -.90s);
        animation-iteration-count: 1;
        animation-fill-mode: both;
    }
    
    @keyframes horz {
        from {
            transform: translateX(100%);
        }
        to {
            transform: translateX(-50%);
        }
    }

    .bckTitle{
        animation: horzTitle 0.75s linear infinite;
        animation-play-state: paused;
        animation-delay: calc(var(--scroll) * -3s);
        animation-iteration-count: 1;
        animation-fill-mode: both;
    }

    @keyframes horzTitle {
        from {
            transform: translateX(15%);
        }
        to {
            transform: translateX(-80%);
        }
    }

    .textBullets{flex-direction: column;}
    .textBullets .text{flex-basis: 100%;padding:0;}
    .textBullets .text h2{margin:60px 0 0px;font-size: 8rem;}
    .textBullets .text h2 span.offset{margin-left: 30%;}
    .textBullets .bullets ul li strong{font-size: 1em;}
    
    .centerText{padding-right: 5%;padding-left: 5%;}
    
    .services{flex-direction: column; margin:80px 5%;}
    .services .text{text-align: center;margin-right: 0;margin-bottom: 80px;}
    
    .carouselWrap{width: 100%;margin-right: 0;}
    
    .project{flex-direction: column;}
    .project .image{order:-1;}
    .project.vidRight .text{margin-right:0;}
	.project.vidLeft .video{margin-right:0;}
    .project .video{width: 100%;order: -1;}
    
    .boxes .box{flex-basis: 100%;margin-bottom: 60px;}
    .boxes .box:nth-child(odd){margin-right: 0;}
    
    .sideText{flex-direction: column;}
    .sideText .big{flex-basis: 100%; padding-right: 0;}
    .sideText .big h2{margin-bottom: 0;font-size: 5.5rem;}
    .sideText.switch .big{padding-left:0;}
    .sideText.switch .text{order:1;}
    
    .banner{flex-direction: column;padding-left: 10%;background-image: none;position: relative;overflow: hidden;}
    .banner::after{opacity: 1; content:"";height:100%;position: absolute; top:0;right:0;left:-250px;bottom:0;background-image: url(images/site/x-orange.svg); background-size: cover;}
    .banner div{position: relative;z-index: 1;text-shadow:1px 1px 10px rgba(0,0,0,.2);}
    
    .imageText{flex-direction: column;}
    .imageText div:nth-child(1){margin-right:0;}
    .imageText .image{flex-basis: 100%;}
    .imageText.switch .image, .imageText.noSwitch .image{order:-1;}
    
    .blogEntry{display:flex;flex-direction:column;}
    .blogEntry .image{float:none;margin-left:0;order:2;max-width:100%;}

    footer .footerInfo{flex-direction: column;justify-content:center;text-align: center;}
    footer .footerInfo .for{margin:60px 0;}
    footer .footerInfo nav{flex-direction: column;margin-top: 40px;}
    footer .footerInfo nav ul{padding-left: 0;list-style-type: none;margin-bottom: 0;}

    footer .footerInfo .for p{display: block;}
    footer .footerInfo .for .word{left:0;right:0;width:auto;top: 33px;}
    footer .footerInfo .for .letter{float:none;}
    
    footer .footerInfo .contact{text-align: center;align-self: center;margin:60px 0;}

    footer .footerCopy p{text-align: center;}
}

@media (max-width:800px){
.hero .text h2{font-size:6em;margin-top:0;}
.internalHero h1{font-size: 19vw;}
#reel{scroll-margin-top:300px;}
footer .footerInfo .for .words{display:block;}
footer .footerInfo .for .word{top:58px;}
footer .footerInfo nav ul li{font-size:1.65em;}
}