/*UNIVERSAL/STRUCTURAL*/
/*-----------------------------*/

@media all and (max-width: 900px) {

    a:hover,
    a:active {
        color: inherit;
    }

    .sticky-footer main {
        margin-bottom: 0;
    }

    .sticky-footer main:after {
        display: none;
    }

    #content:before {
        height: 58px;
    }

    .space-above #content:before {
        height: 100px;
    }

    .sub-menu {
        display: none;
    }

}

@media all and (max-width: 650px) {
    
    h1 {
        font-size: 3rem;
    }
	
	#overlay .inner p {
		font-size: 14px;
	}

}

@media all and (max-width: 500px) {
    
    .space-above #content:before {
        /*hacky shniz, to make the height a percentage of the device width*/
        height: 0px;
        padding-top: 28%;
    }

}


/*HEADER*/
/*-------------------*/

@media all and (max-width: 900px) {

    header {
        height: 58px;
    }

    .menuOn header {
        position: absolute;
    }

    header:before, header:after {
        display: none;
    }

    header .inner {
        height: 58px;
        background-color: #fff;
        transition: background-color .3s;
    }

    .menuOn header .inner {
        background-color: transparent;
    }

    header .lines {
        display: none;
    }

    header .logo-small {
        display: block;
    }

    header .logo svg {
        width: 155px;
        height: 58px;
    }

    header .logo-large {
        display: none;
    }

    header .menuBtn {
        top: 20px;
        right: 5.3%;
        width: 20px;
        height: 14px;
    }

    .menuBtn .line {
        width: 20px;
        transition-property: background-color, opacity, transform, top;
        transition-duration: .2s, .1s, .3s, .3s;
        transition-delay: 0s, 0s, 0s, 0s;
    }

    .menuBtn .line:nth-child(2) {
        top: 6px;
    }

    .menuBtn .line:nth-child(3) {
        top: 12px;
    }

    .header-bg {
        height: 58px;
    }

    .menuOn .header-bg:after {
        display: none;
    }

}


/*NAVIGATION*/
/*-------------------*/

@media all and (max-width: 900px) {

    header nav {
        position: absolute;
        right: 0;
        top: 0;
        padding: 98px 0 13%;
        padding: calc(58px + 10%) 0 13%;
        width: 100%;
        text-align: center;
        transform: translateY(-100%);
        z-index: 3;
        background-color: #ff6962;
        color: #fff;
        transition: transform .3s ease-in 0s, background-color .4s 0s;
    }

    .menuOn header nav {
        transform: translateY(0%);
        transition: transform .3s ease 0s, background-color .4s 0s;
    }

    header nav ul {
        display: block;
    }

    header nav > ul li,
    li.menu-trigger {
        padding: 0;
        margin: 0;
        display: block;
        padding: 0.6em 0;
        font-size: 1.5rem;
    }

    #submenu-holder {
        position: relative;
        top: 0;
        right: 0;
        width: 100%;
        transform: none;
        background: transparent;
    }

    #submenu-holder ul {
        padding: 0;
        width: 100%;
        min-width: 0;
    }

    #submenu-holder li {
        text-align: center;
        border: none;
        opacity: 1;
        transition: none;
        font-size: 1.5rem;
    }

        #submenu-holder a {
            padding: 0.6em 0;
        }

    header .social.mobileOnly {
        display: block;
        padding: 2.4rem 0 0;
    }

    header .social.desktopOnly {
        display: none;
    }

    header .social li {
        padding: 0 0.9em;
    }

    header .social svg {
        height: 23px;
    }

    header .social:after {
        display: none;
    }

    #main-menu {
        opacity: 1;
        transition: opacity .3s 0s;
    }

    #main-menu.fadeOut {
        opacity: 0;
        transition: opacity .3s 0s;
    }

    .frosty {
        display: block;
    }

}


/*FOOTER*/
/*-------------------*/

@media all and (max-width: 900px) {

    footer {
        flex-direction: column;
        justify-content: center;
        padding: 4em 6%;
        font-size: 1.15rem;
        margin-top: 5px;
        margin-top: 1vw;
    }

    .sticky-footer footer {
        height: auto;
    }

    footer > svg {
        padding: 0;
        margin-bottom: 2.5em;
    }

    footer > div {
        padding: 0;
        text-align: center;
    }

    footer .social {
        margin-top: 3rem;
        padding-bottom: 2.5rem;
    }

    footer .social li {
        padding: 0 11px;
    }

    footer .social li svg {
        width: 30px;
        height: 30px;
    }

    footer .social + p {
        font-size: 0.8em;
    }

}


/*HOMEPAGE*/
/*-----------------------------*/

@media all and (max-width: 900px) {

    .home .grid-sizer,
    .home .masongrid .cell {
        width: 32.66% !important;
        /*height: auto !important;*/
    }

    .gutter-sizer {
        width: 1%;
    }

    .home .cell a {
        position: relative;
        width: 100%;
        height: 100%;
        display: block;
    }

    /*
    .home .gridpage .cell .photo {
        width: 100% !important;
        height: auto !important;
        top: 0;
        left: 0;
        transform: none;
    }
    */

    .gridpage .cell .info {
        width: 90%;
        font-size: 0.8vw;
    }

    .masongrid .artist-name,
    .masongrid .medium .artist-name,
    .masongrid .large .artist-name {
        font-size: 5.8em;
    }

    .masongrid .cell li, .masongrid .cell p,
    .masongrid .cell.medium li, .masongrid .cell.medium p,
    .masongrid .cell.large li, .masongrid .cell.large p {
        font-size: 1.7em;
    }

}

@media all and (max-width: 768px) {

    .home .grid-sizer,
    .home .masongrid .cell {
        width: 49.5% !important;
    }

    .masongrid .artist-name,
    .masongrid .medium .artist-name,
    .masongrid .large .artist-name {
        font-size: 7em;
    }

    .masongrid .cell li, .masongrid .cell p,
    .masongrid .cell.medium li, .masongrid .cell.medium p,
    .masongrid .cell.large li, .masongrid .cell.large p {
        font-size: 2.7em;
    }

}

@media all and (max-width: 460px) {

    .masongrid .artist-name,
    .masongrid .medium .artist-name,
    .masongrid .large .artist-name {
        font-size: 6em;
    }

    .masongrid .cell li, .masongrid .cell p,
    .masongrid .cell.medium li, .masongrid .cell.medium p,
    .masongrid .cell.large li, .masongrid .cell.large p {
        font-size: 3em;
        line-height: 1.2;
    }

    h1:after, .artist-name:after {
        margin: 0.24em auto 0;
    }

    .masongrid .artist-name {
        margin-bottom: 0.3rem;
    }

}


/* JUSTIFIED GALLERY */
/* ----------------------------- */

@media all and (max-width: 700px) {

    .justified {
        width: 89.4%;
    }

}


/* ARTIST BIO DROPDOWN */
/* ----------------------------- */

@media all and (max-width: 768px) {

    /* buttons, not really part of this, but that's alright. */
    .button {
        padding: 0.8em 1em 0.7em;
        margin: 0 0.3em 0.7em;
    }

    .reveal {
        padding: 5.3%;
    }

    .reveal .photo {
        display: block;
        margin: 0 auto 2em;
        width: 89.4%;
    }

    .reveal .text-holder {
        width: 89.4%;
        max-width: none;
    }

}


/* SLIDESHOW */
/* ----------------------------- */

@media all and (max-width: 900px) {

    .slideshow .logo {
        left: 5.3%;
        top: 19px;
    }

    .ui.close {
        padding: 25px 7% 25px 49px;
    }

    .slickslideshow .cell .photo,
    .slickslideshow .cell .inner {
        max-width: 100%;
        max-height: 100%;
        width: auto;
        height: auto;
    }

    .slickslideshow .cell .inner {
        width: 100%;
        height: 100%;
    }

    .ui.prev,
    .ui.next {
        bottom: 0;
        top: auto;
        transition: none;
        padding: 30px 5.3%;
    }

    .ui.prev,
    .ui.prev:hover,
    .ui.prev:active {
        transform: translateX(0%) translateY(0%) rotateZ(0deg) scale(1);
    }

    .ui.next,
    .ui.next:hover,
    .ui.next:active {
        transform: translateX(0%) translateY(0%) rotateZ(180deg) scale(1);
    }

}


/*CREATIVES*/
/*-----------------------------*/

@media all and (max-width: 900px) {

    .creatives .cell {
        width: 49.71%;
        margin-bottom: 7%;
    }

    .creatives .cell:nth-child(3n) {
        margin-right: 0.58%;
    }

    .creatives .cell:nth-child(2n) {
        margin-right: 0;
    }

    .creatives figcaption {
        width: 88%;
    }

}

@media all and (max-width: 625px) {

    .creatives {
        width: 89.4%;
    }

    .creatives .cell {
        width: 100%;
    }

    .creatives .cell:nth-child(2n),
    .creatives .cell:nth-child(3n) {
        margin-right: 0;
    }

    .creatives figcaption {
        width: 88%;
    }

}

@media all and (max-width: 500px) {

    .creatives .cell {
        margin-bottom: 34px;
    }

}


/*TEXT PAGE*/
/*--------------------*/
@media all and (max-width:1150px) {

    .col1 {
        width: 35%;
    }

    .col2 {
        width: 60%;
    }

    .writeup {
        columns: 1;
        column-gap: 0em;
    }

}

@media all and (max-width:650px) {
    
    .textpage {
        width: 89.4%;
    }

    .textpage h1 {
        width: 100%;
    }

    .col {
        padding-top: 4rem;
    }

    .col1, .col2 {
        width: 100%;
    }

}


/*INSTAGRAM FEED*/
/*--------------------*/

@media all and (max-width:900px) {
    
    #ig-feed {
        margin-bottom: -5px;
        margin-bottom: -1vw;
    }

    #ig-feed #cartoon {
        left: 9%;
    }

    #ig-feed ul {
        right: 9%;
    }

    #ig-feed .instagram_gallery a {
        display: none;
    }

    #ig-feed .instagram_gallery a:nth-child(1),
    #ig-feed .instagram_gallery a:nth-child(2) {
        display: inline-block;
    }

}

@media all and (max-width:600px) {

    .feed-holder:before {
        padding-top: 40%;
    }
    
    #ig-feed #cartoon {
        left: 5.2%;
        /*width: 48%;*/
        width: 46%;
    }

    #ig-feed ul {
        right: 5.3%;
        /*height: 30vw;*/
        height: 40vw;
        flex-direction: column;
    }

    #ig-feed li {
        height: 40vw;
        width: 40vw;
    }

    #ig-feed .instagram_gallery a {
        width: 100%;
        height: 100%;
    }

    #ig-feed li:nth-child(2), #ig-feed li:nth-child(3) {
        display: none;
    }

    .feed-holder:before {
        /*padding-top: 40%;*/
        padding-top: 50%;
    }

}

@media all and (max-width:896px) and (orientation: landscape) {

    #ig-feed li:nth-child(2) {
        display: none;
    }

}


/* NEWS GRID */
/* ------------------- */

@media all and (max-width:900px) {

    .news {
        width: 89.4%;
        margin: 4rem auto 0;
    }

    .constrain-width .masongrid {
        width: 100%;
    }

    .news .masongrid .grid-sizer,
    .news .masongrid .cell {
        width: 49.71%;
    }

    .news .masongrid .cell {
        margin-bottom: 7% !important;
    }

}

@media all and (max-width:625px) {

    .news .masongrid .grid-sizer,
    .news .masongrid .cell {
        width: 100%;
    }

    .news .masongrid .cell {
        margin-bottom: 34px !important;
    }

    .news .masongrid figcaption {
        width: 88%;
        min-width: 0;
    }

}


/* NEWS POST DETAIL */
/* ------------------- */

@media all and (max-width:950px) {

    .post-hero img {
        display: block;
        margin: auto;
    }

    .post-hero .info {
        display: block;
        width: 89.4%;
        text-align: center;
        margin: 2rem auto;
    }

    .post-hero h1 {
        text-align: center;
    }

}

@media all and (max-width:768px) {

    .post-hero img {
        display: block;
        margin: auto;
    }

    .post-hero .info {
        display: block;
        width: 89.4%;
        max-width: none;
        text-align: center;
        margin: 2rem auto;
    }

    .post-hero h1 {
        text-align: center;
    }

    .post-hero img {
        width: 100%;
    }

    .post-content {
        padding-bottom: 14.5vw;
    }

    .post-content p,
    .post-content h1,
    .post-content h2,
    .post-content h3 {
        width: 100%;
    }

}

@media all and (max-width:500px) {

    .post-content {
        max-width: none;
        width: 100%;
    }

    .post-content h1 + p {
        padding-top: 3em;
    }

}