/* FONT FACE */

@font-face {
    font-family: 'Source Serif Pro';
    src: url(/fonts/SourceSerifPro-Regular.ttf);
    font-style: normal;
    font-weight: 400;
}

@font-face {
    font-family: 'Source Serif Pro';
    src: url(/fonts/SourceSerifPro-Bold.ttf);
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: 'Source Serif Pro';
    src: url(/fonts/SourceSerifPro-Italic.ttf);
    font-style: italic;
    font-weight: 400;
}

@font-face {
    font-family: 'Source Serif Pro';
    src: url(/fonts/SourceSerifPro-BoldItalic.ttf);
    font-style: italic;
    font-weight: 700;
}



/* GENERAL */

body {
    font-family: 'Source Serif Pro', serif;
    font-size: 16px;
    line-height: 1.5em;
    color: #000;
    background-color: white;
    background-image: url("/img/BG_Pattern.jpg");
    background-repeat: repeat;
    text-align: left;
    margin-top: 0px !important;
    padding-top: 0px !important;
    width: 100%;

    height: auto !important; /* real browsers */
    height: 100%; /* IE6: treated as min-height*/
    top: 0px;
    overflow-y: scroll;

}

img {
    max-width: 100%;
}

h1 {
    width: 100%;
    text-align: center;
    font-size: 1.5em;
    font-style: italic;
    margin-top: 5px;
    margin-bottom: 20px;
    padding: 0 15px;
}

h1::before, h1::after {
    margin: 7px 20px 7px 20px;
    width: 50px;
    border-bottom: 1px solid black;
    display: inline-block;
    padding: 20px;
    content: " ";
    height: 2px;
}

h2 {
    width: 100%;
    text-align: center;
    font-size: 1.4em;
    font-style: italic;
    text-transform: uppercase;
    margin-bottom: 1px;
}

h2.user {
    text-transform: none;
    text-decoration: none;
    color: #888;
}

h3 {
    display: block;
    width: min-content;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-size: 1.4em;
    font-style: italic;
    text-transform: uppercase;
    padding-bottom: 15px;
    margin-bottom: 20px;
    border-bottom: 3px dotted black;
}

h4 {
    width: 100%;
    font-size: 1.4em;
    font-style: italic;
    text-transform: uppercase;
    margin-bottom: 1px;
    text-decoration: underline;
}

h5 {
    width: 100%;
    text-align: center;
    font-size: 1.8em;
    font-style: italic;
    text-transform: uppercase;
    text-decoration: underline;
    margin-bottom: 1px;
}

p {
    line-height: 1.3em;
    font-size: 1em;
}

b {
    font-weight: 700;
}

/* LINKS */

a:link, a:visited {
    text-decoration: underline;
    color: black;
}
a:hover, a:active {

}

a.clean:link, a.clean:visited {
    text-decoration: none;
    color: black;
}
a.clean:hover, a.clean:active {

}

a.under:link, a.under:visited {
    text-decoration: none;
    color: black;
}
a.under:hover, a.under:active {
    text-decoration: underline;
}

a.gray:link, a.gray:visited {
    text-decoration: underline;
    font-style: italic;
    color: #555555;
}
a.gray:hover, a.gray:active {

}

a.black:link, a.black:visited {
    text-decoration: underline;
    font-weight: 700;
    color: black;
}
a.black:hover, a.black:active {

}

a.orange:link, a.orange:visited {
    font-size: 1.5em;
    display: block;
    margin-bottom: 10px;
    text-decoration: underline;
    font-style: italic;
    color: #ff7b4d;
}
a.orange:hover, a.orange:active {

}

a.aDownload:link, a.aDownload:visited {
    display: block;
    display: block;
    margin-bottom: 10px;
    text-decoration: underline;
    color: #ff7b4d;
    font-size: 1.2em;
}
a.aDownload:hover, a.aDownload:active {

}

a.btnShop:link, a.btnShop:visited {
    background-color: #343a40;
    padding: 10px 15px;
    color:white;
    margin-left: auto;
    margin-right:auto;
    width: content-box;
    display: inline-block;
    text-decoration: none;
    min-width: 150px;
}
a.btnShop:hover, a.btnShop:active {
    background-color: #545c64;
}

p a:link, p a:visited {
    text-decoration: none;
    margin-top: 10px;
    margin-bottom: 40px;
    display:block;
    color: #fc6b45;
}
p a:hover {
    text-decoration: underline;
}

/* GENERAL */

.stoerer {
    position: absolute;
    right: -25px;
    bottom: -25px;
    max-width: 27vw;
}

.stoererMobile {
    position: absolute;
    right: -10px;
    bottom: -10px;
    max-width: 35vw;
}

.dottedLine {
    border-bottom: 3px dotted #777;
    margin-top: 50px;
    margin-bottom: 50px;
}

.pointer {
    cursor: pointer;
}

.ddInput {
    border: 0;
    border-bottom: 1px solid black;
    border-radius: 0;
    padding: 0px;
    margin: 0px;
    height: auto;
    margin-top: 6px;
}

.ddButton {
    border-radius: 0px;
}

textarea:focus,
textarea.form-control:focus,
.navbar-toggler:focus,
.navbar-toggler:active,
.navbar-toggler-icon:focus,
input.form-control:focus,
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=number]:focus,
[type=text].form-control:focus,
[type=password].form-control:focus,
[type=email].form-control:focus,
[type=tel].form-control:focus,
[contenteditable].form-control:focus {
    box-shadow: none;
    outline: none;
}

.btn:focus,.btn:active {
    outline: none !important;
    box-shadow: none;
}

.ddTextArea {
    margin-top: 2px;
    width: 100%;
    height: 200px;
    border: 0px;
    resize: none;
    background-image: url("../img/lineBG.png");
    background-repeat: repeat;
    background-position-y: -2px;
    font-size: 1rem;
    font-family: "Source Serif Pro";
    line-height: 40px;
}

.textAreaLines {

}

.hidInput {
    display: none;
}

/* MENU */

.menuUnderscore {
    display: block;
    height: 1px;
    background-color: black;
    width:0px;
    position:relative;
}

.menuItem {
    font-style: italic;
}

.ddBadge {
    position: absolute;
    top: 4px;
    right: -5px;
    background-color: #fc8363;
}

.nav-item {
    padding-right: 20px;
}

/* INFO */

.infoText {
    padding-left:40px;
    padding-right:40px;
}

.slick-dots {
    bottom: -20px !important;
}

.slick-dotted.slick-slider {
    margin-bottom: 0px !important;
}

/* SIMPLE MDE */
.CodeMirror {
    height: 100px;
    min-height: 150px;
}

/* ICONS */

.icon {
    position: relative;
    top: 5px;
}

/* BANNER */

bannerContainer {
    overflow: hidden;
}

.bannerItem {
    /*width: 100%;*/
    /*height: 700px !important;*/
}

.bannerImg {
    width: 100%;
    max-width: none;
    margin-left: 0%;
}

.headerImg {
    height: 110px;
    text-align: center;
}

/* PRODUCTS */

.sortButton {
    padding: 2px 5px;
}

.sortButtonSel {

    border-bottom: 1px solid #888;
}

.productImg {
    display: block;
    background-color: #ebe9e8;
    white-space: nowrap;
    padding: 20px;
    width: 280px;
    height: 280px;
    max-width: 280px;
    margin-left: auto;
    margin-right: auto;
}

.userGalleryImg {
    display: block;
    background-color: #ebe9e8;
    white-space: nowrap;
    padding: 20px;
    width: 450px;
    height: 450px;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
}

.productImgBig {
    display: block;
    background-color: #ebe9e8;
    white-space: nowrap;
    padding: 20px;
}

.productDesc {

}

.helper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    width:0;
}

.prodThumb {
    display: inline-block;
    vertical-align: middle;
    width: 100%;

}

.landscape {
    width: 100%;
    display: inline-block;
}

.portrait {
    height: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.thumbDesc {
    color: #555555;
    font-size: 0.9em;
    text-align: center;
    font-style: italic;
    display: block;
}

.thumbPrice {
    text-align: center;
    font-size: 1em;
    font-style: italic;
    display: block;
}

.thumbPaper {
    text-align: center;
    font-size: 0.9em;
    font-style: italic;
    display: block;
    color: #555;
}

.thumbPrice::before, .thumbPrice::after {
    margin: 3px 10px 3px 10px;
    width: 20px;
    border-bottom: 1px solid black;
    display: inline-block;
    content: " ";
    height: 2px;
}

.prodImageFull {
    margin-bottom: 15px;
    width: 100%;
}

.soldOut {
    color: #fc8363;
    font-weight: bold;
}

.soldOutButton {
    background-color: #76777c;
    color: #aaaeb1;
    padding: 10px 15px;
    margin-left: auto;
    margin-right:auto;
    width: content-box;
    display: inline-block;
    cursor: pointer;
}

.soldOutBadge {
    position: absolute;
    right: 0px;
    top: 0px;

}

.buyButton {
    background-color: #343a40;
    padding: 10px 15px;
    color:white;
    margin-left: auto;
    margin-right:auto;
    width: content-box;
    display: inline-block;
    cursor: pointer;
}

.cartThumb {
    width:150px;
}

/* FOOTER */
.horizontalLine {
    border-bottom: 1px solid black;
    border-top: 2px solid black;
    height: 8px;
    width: 100%;
}

.footerCopyright {
    font-style: italic;
    font-size: 1.4em;
    text-align: center;
}

.crList {

}

.crListItem {
    display: inline-block;
}

.gimmeDot::after {
    content: "·";
}

/* BOOTSTRAP OVERWRITES */

.btn-group-sm>.btn, .btn-sm {
    width: 18px;
    height: 17px;
    padding: 5px 0px;
    margin: 1px;
    line-height: 0.5;
    border-radius: .2rem;
    font-weight: bold;
}

.slick-dots li {
    width: 10px !important;
}

.toast {

}

/* GAME */
.gameContainer {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%;
}

.gameIframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.fullscreen-button {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 5px 5px;
    background-color: #00000066;
    color: white;
    border: none;
    z-index: 10;
    font-size: 14px;
    border-radius: 7px;
    max-width: 60px;
    opacity: 0.5;
}

.fullscreen-button:hover {
    opacity: 1;
}

/* ADMIN */

.uploader {
    height: 105px;
    border: 2px dotted #AAAAAA;
    background-color: #EEEEEE;
    text-align: center;
    padding: 15px;
    cursor: pointer;
    margin-left: auto;
    margin-right: auto;
    line-height: 2.5em;
}

.disabledButton {
    color: #AAAAAA;
}

.hideMe {
    display:none;
}

.ddForm {
    padding: 10px;
    border-radius: 5px;
}

.markForm {
    background-color: #c4efb6;
}

.favIcon {
    height: 25px;
    width: 25px;
    z-index: 1;
    position: absolute;
    top: 10px;
    left: 25px;
    color: gray;
    cursor: pointer;
    vertical-align: top;
    background-color: white;
    border-radius: 3px;
    padding: 0px 5px;
}

.favSelect {
    background-color: #fd9800;
    color: white;
    cursor: default;
}

.delIcon {
    height: 25px;
    width: 25px;
    z-index: 1;
    position: absolute;
    top: 9px;
    right: 25px;
    cursor: pointer;
    vertical-align: top;
    color: white;
    background-color: #bd0000;
    border-radius: 3px;
    padding: 0px 5px;
}

.adminPreview {
    position: relative;
}

.inActive {
    opacity: 0.5;
}

/* COOKIE MODAL */

.cookieModalContainer {

}

.cookieModal {
    background-color: #1b1e21;
    color: white;
    width: 100%;
    position: fixed;
    bottom: -800px;
}

.cookieModalText {

}

.cookieModalOkay {

}

@media screen and (max-width: 767px) {

    body {
        font-size: 0.9em;
        /*>background-image: none;*/
        background-color: ghostwhite;
    }

    h1::before, h1::after {
        margin: 0;
        width: 0px;
        border-bottom: 0px solid black;
        display: inline-block;
        padding: 0px;
        content: "";
        height: 0px;
    }

    h2 {
        font-size: 1.2em;
    }



    .nav-item {
        margin: 6px 0px;
        font-size: 1.3em;
    }

    .bannerContainer {
        position: relative;
        overflow:hidden;
        height: 240px;
    }

    .bannerImg {
        height: 100%;
        width: auto;
        position: absolute;
        top: -9999px;
        bottom: -9999px;
        left: -9999px;
        right: -9999px;
        margin: auto;

    }

    .footerCopyright {
        font-size: 0.9em;
    }

    .crList {
        margin:0;
        padding: 0;
    }

    .crListItem {
        display: block;
    }

    .gimmeDot::after {
        content: "";
    }

    .productImg {
        height: auto;
        max-width: 364px;
        width: auto;
        margin-left: auto;
        margin-right: auto;
    }

    .userGalleryImg {
        height: auto;
        max-width: 450px;
        width: auto;
        margin-left: auto;
        margin-right: auto;
    }

    .headerImg {
        height: auto;
        padding: 10px 20px;
        margin-top: 50px;
    }

    .dottedLine {
        border-bottom: 3px dotted #777;
        margin-top: 30px;
        margin-bottom: 30px;
        margin-left: 20px;
        margin-right: 20px;
    }

    .mobileCartSymbol {
        position: relative;
        top: -4px;
        margin-left: auto;
    }

    .cartThumb {
        width:auto;
    }

    .modal {
        margin-top: 70px;
    }

    .soldOutBadge {
        right: 8px;
    }
}

@media screen and (max-width: 426px) {
    p {
        text-align: justify !important;
    }

    span.pCenter p {
        text-align: center !important;
    }
}