/**
PhotosNear.me Style
**/

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
    display: block;
}

html {
    font-size: 100%;
    min-height: 100%;
    /*overflow-y: scroll;*/
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
    color: #2D2930;
    background: #F8FFFF url(img/bg.png);
    /*background: url(img/bg.png), -moz-linear-gradient(left, #f1f7fa 0%, #f8ffff 25%, #f8ffff 75%, #f1f7fa 100%);
    background: url(img/bg.png), -webkit-gradient(linear, left top, right top, color-stop(0%,#f1f7fa), color-stop(25%,#f8ffff), color-stop(75%,#f8ffff), color-stop(100%,#f1f7fa));
    background: url(img/bg.png), -webkit-linear-gradient(left, #f1f7fa 0%, #f8ffff 25%, #f8ffff 75%, #f1f7fa 100%);
    background: url(img/bg.png), -o-linear-gradient(left, #f1f7fa 0%, #f8ffff 25%, #f8ffff 75%, #f1f7fa 100%);
    background: url(img/bg.png), -ms-linear-gradient(left, #f1f7fa 0%, #f8ffff 25%, #f8ffff 75%, #f1f7fa 100%);
    background: url(img/bg.png), linear-gradient(left, #f1f7fa 0%, #f8ffff 25%, #f8ffff 75%, #f1f7fa 100%);*/
}

body,
button,
input,
select,
textarea {
    font-family: sans-serif;
}

img {
    border: 0;
    -ms-interpolation-mode: bicubic;
}

a {
    color: #00e;
}
a:visited {
    color: #551a8b;
}
a:focus {
    outline: thin dotted;
}
a:hover,
a:active {
    outline: 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: bold;
}

blockquote {
    margin: 1em 40px;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

pre,
code,
kbd,
samp {
    font-family: monospace, monospace;
    _font-family: 'courier new', monospace;
    font-size: 1em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

q {
    quotes: none;
}
q:before,
q:after {
    content: '';
    content: none;
}

small {
    font-size: 75%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul,
ol {
    margin: 1em 0;
    padding: 0 0 0 40px;
}

dd {
    margin: 0 0 0 40px;
}

nav ul,
nav ol {
    list-style: none;
}

button,
input,
select,
textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
    *vertical-align: middle;
}

button,
input {
    line-height: normal;
    *overflow: visible;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
    -webkit-appearance: button;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

h1 {
    font-size: 2em;
    font-family: "myriad-pro-1", "myriad-pro-2", sans-serif;
    font-weight: 600;
    text-shadow: 0 1px 0 #fff;
    padding-left: 50px;
}
.wf-loading h1 {
    visibility: hidden;
    opacity: 0;
}
.wf-active h1,
.wf-inactive h1 {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0.50s;
    -moz-transition: opacity 0.50s;
    transition: opacity 0.50s;
}
h1 a:link,
h1 a:visited {
    color: #2D2930;
    text-decoration: none;
}

/* http://developer.yahoo.com/yui/3/cssgrids/ */
.layout {
    letter-spacing: -0.31em; /* webkit: collapse white-space between units */
    *letter-spacing: normal; /* reset IE < 8 */
    word-spacing: -0.43em;   /* IE < 8 && gecko: collapse white-space between units */
}
.layout > *,
.layout .unit {
    display: inline-block;
    zoom: 1; *display: inline; /* IE < 8: fake inline-block */
    letter-spacing: normal;
    word-spacing: normal;
    vertical-align: top;
}

.loading {
    min-height: 32px;
    min-width: 32px;
    background: url(img/spinner.gif) no-repeat center;
}

#wrap {
    margin: auto;
    width: auto;
    max-width: 880px;
    padding: 20px;
}
#wrap.loading {
    position: absolute;
    width: 100%;
    max-width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
#wrap.loading > * {
    display: none;
}

#logo {
    display: inline-block;
    zoom: 1; *display: inline;
    position: relative;
    background: url(img/cross_hair.png) center bottom no-repeat;
    width: 42px;
    height: 54px;
    margin: 0 12px -17px -50px;
}
#logo .pin {
    display: block;
    position: relative;
    margin: 0 auto;
    background: url(img/pin.png) center top no-repeat;
    visibility: hidden;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    transform: translateY(-100%);
    width: 18px;
    height: 36px;
}
#logo .pin-shadow {
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    background: url(img/pin_shadow.png) right bottom no-repeat;
    visibility: hidden;
    -webkit-transform: translate(50%, -50%);
    -moz-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    right: -8px;
    height: 35px;
}
.located #logo .pin,
.located #logo .pin-shadow {
    visibility: visible;
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    transform: translate(0);
    -webkit-transition: -webkit-transform ease-out 0.25s;
    -moz-transition: -moz-transform ease-out 0.25s;
    transition: transform ease-out 0.25s;
}

#location {
    font-weight: 400;
    color: #75607F;
}

.no-location {
    display: block;
    font-size: 150%;
    text-align: center;
    margin: 0 auto;
    padding: 1em 0;
}

.grid {
    width: 100%;
}
.grid ul {
    margin: 0 -5px;
    padding: 0;
    word-spacing: inherit;
}
.grid .photo { padding: 5px; }
.grid .photo a {
    display: block;
    position: relative;
    padding: 2px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: #fff;
    width: 75px;
    height: 75px;
}
.grid .photo img {
    display: block;
    width: 100%;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}
.grid .selected a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff url(img/spinner.gif) center no-repeat;
    opacity: 0.5;
}
.grid .selected img { opacity: 0.5; }

.lightbox {
    width: 100%;
    text-align: center;
}
.lightbox-nav {
    margin: 0;
    padding: 0;
}
.lightbox-nav .prev,
.lightbox-nav .next {
    position: absolute;
    top: 0;
    width: 10%;
    height: 100%;
}
.lightbox-nav .prev {
    left: 0;
}
.lightbox-nav .next {
    right: 0;
}
.lightbox-nav a {
    display: block;
    height: 100%;
    text-indent: -9999px;
}
.lightbox .photo {
    position: relative;
    display: inline-block;
    zoom: 1; *display: inline;
    border: #fff 4px solid;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    background-color: #fff;
}
.lightbox .photo img {
    display: block;
    max-width: 100%;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.lightbox .photo-info {
    position: absolute;
    left: 0;
    bottom: 24px;
    width: 100%;
    color: #fff;
    text-align: left;
    background: #222;
    background: rgba(0,0,0, 0.65);
}
.lightbox .photo-info a:link,
.lightbox .photo-info a:visited {
    color: #fff;
    text-decoration: none;
}
.lightbox .photo-title {
    font-family: "myriad-pro-1", "myriad-pro-2", sans-serif;
    font-weight: 400;
    padding: 0 10px;
}
.lightbox .loading img {
    visibility: hidden;
}
.lightbox .loading .photo-info {
    display: none;
}

@media only screen and (min-width: 0px) {

    h1 {
        font-size: 1.5em;
        padding-left: 41px;
    }

    #wrap {
        margin: 5px 0;
        padding: 0;
    }

    #header {
        margin: 0 10px;
    }

    #logo {
        background-size: 32px 20px;
        width: 32px;
        height: 38px;
        margin: 0 9px -14px -41px;
    }
    #logo .pin {
        background-size: 14px 27px;
        width: 14px;
        height: 27px;
    }
    #logo .pin-shadow {
        background-size: 24px 17px;
        right: -6px;
        height: 27px;
    }

    .grid ul { margin: 0 6px; }
    .grid .photo { padding: 4px; }
    .grid .photo a {
        width: 66px;
        height: 66px;
    }

    .lightbox .photo-info {
        bottom: 14px;
    }
    .lightbox .photo-title {
        font-size: 1.25em;
    }

}

/* iPhone in portriat mode gets a smaller heading */
@media only screen and (max-device-width: 480px) and (max-width: 320px) {

    h1 {
        font-size: 1em;
        padding-left: 27px;
    }

    #logo {
        background-size: 21px 13px;
        width: 21px;
        height: 25px;
        margin: 0 6px -9px -27px;
    }
    #logo .pin {
        background-size: 9px 18px;
        width: 9px;
        height: 18px;
    }
    #logo .pin-shadow {
        background-size: 16px 11px;
        right: -4px;
        height: 18px;
    }

    .grid .photo a {
        width: 65px;
        height: 65px;
    }

    .lightbox .photo-title {
        font-size: 1em;
    }

}

/* iPad portriat */
@media only screen and (min-width: 768px) {

    h1 {
        font-size: 2em;
        padding-left: 50px;
    }

    #wrap {
        margin: auto;
        padding: 20px;
    }

    #logo {
        background-size: auto;
        width: 42px;
        height: 54px;
        margin: 0 12px -17px -50px;
    }
    #logo .pin {
        background-size: auto;
        width: 18px;
        height: 36px;
    }
    #logo .pin-shadow {
        background-size: auto;
        right: -8px;
        height: 35px;
    }

    .grid ul { margin: 0 -5px; }
    .grid .photo { padding: 5px; }
    .grid .photo a {
        width: 68px;
        height: 68px;
    }

    .lightbox .photo-info {
        bottom: 24px;
    }
    .lightbox .photo-title {
        font-size: 1.5em;
    }

}

@media only screen and (min-width: 880px) {

    #wrap { max-width: 880px;}

    .grid .photo a {
        width: 75px;
        height: 75px;
    }

}

@media
only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (-o-min-device-pixel-ratio: 3/2),
only screen and (min-device-pixel-ratio: 1.5) {

    body {
        background: #F8FFFF url(img/bg.png);
        background-size: 50px 50px;
    }

    .loading,
    .grid .selected a:after {
        background-image: url(img/spinner-2x.gif);
        background-size: 32px 32px;
    }

    #logo { background-image: url(img/cross_hair-2x.png); }
    #logo .pin { background-image: url(img/pin-2x.png); }
    #logo .pin-shadow { background-image: url(img/pin_shadow-2x.png); }

}
