/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

html {
    font-size: 1em;
    line-height: 1.4;
}

body {
    margin: 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

h1 {
    margin: 0;
    font-family: 'Karla', sans-serif;
    font-size: 28px;
    font-weight: 300;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

body {
    font: 16px/26px 'Karla', sans-serif, Helvetica, Helvetica Neue, Arial;
}

.wrapper {
    width: 100%;
    margin: 0;
}

.dialog-window {
    min-height: 280px;
    max-width: 566px;
    margin: 0 auto;
    background: #ffffff;
    margin-top: 175px;
    position: relative;
    max-height: calc(100% - 200px);
    overflow-y: auto;
}

.dialog-container {
    width: 100%;
    position: fixed;
    height: 100%;
    top: 0;
    z-index: 10000;
}

.contact-content {
    margin: 0 auto;
    width: 325px;
}

div#contact-container {
    min-height: 200px !important;
}

.dialog-window>p {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 40px;
}

.dialog-window>h2 {
    text-align: center;
    padding: 20px !important;
    font-weight: 400;
}

.btn-close-dialog {
    position: absolute;
    top: 0;
    right: 5px;
    cursor: pointer;
}

img.instragram-icon {
    margin-bottom: 20px;
}

.btn-mobile-menu {
    display: none;
}

/* ==============
    MOBILE: Menu
   ============== */

@media (max-width: 768px) {
    .left-nav, .right-nav { 
        display: none;
    }
    .header-container>header.wrapper {        
        justify-content: center  !important;
    }
    
    .btn-mobile-menu {
        position: absolute;
        top: 20px;
        left: 20px;
        width: 22px;
        height: 22px;
        cursor: pointer;
        display: block !important;
    }


    .btn-mobile-menu .rectangle {
    position: absolute;
    left: 0%;
    right: 0%;
    top: 0%;
    bottom: 0%;

    border: 2px solid #BDBDBD;
    box-sizing: border-box;
    }


    .btn-mobile-menu .ellipse {

    position: absolute;
    left: 17.86%;
    right: 17.86%;
    top: 17.86%;
    bottom: 17.86%;

    border: 2px solid #BDBDBD;
    box-sizing: border-box;
    border-radius: 10px;

    }
    
    .mobile-menu-container {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #fff;
		z-index: 1000;
    }

    .mobile-menu-container>* {
        text-align: center;
    }

    .mobile-menu-container h1 {
        margin-top: 17px;
    }

    .mobile-menu-container ul {
        list-style: none;
    }
    
}


/* ==============
    MOBILE: Main
   ============== */

@media (max-width: 768px) {
    .trip-container {
        margin-left: 0px !important;
        margin-right: 0px !important;
    }
    div.dialog-window {
        margin-top: 100px !important;
    }
}

@media (max-width: 630px) {
    div.dialog-window {
        margin-left: 20px;
        margin-right: 20px;
    }
}


/* ===============
    ALL: IE Fixes
   =============== */


/* ==========================================================================
   NAVIGATION
   ========================================================================== */

nav ul {
    list-style: none;
    display: flex;
    margin: 10px 0;
    padding: 0;
    font-size: 14px;
    font-family: 'Karla', sans-serif;
}

nav.left-nav ul li {
    margin-left: 80px;
}

nav.right-nav ul li {
    margin-right: 80px
}

a {
    text-decoration: underline;
    color: #222;   
}

.header-container {
    height: 60px;
    position: fixed;
    width: 100%;
    z-index: 1000;
    background: #fff0;
}

.header-container>header.wrapper {
    display: flex;
    height: 100%;
    justify-content: space-between;
    align-items: center;
}

.header-container>header>h1.title {
    cursor: pointer;
    width: 100%;
    text-align: center;
}

nav, .btn-mobile-menu {
    position: absolute;
}

nav.right-nav {
    right: 0;
}

.image-polaroid::after {
    background: black;
    width: 100px;
    height: 100px;
}

/* ==========================================================================
   Main Container - Body
   ========================================================================== */

.main-container {
    margin-top: 60px;
    position: absolute;
	width: 100%;
}

.trip-container {
    display: grid;
    grid-template-columns: repeat(8, 12.5%);
    grid-template-rows: repeat(30, auto);
    justify-items: center;
    grid-row-gap: 20px;
    margin-top: 20px;
    margin-left: 30px;
    margin-right: 30px;
    text-align: center;
}
.trip-container>div {
    grid-column: 1 / span 8;
}



/* ==========================================================================
   Images - 1366px
   ========================================================================== */

@media (min-width: 769px){
    img.image-polaroid {
        max-width: 380px !important;
    }

    img.image-polaroid.wide {
        max-width: 100% !important;
        max-height: 380px !important;
    }
    
    .trip3 .row-3>div:first-child {
        grid-column: 1 / span 9;
    }
    .trip3 .row-3>div:last-child {
        grid-column: 10 / span 11;
    }
}

img.image-35mm {
}

img.image-polaroid, img.image-process {
    height: 420px;
    max-height: 420px;
}

img.image-35mm {
    height: 422px;
    max-height: 422px;
}

img.image-35mm.portrait {
    max-height: 642px;
}

img.image-8x10 {
    height: 496px;
}

img.image-pinhole {
    height: 768px;
    grid-column: 1 / span 8;
    max-height: 85vh;
}

img.image-mini-overlay {
    margin-bottom: 60px;
}

img.image-super-wide {
    height: 280px;
}

img.image-pinhole-half { 
    max-width: 100%;
    height: auto;
}
}

img.image-pinhole-wide { 
    height: 540px;
}

img.image-process-third, img.third-width, .trip-container img {
    max-width: 100%;
    height: auto !important;
}

.trip-container .row-1 {
    grid-row: 1;
}
.trip-container .row-2 {
    grid-row: 2;
}
.trip-container .row-3 {
    grid-row: 3;
}
.trip-container .row-4 {
    grid-row: 4;
}
.trip-container .row-5 {
    grid-row: 5;
}
.trip-container .row-6 {
    grid-row: 6;
}
.trip-container .row-7 {
    grid-row: 7;
    display: grid;
    justify-items: center;
}
.trip-container .row-8 {
    grid-row: 8;
}
.trip-container .row-9 {
    grid-row: 9;
}
.trip-container .row-10 {
    grid-row: 10;
    display: grid;
}
.trip-container .row-11 {
    grid-row: 11;
}
.trip3.trip-container .row-11 {
    grid-template-columns: 110px auto 220px 180px auto auto auto
}
.trip-container .row-12 {
    grid-row: 12;
}
.trip-container .row-13 {
    grid-row: 13;
    grid-template-columns: auto auto 50px 50px 80px auto auto
}
.trip-container .row-14 {
    grid-row: 14;
    display: grid;
}
.trip-container .row-15 {
    grid-row: 15;
}
.trip-container .row-16 {
    grid-row: 16;
}
.trip-container .row-17 {
    grid-row: 17;
}
.trip-container .row-18 {
    grid-row: 18;
}
.trip-container .row-19 {
    grid-row: 19;
    display: flex;
}
@media (max-width: 768px) {
    .trip-container .row-19 {
    flex-direction: column;
}
}
.trip-container .row-20 {
    grid-row: 20;
}
.trip-container .row-21 {
    grid-row: 21;
}
.trip-container .row-22 {
    grid-row: 22;
}
.trip-container .row-23 {
    grid-row: 23;
}
.trip-container .row-24 {
    grid-row: 24;
}
.trip-container .row-25 {
    grid-row: 25;
}
.trip-container .row-26 {
    grid-row: 26;
}
.trip-container .row-27 {
    grid-row: 27;
}
.trip-container .row-28 {
    grid-row: 28;
}
.trip-container .row-29 {
    grid-row: 29;
}
.trip2.trip-container .row-29 {
    display: grid;
    justify-items: center;
    grid-template-columns: auto 20px auto 20px auto;
}
.trip-container .row-30 {
    grid-row: 30;
}
.trip-container .row-31 {
    grid-row: 31;
}
.trip-container .row-32 {
    grid-row: 32;
}
.trip-container .row-33 {
    grid-row: 33;
}
.trip-container .row-34 {
    grid-row: 34;
}
.trip-container .row-35 {
    grid-row: 35;
}
.trip-container .row-36 {
    grid-row: 36;
}
.trip-container .row-37 {
    grid-row: 37;
}
.trip-container .row-38 {
    grid-row: 38;
}
.trip-container .row-39 {
    grid-row: 39;
}
.trip-container .row-40 {
    grid-row: 40;
}
.trip-container .row-41 {
    grid-row: 41;
    grid-template-columns: auto auto 130px auto auto;
}
.trip-container .row-42 {
    grid-row: 42;
}
.trip-container .row-43 {
    grid-row: 43;
}
.trip-container .row-44 {
    grid-row: 44;
}
.trip-container .row-45 {
    grid-row: 45;
}

@media (max-width: 1000px) {
    nav.left-nav ul li {
        margin-left: 50px;
    }
}


@media (min-width: 769px) {
.trip3.trip-container .row-18 {
    margin-right: 200px;
}
.trip2.trip-container div.row-23 {    
    grid-column: 1 / span 5 !important;
}
    img.justify-left {
        justify-self: flex-start;
    }

    img.justify-right {
        justify-self: flex-end;
    }

    .three-image-container .image-polaroid {
        width: 100%;
    }
    .trip2>.row-2 {
        justify-self: flex-start;
    }
    .row-10 .image-overlay-container, .row-13 .image-overlay-container, .row-13 .image-process {
        grid-row: 1 !important;
    }
    .row-10 .image-process {
        grid-row: 1 !important;
    }
}

.image-process {
    //max-width: 320px !important;
}
img.image-process.wide {
    max-height: none !important;
    max-width: 420px !important;
}

@media (max-width: 768px) {   
    .image-polaroid, .image-35mm, .image-process {
        max-width: 70% !important;       
    }
    .image-pinhole {
        max-width: 90% !important;
    }
}

.image-container-2>div:first-child {
    margin-bottom: 30px;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


.text-overlay-container>p {
    margin: 0;
    margin-left: 50px;
}

.image-overlay-container {
    max-height: 95vh;
    position: relative;
}

.text-overlay-container {
    position: absolute;
    opacity: 0;
    transition: opacity 0.3s;
    width: 100%;
    height: 100%;
    text-align: left;
    background: #ffffff6b;
}

.text-overlay-container>p:first-child {
    margin-top: 50px;
}

    .image-overlay-container:hover p {
        display: block;
    }

    .image-overlay-container:hover {
        background: #ffffff75 !important;
    }

    .text-overlay-container:hover {
        opacity: 1;
    }


.grid {
    display: grid;
}

.justify-center {
    justify-self: center;
}

.two-image-container, .two-image-container img.image-polaroid {
    width: 100%;
}

.margin-right {
    margin-right: 10px;
}

.margin-left {
    margin-left: 10px;
}

.justify-left {
    justify-self: flex-start;
}

.justify-right {
    justify-self: flex-end;
}
.columns-20, .two-image-container.columns-20 {
    grid-template-columns: repeat(20, 5%);
}
.columns-5 {
    grid-template-columns: auto 20px auto 20px auto;
}

.row-29.justify-right {
    grid-column: 1 / span 4;
}
.row-29.justify-left {
    grid-column: 5 / span 4;
}