/**
 * Theme Name: Dom
 * Description: Generatepress Child Theme
 * Author: Dom Hurr
 * Author URI: https://domhurr.com/
 * Template: generatepress
 * Version: 1.0.0
 * @package aa
 */

header#masthead {
    box-shadow: inset 0px -10px 20px 0px black;
}

#content {
    background-color: #262626;
    overflow-x: hidden;
}

.elementor-section-wrap > section:first-of-type {
    padding-top: 0px;
    /* background-color: #121212 !important; */
}
.elementor-section-wrap > section {
    padding-top: 20px;
    padding-bottom: 30px;
    /* padding-left: 70px; */
    padding-left: 50px;
    /* padding-right: 20px; */
    padding-right: 50px;
    /* shadow from the sidemenu effect */
    /* box-shadow: inset 47px 0px 24px -20px #121212; */
}
@media (max-width:768px) {
    .elementor-section-wrap > section {
        padding-left: 20px;
        box-shadow: none;
    }
    .elementor-section-wrap > section:last-of-type::before {
        width: calc(100% + 20px + 20px);
        left:-20px;
    }
}
@media (max-width:360px) {
    .elementor-section-wrap > section {
        padding-left: 10px;
        padding-right: 10px;
        box-shadow: none;
    }
}
/* zig-zag */
/* .elementor-section-wrap > section:last-of-type::before {
    background: 
            linear-gradient(-45deg, #262626 16px,  transparent 0), 
            linear-gradient(45deg, #262626 16px, transparent 0);
    background-position: left top;
    background-repeat: repeat-x;
    background-size: 22px 32px;
    content: " ";
    display: block;

    height: 32px;
    width: calc(100% + 50px + 50px);

    position: relative;
    bottom: 52px;
    left:-50px;
} */
section.dom-light-bg p:first-of-type,
section.dom-leave-my-p-alone p:first-of-type {
    color: inherit;
}
p:first-of-type {
    color: rgba(255, 255, 255, 0.85);
}
h1 {
    letter-spacing: 3px;
    text-shadow: 1px 1px 1px black;
}
.elementor-testimonial-name {
    font-family: "Montserrat", sans-serif !important;
}
h2 {
    font-family: "Montserrat", sans-serif !important;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

img {
    border-radius: 2px !important;
}

/* Buttons */
.dom-link-button .elementor-button {
    position: relative;
    background-color: transparent !important;
    border-radius: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    letter-spacing: 0.7px;
}
.dom-link-button .elementor-button::after {
    content: "";
    border-top: 1px solid white;
    opacity: 0;
    transition: opacity 200ms;
    position: absolute;
    top: 40px;
    left: 0;
    width: 100%;
    height: 5px;
}
.dom-link-button .elementor-button:hover::after {
    opacity: 1;
}

.wpcf7-submit:hover,
.elementor-button:hover {
    background-color: #a43cbd !important;
}
.dom-link-button .elementor-button:hover {
    background-color: transparent !important;
}

.wpcf7-submit {
    background-color: #77228c !important;
    border-radius: 5px !important;
    display: inline-block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 50px !important;
    margin-bottom: 0px !important;
    box-shadow: 0px 0px 20px 0px #000000;
}
/* end Buttons */

em {
    font-style: normal;
    color: white;
}
.dom-light-bg em {
    color: black;
    font-weight: bold;
}
/* .elementor-drop-cap-letter {
    color: #a43cbd;
    font-weight: bold;
} */

/* blog */
.feedzy-rss ul {
    display: flex;
    flex-wrap: wrap;
}
.feedzy-rss ul li {
    max-width: 450px;
    padding-top:0 !important;
    padding-bottom:0 !important;
}
.feedzy-rss ul li .rss_image .fetched {
    border-radius: 2px;
}
.feedzy-rss ul li .rss_content p {
    font-size: 80%;
    /* text-align: justify; */
}
#dom-latest-blog-posts .feedzy-rss .rss_item {
    border-bottom: none;
}
#dom-latest-blog-posts a {
    /* color: white; */
}
#dom-latest-blog-posts .title a {
    text-transform: uppercase;
    font-weight: normal;
}
#dom-latest-blog-posts p {
    padding-top:10px;
    color: #898989;
    letter-spacing: 0.5px;
}
/* end blog */

/* Gallery */
/* A lot of things are set to !important. This is because our theme CSS is being
loaded before Elementor CSS; as a result the styles here get overridden. !important
overrides it back. */
.gallery-section {
    /* background-image: url(../dom/images/brick-wall.png); */
    /* background-repeat: repeat; */
    
    /* in order to contrast with handwritten section */
    /* border-top: 4px solid #262626; */
    /* background-color: gray; */
}
.gallery-section > .elementor-container {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: none !important;
}
.dom-artwork-gallery .gallery {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    justify-content: space-evenly !important;
    /* background-image: url(../dom/images/brick-wall.png);
    background-repeat: repeat; */
    /* margin-left:-30px; */
    padding: 0px 50px 30px 50px !important;
    /* width: calc(100% + 60px); */
}
.dom-gallery-blurb {
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
}
/* .dom-artwork-gallery figure:first-of-type::before { */
    /* display: inline-block; */
    /* font-style: normal; */
    /* font-variant: normal; */
    /* text-rendering: auto; */
    /* -webkit-font-smoothing: antialiased; */
    /* font-family: "FontAwesome"; */
    /* font-weight: 900; */
    /* content: "\f005"; */
    /* font-size: 30px; */
    /* background-color: #f3c835; */
    
    /* position: absolute;
    top: -10px;
    left: 0;
    content: url(../dom/images/flame-sm.png);
    background-color: darkred;
    border-radius: 50%;
    color: #a78100;
    padding: 8px 10px;
    z-index: 2;
    line-height: 100%;
    box-shadow: 1px 1px 4px 0px black; */
/* } */
/* .dom-artwork-gallery figure:first-of-type::after {
    content: " \00a0 \00a0 POPULAR";
    top: -19px;
    left: calc(50% - 60px);
    background-color: #f3c835;
    border-radius: 5px;
    color: #a78100;
    padding: 0px 8px 0px 8px;
    z-index: 2;
    line-height: 23px;
} */
.dom-artwork-gallery figure {
    position: relative !important;
    /* background-color:#444; */
    /* background-color: red; */
    min-width: 260px !important;
    max-width: 260px !important;
    /* width:25%; */
    /* flex: 1; */
    margin-bottom:45px !important;
    margin-right: 10px !important;
    padding-top:10px !important;
    padding-right: 20px !important;
}
.dom-artwork-gallery .gallery-size-medium_large figure {
    min-width: 350px !important;
    max-width: 350px !important;
}
.dom-artwork-gallery figure .gallery-icon {
    /* background-color: black; */
    min-width: 260px !important;
    max-width: 260px !important;
    position: relative !important;
    z-index: 1 !important;
}
.dom-artwork-gallery .gallery-size-medium_large figure .gallery-icon {
    min-width: 350px !important;
    max-width: 350px !important;
}
.dom-artwork-gallery figure .gallery-icon img {
    /* box-shadow: 0px 0px 60px 14px black; */
    box-shadow: 0px 0px 60px 14px #262626 !important;
    /* border: 13px solid #121212; */
    
    /* border: 20px solid white; */
    /* border: 20px solid #fdfef6; */
    /* border: 2px solid gray; */
    /* outline: 13px solid #121212; */
    border-radius: 0px !important;
}
.dom-artwork-gallery figure figcaption {
    display: flex !important;
    flex-flow: column !important;
    /* color: #bbb; */
    /* color: #666; */
    /* color: #b636c1; */
    min-width: 260px !important;
    max-width: 260px !important;
    margin: auto !important;
    /* display: none; */
    position: relative !important;
    z-index: 0 !important;
}
.dom-artwork-gallery .gallery-size-medium_large figure figcaption {
    min-width: 350px !important;
    max-width: 350px !important;
}
/* below is needed for Font Awesome icon in ::before */
.dom-artwork-gallery figure figcaption h3::before {
    /* tag */
    /* general icon css */
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    /* icon-specific css */
    font-family: "FontAwesome"; 
    font-weight: 900; 
    content: "\f02b";
    position: absolute;
    top: 9px;
    left: 11px;
}
.dom-artwork-gallery figure figcaption h3 {
    /* color: #aaa; */
    /* background-color: black; */
    /* color: #b636c1; */
    padding-top:10px;
    /* font-weight: bold; */
    line-height: 100%;
    letter-spacing: -1px;
    /* margin-bottom:5px; */
    /* background-color: rgb(253,247,250); */
    /* background-color: rgb(251,240,220); */
    background-color: #262626;
    /* color: #7A6847; */
    /* color: #ADA087; */
    color: #898989;
    font-size: 14px;
    margin: auto;
    margin-top: 23px;
    padding: 3% 5%;
    letter-spacing: 0.2px;
    /* border-radius:0px 0px 5px 5px; */
    border-radius:5px;
    box-shadow: 1px 1px 5px 0px black;
    /* box-shadow: 0px 0px 20px -10px gray; */
    position: relative;
    padding-left: 31px;
}
.dom-artwork-gallery figure figcaption .gallery-item-description {
    background-color: #373737;
    padding: 10px;
    margin-top: 20px;
    border-radius: 5px;
    box-shadow: 1px 1px 5px 0px black;
}
.dom-artwork-gallery figure figcaption span {
    color: #898989;
    line-height: 150%;
    font-size: 90%;
    /* letter-spacing: -0.5px; */
    letter-spacing: 0.5px;
    margin-bottom:10px;
    padding: 0px 10px;
    display: block;
    text-align: left;
}
.dom-artwork-gallery figure figcaption button {
    /* margin-top: auto; */
    /* color: #222; */
    /* background-color: #bbb; */
    background-color: #262626;
    color: #b636c1;
    /* max-width: 200px; */
    margin: auto;
    /* padding: 5px 20px */
    border-radius: 3px;
    font-size: 15px;
    padding: 12px 24px;
    margin-top: 10px;
    width: 100%;
}
.dom-artwork-gallery.dom-nonhomepage-gallery figure figcaption,
.dom-artwork-gallery.dom-nonhomepage-gallery figure figcaption span,
.dom-artwork-gallery.dom-nonhomepage-gallery figure figcaption .gallery-item-description,
.dom-artwork-gallery.dom-nonhomepage-gallery figure figcaption button {
/*     display: none !important; */
}
.dom-artwork-gallery.dom-nonhomepage-gallery.prints-gallery figure figcaption,
.dom-artwork-gallery.dom-nonhomepage-gallery.prints-gallery figure figcaption button {
    display: block !important;
}
.dom-artwork-gallery.dom-nonhomepage-gallery.prints-gallery figure figcaption button {
    display: inline-block !important;
    padding: 2px 4px;
    font-size: 13px;
    width: auto;
}
.dom-artwork-gallery.dom-nonhomepage-gallery.prints-gallery figure figcaption button:hover {
    background-color: rgb(22,22,22); /* darken */
}
.dom-artwork-gallery.dom-nonhomepage-gallery.prints-gallery figure figcaption button.add-to-cart {
    float: right;
    margin-top: 0;
}
.dom-artwork-gallery.dom-nonhomepage-gallery.prints-gallery figure figcaption button.buy-now {
    float: right;
    margin-right: 5px;
    margin-top: 0;
}
h4#cart-top {
    margin-top: 100px;
    font-size: 25px;
    opacity: 0.5;
}
.remove-from-cart-button {
    padding: 0px 8px;
    margin-left: 10px;
}
#total-text {
    opacity: 0.5;
}
/* end gallery */

/* sidemenu */
.main-navigation .main-nav ul li a {
    padding: 0px 20px;
    z-index: 1;
    position: relative;
    text-align: center;
    letter-spacing: 2.5px;
    /* font-weight: bold; */
    padding-top: 20px;
    padding-bottom: 20px;
    line-height: 100%;
}
.main-navigation .main-nav ul li.current-menu-item a {
    color: #b636c1;
    font-weight: bold;
}
.main-navigation .main-nav ul li.current-menu-item a::before {
    content: "";
    width: calc(100% - 20px);
    height: 80%;
    /* background-color: black; */
    background-color: #121212;
    position: absolute;
    top: 10%;
    left: 10px;
    z-index: -1;
    border-radius: 10px;
    /* box-shadow: 0px 0px 20px 0px black; */
}
/* end sidemenu */

/* faqs */
.dom-faqs h3 {
    opacity: 0.8;
}
.dom-faqs p {
    opacity: 0.5;
}
/* end faqs */

.fa-facebook-square:hover {
    color: blue !important;
}
.fa-twitter-square:hover {
    color: #1da1f2 !important;
}
.fa-youtube-square:hover {
    color: red !important;
}

/* .gen-sidebar-nav {
    box-shadow: black 0px 0px 20px 0px !important;
    z-index: 99999999999 !important;
}
.site-footer {
    position: absolute !important;
    z-index: -4 !important;
    width: 100% !important;
} */

/* customer reviews / testimonials */
.elementor-testimonial-content {
    position: relative;
    z-index: 0;
    padding-left: 60px;
    padding-right: 40px;
}
.elementor-testimonial-content::before {
    content: "\201C";
    color: #515151;
    font-size: 100px;
    font-weight: 700;
    opacity: 0.5;
    position: absolute;
    top: -35px;
    left: -2px;
    z-index: -1;
}
/* end customer reviews / testimonials */

/* start price list calculator */
/* start order form */
#dom-price-list .item {
    color: white;
}
#dom-price-list tr > td:first-of-type  {
    width:50%;
}
#dom-price-list tbody tr.artwork-action {
    background-color: #333;
    border-bottom: 15px solid black;
}
#dom-price-list tbody tr.artwork-action td:first-of-type {
    padding: 5px 5px 5px 20px;
}
#dom-price-list tbody tr.artwork-action small {
    display: inline-block;
}
#dom-price-list tbody tr.artwork-action small a,
#dom-price-list tbody tr.artwork-action small a:visited 
{
    color: #ea65f6;
}
#dom-price-list .price-calculator-dimmed,
#dom-price-list .item tbody small {
    opacity: 0.6;
}
#dom-price-list .item thead {
    opacity: 0.5;
}
#dom-price-list table {
    color: white
}
#dom-price-list select,
form.wpcf7-form select,
#dom-price-list input {
    background-color: #666;
    color: white;
    border:none;
    transition: color .1s ease-in-out,background-color .1s ease-in-out;
    cursor: pointer;
}
#dom-price-list select,
#dom-price-list button,
form.wpcf7-form select {
    color: #b636c1;
    background-color: #262626;
}
#dom-price-list select:hover {
    background-color: #3f3f3f;
}
#dom-price-list select,
form.wpcf7-form select {
    /* Remove default browser styling of <select> */
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    
    padding: 10px 50px 10px 20px;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: right .7em top 50%;
    background-size: .65em auto;
    font-size: 120%
}
#dom-price-list select::-ms-expand {
    display: none;
}
#dom-price-list .numSubjects-button {
    font-size: 30px;
    width: 50px;
    height: 50px;
    margin: 0;
    padding: 0;
}
#dom-price-list .subtotal {
    text-align:left; 
    font-size: 200%; 
    background-color: transparent; 
    border:none; 
    color:white;
}

@media (max-width:1000px) {
    #dom-price-list tr > td:first-of-type  {
        width:100%;
    }
    #dom-price-list tr > td:first-of-type  {
        margin-top: 20px
    }
    #dom-price-list tr > td {
        display: block;
    }
}


form.wpcf7-form {
    text-align: center;
}
form.wpcf7-form p {
    /* clear: both; */
}
form.wpcf7-form textarea {
    width: auto;
}
form.wpcf7-form textarea,
form.wpcf7-form input[type="text"],
form.wpcf7-form input[type="email"] {
    background-color: white !important;
    color: black !important;
}
form.wpcf7-form textarea,
form.wpcf7-form input,
form.wpcf7-form select {
    /* float: right; */
    /* margin-top: -30px; */
    /* margin-bottom: 20px */
    margin-top: 10px;
    /* margin-bottom: 10px */
}
form.wpcf7-form label {
    color: #a0a0a0;
}
form.wpcf7-form .wpcf7-radio {
    margin-top: 10px !important;
    font-size: 120%;
    display: block
}
form.wpcf7-form .wpcf7-radio .wpcf7-list-item {
    margin: 1em 0 0 1em;
}
form.wpcf7-form .wpcf7-radio .wpcf7-list-item-label {
    color: #b636c1;
    cursor: pointer;
    position: relative;
    margin-left: 50px;
    height: 50px;
}
form.wpcf7-form .wpcf7-radio input[type="radio"] + .wpcf7-list-item-label::before {
    content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48" fill="white"><path d="M24 4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm0 36c-8.84 0-16-7.16-16-16S15.16 8 24 8s16 7.16 16 16-7.16 16-16 16z"/><path d="M0 0h48v48H0z" fill="none"/></svg>');
    width: 50px;
    height: 50px;
    position: absolute;
    top: -12px;
    left: -55px;
}
form.wpcf7-form .wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::before {
    content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48" fill="white"><path d="M24 14c-5.52 0-10 4.48-10 10s4.48 10 10 10 10-4.48 10-10-4.48-10-10-10zm0-10C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm0 36c-8.84 0-16-7.16-16-16S15.16 8 24 8s16 7.16 16 16-7.16 16-16 16z"/><path d="M0 0h48v48H0z" fill="none"/></svg>');
}
input[type="radio"] {
    opacity: 0;
}
#postage-cost {
    font-size: 120%;
}
#wpcf7-submit {
    font-size: 120%
}

form.wpcf7-form p:last-of-type { /* fragile implementation! */
    position: relative;
}
#submitButtonCover {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#submitButtonCover.disabled {
    display: none;
}
#submitButtonCover.enabled {
    display: block;
}
.dom-processing {
    opacity: 0.5;
}
/* end price list calculator */
/* end order form */
#faqs-page p {
    opacity: 1 !important;
    color: black !important;
}

.event-list .filterbar {
    display: none
}

/* Style single post */
body.single-post header h1 {
    margin-top: 20px;
}

body.single-post main {
    padding-right: 20px;
}

.wp-block-image figcaption {
    color: #919191;
}

.crp_related {
    margin-top: 50px;
}

body.single-post footer {
    margin-top: 50px;
}

nav.post-navigation {
    max-width: 800px;
    margin: 50px auto;
}

.nav-previous,
.nav-next {
    display: inline-block;
}
.nav-next {
    float: right;
}

/* prev post */
body.single-post .nav-previous .prev::before {
    content: '⟨';
    color: white;
    font-size: 50px;
}
body.single-post .nav-previous .prev a {
    border-radius: 5px;
    border: 2px solid;
    padding: 10px;
    position: relative;
    display: inline-block;
}
body.single-post .nav-previous .prev a::before {
    content: 'Previous Post';
    display: block;
    font-size: 130%;
    color: white;
}
/* end prev post */
/* next post */
body.single-post .nav-next .next::before {
    content: '⟩';
    color: white;
    font-size: 50px;
}
body.single-post .nav-next .next a {
    border-radius: 5px;
    border: 2px solid;
    padding: 10px;
    position: relative;
    display: inline-block;
}
body.single-post .nav-next .next a::before {
    content: 'Next Post';
    display: block;
    font-size: 130%;
    color: white;
}
/* end prev post */

body.single-post input[type="text"], 
body.single-post input[type="email"], 
body.single-post input[type="url"], 
body.single-post input[type="password"], 
body.single-post input[type="search"], 
body.single-post input[type="tel"], 
body.single-post input[type="number"], 
body.single-post textarea, 
body.single-post select {
    color: #fff;
    background-color: #333;
    border-color: #454545;
}

/* end Style single post */

/* For some reason the slideshow/lightbox has UI elements it didn't have before... 
*  so let's remove them!
*/
.elementor-lightbox header.elementor-slideshow__header,
.elementor-lightbox footer.elementor-slideshow__footer {
    display: none;
}

/* html[amp] body.home #portraits,
html[amp] body.home #pet-portraits,
html[amp] body.home #caricatures,
html[amp] body.home #houses-vehicles-landscapes
{
    display: none !important;
} */
