@import url(https://fonts.googleapis.com/css?family=Dosis:300,400,600,700&display=swap);


@font-face {
    font-family: 'Spartan MB';
    src: url(../fonts/SpartanMB-Light.woff2) format('woff2'),
        url(../fonts/SpartanMB-Light.woff) format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Spartan MB';
    src: url(../fonts/SpartanMB-Regular.woff2) format('woff2'),
        url(../fonts/SpartanMB-Regular.woff) format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Spartan MB';
    src: url(../fonts/SpartanMB-Bold.woff2) format('woff2'),
        url(../fonts/SpartanMB-Bold.woff) format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/*------GENERAL------*/
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

strong {
    font-weight: 600!important
}

html,
body {
    margin: 0;
    padding: 0;
    font: normal 1em 'Spartan MB', sans-serif;
    height: 100%;
    width: 100%;
    color: #171717
}

a {
    text-decoration: none;
    color: #171717;
    cursor: pointer
}

ul {
    margin: 0;
    padding: 0
}

ul li {
    list-style-type: none;
    padding-bottom: 5px;
}

ul.inside_ul {
    margin-left: 20px
}

ul.inside_ul li {
    list-style: disc;
}

i {
    cursor: pointer
}

h1, h2, h3, h4 {
    font-family: 'Dosis', sans-serif
}

h2 {
    font-size: 1.6em;
    font-weight: 400;
    margin-top: 2px
}

h3 {
    margin: 0;
    font-size: 2em;
    font-weight: 400
}

h4 {
    margin: 0;
    font-size: 1.2em;
    font-weight: 300
}

.cf:after {
    content: "";
    display: table;
    clear: both
}

/*------NAVIGATION MENU------*/
.menu {
    width: 100%;
    height: 62px;
    position: fixed;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 1;
    background-color: #000
}

#menu-center {
    height: 62px;
    margin: 0 auto;
    width: 100%
}

#menu-center ul {
    text-align: center
}

#menu-center ul li {
    display: inline-block;
    margin-right: 1em;
    margin-bottom: 0
}

#menu-center ul li a {
    border-bottom: 2px solid #000;
    transition: 0.3s ease-in-out
}

#menu-center img.small {
    width: 70%
}

#menu-center ul li a:hover {
    border-bottom: 2px solid #FBFF00
}

#menu-center ul li a.active {
    border-bottom: 2px solid #FBFF00
}

#menu-center img {
    width: 80%
}

 .small-hori {
    max-width: 70px !important
 }


/*------FIRST SECTION------*/

#home {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: url(../img/ca_cover_black_overlay.webp) center center / cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-color: #000;
    position: relative;
    z-index: -1
}

#home h1 {
    position: absolute;
    top: 72%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
    color: #FBFF00;
    font-size: 3em;
    line-height: .8;
    font-weight: 300;
    text-align: center;
    background-color: rgba(0, 0, 0, .9);
    border-radius: 5px;
    padding: .5em .6em
}

h1.title {
    font-weight: 400;
    font-size: 4em;
    color: #000;
    margin: 0 0 3% 0
}

#home span { 
    margin-left: 0.2em;
    font: normal .42em 'Spartan MB', sans-serif;
}

.logo {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, .9);
    border-radius: 50%;
    padding: 19px 25px 19px 19px;
}

.logo img {
    max-width: 150px;
    width: 100%;
}

.mouse {
    border: 2px solid #FBFF00;
    border-radius: 26px;
    position: absolute;
    top: 92%;
    left: 50%;
    width: 26px;
    height: 42px;
    -webkit-backface-visibility: hidden;
    transform: translate(-50%, -50%)
}

.mouse::after {
    background-color: #FBFF00;
    border-radius: 100%;
    content: "";
    position: absolute;
    top: 5px;
    left: 50%;
    margin-left: -2px;
    width: 4px;
    height: 4px;
    opacity: 1;
    transform: translateY(0) scaleY(1) scaleX(1) translateZ(0);
    animation: scroll 1.5s -1s cubic-bezier(.68, -.55, .265, 1.55) infinite
}

@keyframes scroll {

    0%,
    20% {
        transform: translateY(0) scaleY(1) scaleX(1) translateZ(0)
    }

    10% {
        transform: translateY(0) scaleY(1.2) scaleX(1.2) translateZ(0);
        opacity: 1
    }

    100% {
        transform: translateY(20px) scaleY(2.5) scaleX(.5) translateZ(0);
        opacity: .01
    }
}


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

.wrapper_content {
    display: flex;
}

.wrap_content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex:1
}

.wrap_intro {
    margin-left: 4%;
    width: 50%
}

.wrap_intro p {
    font-size: 1.125em;
    line-height: 1.4;
    margin-bottom: 8%
}

#about h3 {
    font-size: 1.5em
}

.wrap-about {
    padding: 6em 0;
    margin-left: 9em;
    max-width: 1340px;
    width: 100%;
    margin: 0 auto
}

.txt-about {
    width: 100%;
    max-width: 600px;
    margin-top: 4% !important;
    margin: 0 auto
}

.txt-about p {
    line-height: 1.4
}


.wrap-about img {
    width: 50%
}

a.btn {
    background-color: #FBFF00;
    border: 2px solid #FBFF00;
    padding: 1em 3em;
    color: #171717;
    transition: 0.3s all ease-in-out;
    text-transform: uppercase;
    margin: 3.5em 1em 0 0;
    /* display: block; */
    text-align: center;
    /* margin: 0 auto; */
    /* max-width: 210px; */
    width: 100%;
    font-weight: 400;
    margin-top: 3%
}

.txt-about a.btn:hover {
    border: 2px solid #FBFF00;
    background-color: transparent
}

a.btn:hover {
    border: 2px solid #FBFF00;
    background-color: transparent
}

.secondary {
    background-color: transparent !important;
    border: none !important;
    text-decoration: underline;
}

a.secondary:hover {
    text-decoration: none !important;
}



/*------PORTFOLIO------*/

.two em {
    font-size: 0.8em
}

.video_bg {
background: url(../img/teamsnap/off-season/ca_off_season_laptop_mockup.webp) center center / cover no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    position: relative
}

video{
    position: absolute;
    top: -526px;
    left: 437px;
    max-width: 466px;
    width: 100%
}

.mt {
    margin-top: -0.8%
}

.mtbis {
    margin-top: -2%
}

.img_2col {
    width: 50% !important
}

.col_2 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap
}

.success_container {
padding: 5%
}

.wrap_text h4 {
    border-left: none !important;
    font-size: 1.5em !important;
    height: auto !important;
    margin-bottom: 0 !important;
    padding-left: 0 !important
}

#portfolio {
    width: 100%;
    background-color: #f4f4f4
}

.wrap-portfolio {
    margin: 0 auto;
    width: 100%;
    max-width: 1340px;
    padding: 6em 0
}

.hover-color div {
    position: relative;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.hover-color div:hover {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
}

#portfolio span {
    font: normal .8em 'Spartan MB', sans-serif;
}

#portfolio h1 span {
    font-size: .5em
}

.container h2 {
    position: absolute;
    bottom: -15px;
    left: 0;
    padding: 2% 0 2% 3%;
    background-color: rgba(251, 255, 0, .8);
    width: 100%;
    color: #000;
    font-size: 1.5em;
    font-weight: 400
}

/*------MODAL SECTION------*/

.no_mb {
    margin-bottom: 0.2em
}


.row_wrapper span {
    font-size: 1em !important
}

.row_wrapper ul li {
list-style-position: outside;
margin-left: 25px;
list-style-type: disc
}

.modal-area h1 {
    font-size: 3em;
    font-weight: 400;
    margin-top: .3em
}

.bg-modal h1 {
    margin-bottom: 0
}

.modal ul.challenge,
.modal ul.list {
    margin-top: 5px;
    margin-bottom: 1em
}

.modal ul.challenge li:nth-child(1) {
    font-weight: 600;
    font-size: 1.2em;
    margin-bottom: 1em
}

.sketch img,
.show img,
.moodboard img {
    width: 100%
}

.case img {
    width: 50%;
    float: left;
    margin-top: 2%
}

.three .case img {
    width: 33%
}

.ad img {
    margin-top: 2%;
    width: 100%
}

.wireframe img,
.comp img {
    width: 100%;
}

.wireframe-float img,
#modal3 .comp img {
    width: 100%;
    max-width: 289px
}

.wireframe img:last-child,
.comp img:last-child {
    margin-right: 0
}



.wireframe-float {
    max-width: 450px;
    float: left;
    margin-right: 2%
}

#modal3 .comp {
    max-width: 450px;
    width: 100%;
    float: left
}

.show {
    clear: both
}

#modal2 .right {
    float: left
}

.modal ul.solution {
    margin: .8em 0
}

.container {
    width: 100%;
    max-width: 1340px;
    margin: 0 auto
}

.container img {
    width: 100%;
    height: auto
}

.content {
    margin: 0 auto
}

.md-btn-area {
    margin-bottom: 50px;
    display: flex;
    flex-wrap: wrap;
}

.md-btn {
    cursor: pointer;
    width: 48.8%;
    margin: 0 1.4% 1.4% 0
}

.md-btn:nth-child(2n+0) {
    margin-right: 0
}

.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    background-color: rgba(0, 0, 0, .8);
    z-index: 1
}

.bg-modal {
    max-width: 1340px;
    width: 100%;
    margin: 2em auto;
    background-color: #fff;
    /* padding: 2em 4em */
}

.bg-modal .list, .bg-modal p {
    /* font-size: 1.15em; */
    line-height: 1.4
}

.bg-modal p {
    margin-top: 0.2em
}

.bg-modal h3 {
    font-size: 1.25em
}

.modal .close {
    position: fixed;
    top: 50px;
    right: 70px;
    width: 40px;
    height: 40px;
    background-color: #FBFF00;
    cursor: pointer
}

.modal .close:before,
.modal .close:after {
    position: absolute;
    top: 4px;
    border: 1px solid #000;
    height: 30px;
    content: ""
}

.modal .close:before {
    left: 19px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.modal .close:after {
    right: 19px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.modal .close span {
    display: none
}

.row_wrapper {
    display: flex;
    flex-wrap: wrap

}

.left_content, .right_content {
    width: 50%
}

.right_content {
    padding: 5%
}

.left_content img {
    max-width: 100%
}


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

.footer {
    width: 100%;
    background-color: #000;
    padding: 2% 0;
    text-align: center
}

.footer p {
    color: #fff
}

.footer img {
    max-width: 30px
}


/*------MEDIA QUERIES------*/

@media only screen and (max-width:1024px) {
    .modal .close {
        top: 49px;
        right: 17px
    }
    .left_content,
        .right_content {
            width: 100%
        }
}

@media only screen and (max-width:940px) {
    .wrap-portfolio h1.title,
    #about h1.title {
        padding: 0 3%
    }
}

@media only screen and (max-width:937px) {
    #about img {
        margin: 0 auto;
        width: 100%;
        max-width: 460px;
        display: block
    }
    .txt-about {
        margin: 0 auto;
        padding: 1em;
    }
}

@media only screen and (max-width:696px) {
    .hover-color div {
        width: 100%;
        max-width: 415px;
        /* float: none; */
        margin: 2% auto
    }
    .md-btn:nth-child(2n+0) {
        margin-right: auto
    }
    .wrap_content {
        flex-wrap: wrap
    }
    .wrap_intro {
        margin: 6% 4% 4% 4%
    }
    .accordion-item-bd {
        flex-wrap: wrap
    }

    .wrap_logo_color {
        flex-wrap: wrap
        }

    .left_content,
    .right_content {
            width: 100%;
        }
        .mt {
            margin-top: -1.8%;
        }

}


@media only screen and (max-width:500px) {
    .bg-modal {
        padding: 0
    }

    video {
        position: absolute;
        top: -147px;
        left: 123px;
        max-width: 130px;
        width: 100%
        }
    
    .two iframe {
        height: 207px
    }

    .wrap_intro {
        width: 100%
    }

    a.btn {
        display: block
    }

    .wrap-portfolio, .wrap-about {
        padding: 3em 0
    }

    .modal-area h1 {
        font-size: 2.5em
    }

    .footer {
        padding: 5% 0;
    }


}

@media only screen and (max-width:430px) {
    video {
        top: -161px;
        left: 136px;
        max-width: 143px
    }
}

@media only screen and (max-width:414px) {
   video {
        top: -167px;
        left: 141px;
        max-width: 149px
    } 
}

@media only screen and (max-width:390px) {
    video {
        top: -153px;
        left: 127px;
        max-width: 135px
    }
}