/*
Theme Name: Red Arch
Theme URI: http://www.archcitystudio.com
Author: Brian Jasper
Author URI: http://www.archcitystudio.com
Description:
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: red-arch
Tags: two-columns, right-sidebar, left-sidebar, flexible-header, custom-background, custom-colors, custom-header, custom-menu, custom-logo, featured-image-header, featured-images, footer-widgets, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, blog, entertainment, news, portfolio
*/

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust:     100%;
}

body {
    margin: 0;
    height: 100%;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

a {
    text-decoration: none;
}

input[type=button],
input[type=checkbox]{
    cursor: pointer;
}

ul {

}

    ul li {
        list-style-type: none;
    }



/*/////////////////////////////////////////
    BREADCRUMBS
/////////////////////////////////////////*/

.breadcrumbbox {
    margin-bottom: 2em;
    font-style: italic;
    font-size: 0.8em;
}

/*/////////////////////////////////////////
    HEADER
/////////////////////////////////////////*/

.ht-site-header {
    height: auto;
    max-height: none;
}

.ht-site-header img {
    max-height: 135px;
    width: auto;
}

    .ht-site-header img.ad-image {
        width: auto;
        max-width: 100%;
        height: auto;
        max-height: none;
        display: block;
        margin: 0 auto 1em;
    }

.ht-site-header .toggle-bar {
    display: none;
}

    .ht-site-header .main-header {
        max-width: 1400px;
        margin: 0 auto;
        padding: 20px 0.5em;
        height: 100%;
        max-height: 100%;
        display: flex;
        justify-content: space-between;
        align-content: center;
    }

        .ht-site-header .logobox {
            
        }

    .ht-site-header .directory {
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: right;

        position: relative;
    }

        .ht-site-header .directory i,
        .header-bar-menu i,
        .foot-menu i {
            margin-right: 0.5em;
        }

        .ht-site-header .directory li {
            display: inline-block;
            margin-left: .5em;
        }

        .ht-site-header .directory .header-social-links {
            display: flex;
            align-items: center;
            padding: .5em 0;
        }

            .ht-site-header .directory .header-social-links>* {
                margin-left: 10px;
                line-height: 1em;
            }

            .ht-site-header .directory .header-social-links form,
            .ht-site-header .directory .header-social-links fieldset,
            .ht-site-header .directory .header-social-links input {
                outline: none;
                border: none;
            }

            .ht-site-header .directory .header-social-links input[type=submit] {
                display: none;
            }

            .ht-site-header .directory .header-social-links input[type=text] {
                background-color: transparent;
                border-radius: 1.5em;
                padding: .5em 1em;
            }

        .ht-site-header .header-bar-menu {
            width: 100%;
        }

            .ht-site-header .header-bar-menu ul {
                width: 100%;
                max-width: 1200px;
                margin: 0 auto;
                display: flex;
                justify-content: center;
                flex-wrap: wrap;
            }

                .ht-site-header .header-bar-menu ul li {
                    display: block;
                    padding: 12px 16px;
                    text-align: center;
                    flex: 1 0 0%;
                    min-width: 150px;
                    border-top-width: 2px;
                    border-top-style: solid;
                    margin: 0 2px;
                    cursor: pointer;
                }

.main-header .directory .socialalign {
    display: flex;
    justify-content: flex-end;
}



/*/////////////////////////////////////////
    SEARCH PAGE
/////////////////////////////////////////*/

.search article {
    display: flex;
    margin-top: 2em;
}

    .search article a,
    .search article h1 {
        color: #360608
    }

    .search article img {
        margin-right: 1em;
    }

    .search article header,
    .search article .entry-content {
        margin-bottom: 0.75em;
    }

.search .page-main-header {
    padding: 3em 0 1em;
    text-align: center;
}

    .search .page-main-header .search-contain {
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        width: 100%;
        max-width: 1024px;
        margin: 0 auto;
        padding-bottom: 2em;
        margin-bottom: 2em;
        border-bottom: 1px solid white;
    }

        .search .page-main-header .search-contain form fieldset {
            border: none;
            margin: 1em 0;
            position: relative;
        }

            .search .page-main-header .search-contain form fieldset input {
                color: white;
                background-color: transparent;
                outline: none;
                border-radius: 2em;
                border: 2px solid white;
                padding: 0.5em calc(1em + 25px) 0.5em 1em;
            }

                .search .page-main-header .search-contain form fieldset input[type="submit"] {
                    display: none;
                }

            .search .page-main-header .search-contain form fieldset::after {
                content: "\f179";
                font-family: dashicons;
                position: absolute;
                top: 0.5em;
                right: 13px;
            }

.search #innerpage-box {
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
    padding: 1em 0.375em 3em;
}



/*/////////////////////////////////////////
    SECTION: 40/60
/////////////////////////////////////////*/

#section_40_60 {
    width: 100%;
    padding: 2em 0;
}

    #section_40_60 .section_40_60-contain {
        width: 100%;
        max-width: 1920px;
        margin: 0 auto;
        display: flex;
        align-items: center;
    }

    #section_40_60 .section_40_60-contain .section_40_60_left {
        width: 40%;
        max-width: 40%;
        min-width: 40%;
        padding: 0 10% 0 2em;
    }

    #section_40_60 .section_40_60-contain .section_40_60_right {
        width: 60%;
        max-width: 60%;
        min-width: 60%;
        display: flex;
        overflow: hidden;
    }

        #section_40_60 .section_40_60-contain .section_40_60_right.mobile {
            display: none;
        }

        #section_40_60 .section_40_60-contain .section_40_60_right div {

        }



/*/////////////////////////////////////////
    SECTION: CATALOG
/////////////////////////////////////////*/

#Catalog {
    padding: 2em;
}

    #Catalog .catalog-controls {
        margin-bottom: 2em;
        text-align: right;
        padding: 0 2em;
    }

        #Catalog .catalog-controls form {
            margin-left: 8px;
            display: inline;
        }

        #Catalog .catalog-controls option,
        #Catalog .catalog-controls input {
            text-align: left;
        }

        #Catalog .catalog-controls select,
        #Catalog .catalog-controls input {
            border-radius: 2em;
            border-width: 2px;
            padding: 8px;
            background-color: transparent;
        }

    #Catalog .catalog-space {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        gap: 2em 1em;
    }

    #Catalog .catalog-space .product {
        list-style-type: none;
    }

        #Catalog .catalog-space .product * {
            text-align: left;
        }

        #Catalog .catalog-space .product h2 {
            font-size: 16px;
        }

        #Catalog .catalog-space .product .total-product-title-wrap {
            padding: 8px 8px 0;
        }

        #Catalog .catalog-space .product > a:last-child {
            width: 100%;
            display: block;
            padding: 8px;
            margin: 8px 0;
            text-align: center;
        }

    #Catalog .inner-space {
        padding: 2em;
        text-align: center;
        width: 100%;
        max-width: 1600px;
        margin: 0 auto;
    }

        #Catalog .inner-space h1 {
            margin-bottom: 1em;
        }

        #Catalog .inner-space p {
            max-width: 700px;
            margin: 0 auto 1em;
        }



/*/////////////////////////////////////////
    SECTION: COLUMNIZER
/////////////////////////////////////////*/

.columnizer {
    padding: 0.5em;
    width: 100%;
    max-width: 3840px;
}

    .columnizer .columnizer-flex {
        display: flex;
        justify-content: space-between;

        max-width: 1920px;
        margin: 0 auto;
    }

        .columnizer .columnizer-header img {
            max-height: 125px;
        }

    .columnizer .columnizer-body {
        max-width: 1920px;
        padding: 0 1em;
    }

        .columnizer .columnizer-body>div {
            display: flex;
            flex-direction: column;
            max-width: 50%;
            padding: 1em;
        }

            .columnizer .columnizer-body>div>div {
                height: 50%;
            }

        .columnizer .columnizer-body img {
            max-width: 100%;
        }

        .columnizer .columnizer-body .wp-video {
            margin: 0 auto;
        }



/*/////////////////////////////////////////
    SECTION: CONTACT US
/////////////////////////////////////////*/

#contact {
    width: 100%;
}

    #contact .contact-contain {
        display: flex;
        width: 100%;
    }

        #contact .contact-contain > div {
            min-width: 50%;
            flex: 0 0 0%;
        }

        #contact .contact-contain .contact_left {
            padding: 3em 4.5em 3em 7.5em;
        }

            #contact .contact-contain .contact_left h2 {
                margin-bottom: 1em;
            }

            #contact .contact-contain .contact_left ol,
            #contact .contact-contain .contact_left ul {
                padding-left: 2em;
            }

            #contact .contact-contain .contact_left .contact_body * {
                margin-top: 1em;
            }

        #contact .contact-contain .contact_right {
            padding: 3em 7.5em 3em 4.5em;
        }

            #contact .contact-contain .contact_right form input {
                height: auto;
                padding: .65em;
                font-size: .85em;
            }

            #contact .contact-contain .contact_right form textarea {
                height: 120px;
                font-size: .85em;
            }

            #contact .contact-contain .contact_right .nf-form-content label {
                font-size: .9rem;
            }

            #contact .contact-contain .contact_right .nf-form-fields-required {
                font-size: .75em;
                margin-bottom: 1rem;
            }
            
            
            
/*/////////////////////////////////////////
    SECTION: COUNTER
/////////////////////////////////////////*/

#counter-section {
    width: 100%;
    display: block;
    padding: 2em 0;
}

.flexgrid {
    width: 80%;
    display: flex;
    margin: 0 auto;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 14px;
}

.gridbox {
    flex: 0;
    min-height: 100px;
    margin-bottom: 1em;
    text-align: center;
}

    .gridbox.col1 {
        min-width: 80vw;
        height: 45vw;
    }

    .gridbox.col2 {
        min-width: 39vw;
        height: 30vw;
    }

    .gridbox.col3 {
        min-width: 24vw;
        height: 24vw;
    }

    .gridbox.col4 {
        min-width: 16vw;
        height: 16vw;
    }

    .gridbox:last-child {
        margin-bottom: 0;
    }

    .gridbox h1 {
        font-size: 3em;
        margin-bottom: .5em;
        line-height: 1em;
        font-weight: normal;
    }

    .gridbox p {
        font-size: 2em;
        line-height: 1em;
    }

    .gridbox > div {
        position: relative;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }



/*/////////////////////////////////////////
    SECTION: FEATURED PRODUCTS
/////////////////////////////////////////*/

#featured-products {
    padding: 2em;
}

    #featured-products h4,
    #featured-products h2,
    #featured-products p {
        max-width: calc(0px + 40em);
        margin: 0 auto 1em;
        line-height: 1.5em;
    }

    #featured-products > *:last-child {
        margin-bottom: 0;
    }

    #featured-products .flag {
        display: inline-block;
        height: 30px;
        padding: 0 20px;
        position: relative;
        margin-bottom: 1em;
        left: calc(50vw - 585px);
        left: 10px;
        border-right-width: 1px;
        border-right-style: solid;
    }

        #featured-products .flag p {
            line-height: 30px;
        }

        #featured-products .flag .tri-top {
            position: absolute;
            width: 0;
            height: 0;
            border-top: 0em solid transparent;
            border-bottom: 15px solid transparent;
            right: -15px;
            top: 0;
        }

        #featured-products .flag .tri-btm {
            position: absolute;
            width: 0;
            height: 0;
            border-top: 15px solid transparent;
            border-bottom: 0px solid transparent;
            right: -15px;
            bottom: 0;
        }

    #featured-products #product-cards {
        display: flex;
        justify-content: center;
        margin-bottom: 2em;
        position: relative;
    }

        #featured-products #product-cards .product-card {
            display: block;
            position: relative;
            width: 250px;
            max-width: 385px;
            margin: 0 15px;
            padding-bottom: 1em;
            overflow: hidden;
            text-align: center;
        }

            #featured-products #product-cards .product-card .img-holder {
                width: 100%;
                height: 250px;
                max-height: 385px;
                margin-bottom: 1em;
                overflow: hidden;
                position: relative;
            }

                #featured-products #product-cards .product-card .img-holder div.faux-image {
                    display: block;
                    height: 100%;
                    width: 100%;
                    min-height: 100%;
                    min-width: 100%;
                    left: 50%;
                    top: 50%;
                    transform: translate(-50%, -50%);
                    position: absolute;
                    transition: all 0.35s ease-in-out;
                    background-position: center center;
                    background-size: cover;
                }

                #featured-products #product-cards .product-card:hover .img-holder div.faux-image {
                    min-height: 120%;
                    min-width: 120%;
                    height: 120%;
                    width: 120%;
                    left: 50%;
                    top: 50%;
                    transform: translate(-50%, -50%);
                    transition: all 0.35s ease-in-out;
                }

            #featured-products #product-cards .product-card .text-holder {
                padding: .5em;
            }



/*/////////////////////////////////////////
    SECTION: FEATURE GRID
/////////////////////////////////////////*/

#featuregrid {
    padding: 2em 0;
}

    #featuregrid .featuregrid {
        display: block;
        margin: 0 auto;
        width: 1000px;
        max-width: 100%;
    }

        #featuregrid .featuregrid .gridrow {
            width: 100%;
            display: flex;
        }

            #featuregrid .featuregrid .gridrow .gridcolumn {
                width: 500px;
                min-width: 500px;
                height: 500px;
                min-height: 500px;
                flex: 0 0 0%;
                padding: 50px;
                overflow: hidden;
                position: relative;
            }

                #featuregrid .featuregrid .gridrow .gridcolumn h1 {
                    margin-bottom: 1rem;
                }

                #featuregrid .featuregrid .gridrow .gridcolumn img {
                    display: block;
                    position: relative;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%,-50%);
                }

                #featuregrid .featuregrid .gridrow .gridcolumn .boxbtn {
                    display: inline-block;
                    padding: .5em 1em;
                    margin-top: 1.5rem;
                }

                    #featuregrid .featuregrid .gridrow .gridcolumn .boxbtn a {
                        display: block;
                    }



/*/////////////////////////////////////////
    SECTION: LINE CARD
/////////////////////////////////////////*/

#linecard {
    width: 100%;
}

    #linecard .linecard-contain {
        display: flex;
        width: 100%;
    }

        #linecard .linecard-contain > div {
            min-width: 50%;
            flex: 0 0 0%;
        }

        #linecard .linecard-contain .linecard_left {
            padding: 3em 4.5em 3em 7.5em;
            text-align: right;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

            #linecard .linecard-contain .linecard_left h2 {
                margin-bottom: 1rem;
            }

            #linecard .linecard-contain .linecard_left img {
                max-height: 100px;
                margin-bottom: 1rem;
                align-self: flex-end;
            }

        #linecard .linecard-contain .linecard_right {
            padding: 2em;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: center;
        }

            #linecard .linecard-contain .linecard_right img {
                margin: .5em 0;
            }
            
            
            
/*/////////////////////////////////////////
    SECTION: POPUP
/////////////////////////////////////////*/

#home-popup-container {
    display: block;
    position: fixed;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
}

#home-popup {
    display: block;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    padding: 2em;

    max-width: 80vw;
    max-height: 70vh;
    overflow: hidden;
}

    #home-popup .popup-title h1 {
        margin-bottom: 1em;
    }

    #home-popup .popup-img img {
        height: auto;
        width: auto;
        max-width: 100%;
        max-height: 100%;

        margin-bottom: 1em;
    }

    #home-popup .the-content {
        font-size: 1.15rem;
    }

    #home-popup .the-content h1 {
        font-size: 3em;
    }

        #home-popup .the-content h2 {
            font-size: 2.5em;
        }

        #home-popup .the-content h3 {
            font-size: 2em;
        }

        #home-popup .the-content h4 {
            font-size: 1.5em;
        }

        #home-popup .the-content h5 {
            font-size: 1em;
        }

        #home-popup .the-content h6 {
            font-size: 0.5em;
        }

        #home-popup .the-content h1 > *,
        #home-popup .the-content h2 > *,
        #home-popup .the-content h3 > *,
        #home-popup .the-content h4 > *,
        #home-popup .the-content h5 > *,
        #home-popup .the-content h6 > * {
            font-size: 1em;
        }

    #home-popup .the-content * {
        margin-bottom: 0.5em;
    }

        #home-popup .the-content *:last-child {
            margin-bottom: 0;
        }

    #home-popup .the-content blockquote {
        margin: 1em 4em;
    }

    #home-popup .the-content ol li {
        margin-left: 2em;
    }

    #home-popup .the-content ul li {
        list-style-type: disc;
        margin-left: 2em;
    }

    #home-popup .nf-form-content {
        margin: 0 0;
        padding: 0;
    }

        #home-popup .the-content .nf-form-content button,
        #home-popup .the-content .nf-form-content input[type=button],
        #home-popup .the-content .nf-form-content input[type=submit] {
            color: inherit;
        }

    #home-popup .closebtn {
        font-family: sans-serif;
        color: #333;
        transform: rotate(45deg);
        cursor: pointer;
        font-size: 2em;
        position: absolute;
        top: 0.125em;
        right: 0.25em;
    }



/*/////////////////////////////////////////
    SECTION: PROJECTS
/////////////////////////////////////////*/

#projects {
    width: 100%;
}

    #projects .projects-contain {
        display: flex;
        width: 100%;
    }

        #projects .projects-contain .projects_left {
            min-width: 40%;
            flex: 0 0 0%;
            padding: 3.5rem 9rem 3.5rem 3.5rem;
            text-align: left;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

            #projects .projects-contain .projects_left h2 {
                margin-bottom: 1rem;
            }

            #projects .projects-contain .projects_left img {
                max-height: 100px;
                margin-bottom: 1rem;
                align-self: flex-end;
            }

        #projects .projects-contain .projects_right {
            min-width: 60%;
            flex: 0 0 0%;
            padding: 5rem 0;
            display: block;
            position: relative;
        }

            #projects .projects-contain .projects_right .projects-holder {
                width: calc(100% + 2rem);
                min-height: 100%;
                max-height: 100%;
                position: relative;
                right: 5rem;
                padding: 5rem 0;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-around;
                align-items: flex-start;
                align-content: space-around;
                row-gap: 3rem;
            }

                #projects .projects-contain .projects_right .projects-holder div {
                    min-width: 40%;
                    max-width: 40%;
                }

                    #projects .projects-contain .projects_right .projects-holder div img {
                        height: 120px;
                        max-width: 100%;
                        display: block;
                        margin-bottom: 1rem;
                        max-height: 120px;
                        object-fit: contain;
                    }

                    #projects .projects-contain .projects_right .projects-holder div line {
                        display: block;
                        height: 2px;
                        width: 25%;
                        margin-bottom: 1rem;
                    }

                    #projects .projects-contain .projects_right .projects-holder div strong {
                        display: block;
                        margin-bottom: 1rem;
                    }
                    
                    
                    
/*/////////////////////////////////////////
    SECTION: SPLASH
/////////////////////////////////////////*/

#ht-home-splash-section {
    width: 100%;
    max-width: 1920px;
    position: relative;
}

    #ht-home-splash-section .splashtext {
        position: relative;
        padding: 4em 6em 2em;
        width: 800px;
    }

        #ht-home-splash-section .splashtext * {
            margin-bottom: 1rem;
        }

            #ht-home-splash-section .splashtext *:last-child {
                margin-bottom: 0;
            }

        #ht-home-splash-section .splashtext button {
            border: none;
            padding: 1em;
            cursor: pointer;
        }

        #ht-home-splash-section .splashtext h1 {
            font-size: 4em;
            line-height: 1em;
            position: relative;
        }

        #ht-home-splash-section .splashtext span {
            position: relative;
        }

        #ht-home-splash-section .splashtext.desktop {
            display: block;
        }

        #ht-home-splash-section .splashtext.mobile {
            display: none;
        }

#splash-brands {
    height: 160px;
    width: 100%;
    background-color: rgba(0,0,0,0.8);
    display: block;
}

    #splash-brands > div {
        display: flex;
        justify-content: center;
        gap: 15px;
        align-items: center;
        width: 100%;
        height: 100%;
    }

    #splash-brands img {
        max-height: 100%;
        flex-shrink: 1;
        height: auto;
        min-width: 0;
        padding: 10px;
    }

        #splash-brands img:hover {
            padding: 0;
        }
                    
                    
                    
/*/////////////////////////////////////////
    SITE MAP / PRIVACY POLICY
/////////////////////////////////////////*/

.page-template-sitemap-template header, 
.page-template-privacy-policy-template main {
    padding: 2em;
}

.page-template-sitemap-template #innerpage-box,
.page-template-privacy-policy-template main {
    padding: 2em;
    background-color: #dfdfdf;
}

    .page-template-sitemap-template #innerpage-box *,
    .page-template-privacy-policy-template main * {
        color: #333;
    }

    .page-template-privacy-policy-template main a {
        color: blue;
        text-decoration: underline;
    }

    .page-template-sitemap-template #innerpage-box h3,
    .page-template-privacy-policy-template main h2,
    .page-template-privacy-policy-template main h1 {
        margin-bottom: 1em;
        text-decoration: underline;
    }

    .page-template-privacy-policy-template main p {
        margin-bottom: 1em;
    }

    .page-template-sitemap-template #innerpage-box ul,
    .page-template-privacy-policy-template main ul {
        margin-bottom: 1em;
        padding-left: 1em;
    }

        .page-template-sitemap-template #innerpage-box ul li,
        .page-template-privacy-policy-template main ul li {
            margin-bottom: 0.5em;
            list-style-type: circle;
        }



/*/////////////////////////////////////////
    PAGES
/////////////////////////////////////////*/

.post-content {
    width: 100%;
    padding: 2em;
    background-color: #eee;
}

    .post-content blockquote {
        font-style: italic;
        font-size: 1.4em;
        text-align: center;
        background-color: rgba(0,0,0,0.05);
        padding: 3em 3em 1em 3em;
        display: block;
        margin: 0.85em 0;
        position: relative;
    }

        .post-content blockquote > * {
            margin: 0 !important;
            opacity: 0.85;
            border-left: 3px solid #333;
            padding: 1em;
        }

        .post-content blockquote::before {
            content: '\201C';
            display: block;
            font-size: 40px;
            font-family: serif;
            position: absolute;
            top: 0.25em;
            left: 0.25em;
            color: white;
            padding: 0.25em 0.25em 0.25em 0.125em;
            text-align: center;
            height: 25px;
            width: 30px;
            
        }

    .post-content p {
        line-height: 1.4em;
    }

    .post-content .container {
        background-color: white;
        padding: 3em;
        width: 100%;
        max-width: 1400px;
        margin: 0 auto;
    }

        .post-content .container .breadcrumbbox span a,
        .post-content .container .breadcrumbbox span>span {
            font-style: normal;
            margin-right: 0.325em;
            margin-left: 0.325em;
        }

            .post-content .container .breadcrumbbox span:first-child a {
                margin-left: 0em;
            }

         .post-content .container .breadcrumbbox span .fa {
             color: inherit;
         }

        .post-content .container .singlepageflex {
            display: flex;
            width: 100%;
        }

            .post-content .container .singlepageflex .post-image {
                flex: 0;
                min-width: 45%;
                max-width: 45%;
                padding: 50px;
            }

                .post-content .container .singlepageflex .post-image img {
                    width: 100%;
                    height: auto;
                }

            .post-content .container .singlepageflex .page-flex-content {
                padding-top: 50px;
            }

                .post-content .container .singlepageflex .page-flex-content h2 {

                }

                        .post-content .container .singlepageflex .page-flex-content > h2:first-child:before {
                            content: '';
                            width: 1.25em;
                            height: 1.25em;
                            display: block;
                            background-color: blue;
                            margin-bottom: 1em;
                        }

                .post-content .container .singlepageflex .page-flex-content .authorname {
                    margin-bottom: 2em;
                    font-size: .85em;
                }

                .post-content .container .singlepageflex .page-flex-content .single_post {

                }

                    .post-content .container .singlepageflex .page-flex-content .single_post h1,
                    .post-content .container .singlepageflex .page-flex-content .single_post h2,
                    .post-content .container .singlepageflex .page-flex-content .single_post h3,
                    .post-content .container .singlepageflex .page-flex-content .single_post h4,
                    .post-content .container .singlepageflex .page-flex-content .single_post h5,
                    .post-content .container .singlepageflex .page-flex-content .single_post h6,
                    .post-content .container .singlepageflex .page-flex-content .single_post figure.wp-block-image img,
                    .post-content .container .singlepageflex .page-flex-content .single_post ol,
                    .post-content .container .singlepageflex .page-flex-content .single_post p,
                    .post-content .container .singlepageflex .page-flex-content .single_post ul {
                        margin-bottom: 0.85em;
                    }

                        .post-content .container .singlepageflex .page-flex-content .single_post figure.wp-block-gallery figure.wp-block-image img {
                            margin-bottom: 0;
                        }

                    .post-content .container .singlepageflex .page-flex-content .single_post img {
                        width: 100%;
                        height: auto;
                        margin-bottom: 0.85em;
                    }  

                    .post-content .container .singlepageflex .page-flex-content .single_post ol li {
                        list-style-type: decimal;
                        margin-left: 1.5em;
                    }

                        .post-content .container .singlepageflex .page-flex-content .single_post ol li ol li,
                        .post-content .container .singlepageflex .page-flex-content .single_post ul li ol li {
                            list-style-type: lower-alpha;
                        }

                            .post-content .container .singlepageflex .page-flex-content .single_post ol li ol li ol li,
                            .post-content .container .singlepageflex .page-flex-content .single_post ol li ul li ol li,
                            .post-content .container .singlepageflex .page-flex-content .single_post ul li ol li ol li,
                            .post-content .container .singlepageflex .page-flex-content .single_post ul li ul li ol li {
                                list-style-type: lower-roman;
                            }

                    .post-content .container .singlepageflex .page-flex-content .single_post ul li {
                        list-style-type: disc;
                        margin-left: 1.5em;
                    }

                        .post-content .container .singlepageflex .page-flex-content .single_post ul li ul li,
                        .post-content .container .singlepageflex .page-flex-content .single_post ol li ul li {
                            list-style-type: circle;
                        }

                            .post-content .container .singlepageflex .page-flex-content .single_post ul li ul li ul li,
                            .post-content .container .singlepageflex .page-flex-content .single_post ul li ol li ul li,
                            .post-content .container .singlepageflex .page-flex-content .single_post ol li ul li ul li,
                            .post-content .container .singlepageflex .page-flex-content .single_post ol li ol li ul li {
                                list-style-type: square;
                            }

    .post-content .container .page-comments {
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 50px;
    }

    .post-content .container .page-comments a {
        color: #4848AA;
        text-decoration: underline;
    }

    .page-comments p,
    .page-comments strong,
    .page-comments em,
    .page-comments s,
    .page-comments sub,
    .page-comments sup {
        margin-bottom: 1em;
    }

    .page-comments h1,
    .page-comments h2,
    .page-comments h3,
    .page-comments h4,
    .page-comments h5,
    .page-comments h6 {
        margin: .5em 0 1em;
    }

    .page-comments code {
        font-family: monospace;
        font-size: 1.25em;
        margin-bottom: 1em;
    }

    .page-comments figcaption {
        font-size: .8em;
        text-align: center;
    }

    .page-comments figure {
        margin-bottom: 1em;
    }

    .page-comments ul,
    .page-comments ol {
        margin-bottom: 1em;
    }

        .page-comments ol li {
            list-style-type: decimal;
            margin-left: 2em;
            line-height: 1.35em;
        }

        .page-comments ol ul {
            margin-bottom: 0;
        }

            .page-comments ol ul li {
                list-style-type: circle;
            }

        .page-comments ul li {
            list-style-type: initial;
            margin-left: 2em;
            line-height: 1.35em;
            margin-bottom: 0.5em;
        }

    .page-comments .comment {

    }

        .page-comments .comment {
            list-style-type: none;
            padding: 20px;
        }

            .page-comments .comment > div > *,
            .page-comments .comment .commentmetadata > * {
                margin-bottom: 0.325em;
            }

            .page-comments .comment div.vcard img {
                border-radius: 50%;
            }

    .page-comments .comment-form-comment label {
        margin-right: 1em;
    }
    
    .page-comments .form-submit input {
        font-size: 100%;
        line-height: 1;
        padding: 0.618em 1em;
        border-radius: 0;
        border-color: transparent;
        color: white;
        cursor: pointer;
    }

    .page-comments .logged-in-as>* {
        margin-left: 0.5em;
    }

    .single_post p > a {
        text-decoration: underline;
        color: blue;
    }



/*/////////////////////////////////////////
    PROFILES
/////////////////////////////////////////*/

#ht-profile-section {
    padding: 4em 1em 2em;
}

#ht-profile-section .headingbox {
    width: 100%;
    max-width: 800px;
    margin: 0 auto 2em;
    text-align: center;
}

    #ht-profile-section .headingbox h6 {
        margin-bottom: 1.5em;
    }

    #ht-profile-section .headingbox h2 {
        margin-bottom: 1em;
    }

#ht-profile-section .profile-holder {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 5vw;
}

    #ht-profile-section .profile {
        text-align: center;
        font-size: 14px;
        display: flex;
        flex-direction: column;
    }

        #ht-profile-section .profile.vert-off {
            flex-direction: row;
            text-align: left;
            gap: 3vw;
        }

            #ht-profile-section .profile.vert-off .profile-label {
                flex-grow: 1;
                padding-top: 12px;
            }

        #ht-profile-section .profile p {
            display: block;
            margin-bottom: 12px;
        }

        #ht-profile-section .profile strong {
            display: block;
            margin-bottom: 8px;
        }

        #ht-profile-section .profile .profile-image {
            overflow: hidden;
            margin: 0 auto 1vw;
            background-position: center center;
            background-size: cover;
        }

        #ht-profile-section .profile button {
            border: none;
            padding: 0.65em 1em 0.5em;
            cursor: pointer;
        }



/*/////////////////////////////////////////
    RESERVATION
/////////////////////////////////////////*/

#reservation {
    padding: 2em 1em;
}

#reservation .form-container {
    width: 100%;
    max-width: 1000px;

    margin: 0 auto;
}

    #reservation .form-container h3 {
        margin-bottom: 0.25em;
    }

    #reservation form>div>div {
        margin-bottom: 0.5em;
    }

#reservation .reservation-title {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto 2em;

    display: flex;
    align-items: center;
    justify-content: center;
}

    #reservation .reservation-title img {
        width: auto;
        height: auto;
        max-width: 4em;
        max-height: 4em;

        margin-right: 1em;
    }

    #reservation .reservation-title h2 {
        margin-bottom: 0.25em;
    }



/*/////////////////////////////////////////
    SERVICES
/////////////////////////////////////////*/

#services {
    
}

#services .top-level,
#services #service-cards {
    width: 100%;
    min-height: 50px;
    display: flex;
}

    #services .top-level>div,
    #services #service-cards>div {
        min-width: 5px;
        flex-grow: 1;
    }

    #services .top-level>div.right-shade,
    #services #service-cards>div.right-shade {
        flex-grow: 2;
    }

    #services .top-level .top-container,
    #services #service-cards .cards {
        min-width: 80%;
        max-width: 1400px;

        display: flex;
        flex: 0 0 0%;
    }

    #services #service-cards .cards {
        flex-wrap: wrap;
    }

        #services #service-cards .cards a {
            flex-grow: 1;
        }

        #services .top-level .top-container>div {
            min-width: 50%;
            flex: 0 0 0%;
            padding: 1.5em 3em 1.5em 1.5em;
        }

#services h4 {
    margin-bottom: 1em;
}

#services .services-text {
    max-width: 600px;
    margin: 1em 0;
}

    #service-cards .service-card {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-grow: 1;
        padding: 2em 1em;
        border: 6px solid transparent;
    }

        #service-cards .service-card:hover {
            transition: all linear .25s;
        }

        #service-cards .service-card div.img-holder {
            height: 100px;
            width: 100px;
            flex-grow: 0;
            flex-shrink: 0;
            margin-right: 1.5em;
            border-radius: 50%;
        }

            #service-cards .service-card:hover div.img-holder {
                
            }

        #service-cards .service-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center center;
        }

        #service-cards .service-card strong {
            font-size: 1.35em;
            text-align: right;
        }

            #service-cards .service-card:hover strong {
                
            }



/*/////////////////////////////////////////
    SECTION: TESTIMONIALS
/////////////////////////////////////////*/

#testimonials {
    padding: 2em 2em 0;
}

    #testimonials h2 {
        margin-bottom: .5em;
    }

#testimonial-cards {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    width: 100%;
    padding: 2em;
    max-width: 1400px;
    margin: 0 auto;
}

.testimonial-card {
    display: flex;
    min-width: 45%;
    min-height: 120px;
    flex: 0 0 0;

    justify-content: space-between;
    align-items: center;

    box-shadow: 0px 0px 2px rgba(0,0,0,.4);
    padding: 15px;
    margin-bottom: 2em;
}

    .testimonial-card div.img-holder {
        height: 90px;
        width: 90px;
        flex-grow: 0;
        flex-shrink: 0;
        margin-right: 1.5em;
    }

    .testimonial-card div.text-holder {
        flex-grow: 1;
        text-align: left;
        height: 100%;
    }

    .testimonial-card img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    .testimonial-card p {
        margin-bottom: 1em;
    }

    .testimonial-card strong {
        opacity: .75;
        font-weight: normal;
        position: relative;
        left: 5px;
    }



/*/////////////////////////////////////////
    SECTION: WOOCOMMERCE CATEGORIES
/////////////////////////////////////////*/

#woo-categories {
    padding: 2em;
}

    #woo-categories .content-holder {
        max-width: 1200px;
        margin: 0 auto;
    }

    #woo-categories h1 {
        font-size: 2em;
        margin-bottom: 0.75em;
    }

    #woo-categories h4 {
        margin-bottom: 0.75em;
        font-weight: normal;
    }

    #woo-categories p {
        font-weight: lighter;
        max-width: 700px;
        margin-bottom: 2em;
    }

#category-cards {
    width: 100%;
    display: flex;
    gap: 24px;
    justify-content: flex-start;
    flex-wrap: no-wrap;
    overflow: hidden;
}

    #category-cards .category-card {
        display: block;
        position: relative;
    }

        #category-cards .category-card .img-holder {
            width: 100%;
            height: 175px;
        }

            #category-cards .category-card .img-holder .faux-image {
                width: 100%;
                height: 100%;
                background-position: center;
                background-repeat: no-repeat;
                background-size: contain;
            }

        #category-cards .category-card .text-holder {
            width: 100%;
            text-align: center;
        }

            #category-cards .category-card .text-holder strong {
                display: block;
                margin-bottom: 1em;
            }

            #category-cards .category-card .text-holder p {
                font-size: 14px;
            }



/*/////////////////////////////////////////
    TEMPLATE POST: TYPED BY ARCH CITY
/////////////////////////////////////////*/
#TemplateTyped {
    font-family: 'Libre Baskerville', serif;
}

#TypedContent {
    width: 100%;
    max-width: calc(1000px + 8em);
    margin: 0 auto;

    background-color: white;
    color: #333;

    padding: 6em;
}

    #TypedContent * {
        color: #333;
        font-size: 24px;
    }

    #TypedContent .typed-the-content {
        margin-left: 8em;
    }

        #TypedContent .typed-the-content .wp-block-image {
            margin-bottom: 1em;
        }

        #TypedContent .typed-the-content p {
            margin-bottom: 1em;
            line-height: 1.5em;
            width: 100%;
            max-width: 1000px;
        }

        #TypedContent .typed-the-content .alignleft img {
            margin: 1em 1em 1em 0em;
        }

        #TypedContent .typed-the-content .alignright img {
            margin: 1em 0 1em 1em;
        }

    #TypedContent .typed-the-title {
        margin-bottom: 1em;
        font-size: 2em;
    }

#TypedHeader {
    padding: 2em 4em 4em;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
}

    #TypedHeader * {
        text-shadow: 2px 2px 2px rgba(0,0,0,0.5);
    }

    #TypedHeader .typed-excerpt {
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
        text-align: center;
    }

        #TypedHeader .typed-excerpt h2 {
            color: white;
            font-size: 128px;
            height: 128px;
            margin-top: 32px;
            display: block;
        }



/*/////////////////////////////////////////
    WOOCOMMERCE
/////////////////////////////////////////*/

.woocommerce .single-productpage #innerpage-box {
    max-width: 1600px;
    margin: 0 auto;
}

.woocommerce form.woocommerce-ordering {
    margin-right: 2em;
}

    .woocommerce form.woocommerce-ordering select {
        padding: 0.5em;
    }

.woocommerce ul.products li.product a img {
    box-shadow: 0px 4px 6px rgba(0,0,0,0.25);
}

.woocommerce ul.products li.product .button {
    border-radius: 0;
    font-weight: normal;
}

.woocommerce .decorative-stripe {
    display: block;
    width: 25%;
    min-width: 75px;
    height: 2px;
    margin: 0.75em 0 0;
    background-color: blue;
}

.woocommerce .products ul, .woocommerce ul.products {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

    .woocommerce ul.products li.product, .woocommerce-page ul.products li.product, .woocommerce-page.columns-2 ul.products li.product, .woocommerce.columns-2 ul.products li.product {
        margin: 0;
        float: unset;
        padding: 0.5em;
        margin-bottom: 3em;
    }

    .woocommerce .onsale {
        border-radius: 50%;
        width: 3.5em;
        height: 3.5em;
    }

    .woocommerce ul.products li.product .product-subtitle {
        margin-bottom: 0.5em;
    }

    .woocommerce .products ul::after, .woocommerce .products ul::before, .woocommerce ul.products::after, .woocommerce ul.products::before {
        display: none;
    }

    .woocommerce .woocommerce-result-count {
        padding: 0 2em;
    }

.woocommerce .single-productpage {
    padding: 2em;
    background-color: #efefef;
}

    .woocommerce .single-productpage nav {
        font-style: italic;
    }

        .woocommerce .single-productpage nav a {
            font-style: normal;
            margin-left: 0.325em;
        }

            .woocommerce .single-productpage nav a:first-child {
                margin-left: 0em;
            }

    .woocommerce .single-productpage #innerpage-box {
        background-color: white;
        margin: 0 auto;
        max-width: 1400px;
        padding: 2em;
    }

    .woocommerce .single-productpage #primary .product .product-top-container {
        display: flex;
    }

        .woocommerce .single-productpage #primary .product .product-top-container .woocommerce-product-gallery {
            width: 600px;
            min-width: 600px;
            margin-right: 40px;
            float: none;
        }

        .woocommerce .single-productpage #primary .product .product-top-container .summary>* {
            margin-bottom: 0.325em;
        }

        .woocommerce .single-productpage #primary .product .product-top-container .summary form button,
        .woocommerce #review_form #respond .form-submit input {
            border-radius: 0;
            font-weight: normal;
        }

        .woocommerce .single-productpage #primary .product .product-top-container .summary form input {
            font-size: 85%;
            line-height: 1;
            padding: 0.618em 1em;
            width: 80px;
            border-radius: 0;
            border-color: transparent;
        }

            .woocommerce .single-productpage #primary .product .product-top-container .summary form input:focus-visible {
                border-radius: 0;
                border-color: transparent;
            }

        .woocommerce .single-productpage #primary .product .product-top-container .summary .product_meta>span {
            display: block;
            margin-bottom: 0.325em;
        }

        .woocommerce .single-productpage #primary .product .product-top-container .title-container,
        .woocommerce .single-productpage #primary .product .product-top-container .price {
            margin-bottom: 1em;
        }

            .woocommerce .single-productpage #primary .product .product-top-container .product_title::before {
                content: '';
                width: 1.25em;
                height: 1.25em;
                display: block;
                background-color: blue;
                margin-bottom: 1em;
            }

    .woocommerce .single-productpage #primary .product .wc-tab > *,
    .woocommerce .single-productpage #primary .product .wc-tab #comments > *,
    .woocommerce .single-productpage #primary .product .wc-tab #respond > *,
    .woocommerce .single-productpage #primary .product .wc-tab #respond form .comment-form-rating>* {
        display: block;
        margin-bottom: 0.325em;
    }



/*/////////////////////////////////////////
    FOOTER
/////////////////////////////////////////*/
footer#ht-colophon {
    font-size: 16px;
    padding: 10px 10px 30px;
}

    footer#ht-colophon input[type="text"] {
        font-size: 15px;
    }

    footer#ht-colophon input[type="text"], input[type="email"] {
        margin-bottom: 5px;
    }

    footer#ht-colophon .social-profile-icons ul li:before {
        content: none;
    }

div#copyright-note span {
    font-weight: normal;
}

footer#ht-colophon ul li a {
    color: #989898;
    font-size: 16px;
}

footer#ht-colophon .social-profile-icons ul li {
    border-bottom: 1px dashed #a7a7a7;
    margin: 0 10px;
}

.ht-top-footer ul li {
    border-bottom: 1px dashed #a7a7a7;
}

    .ht-top-footer ul li:before {
        content: "\f105";
        font-family: 'Fontawesome';
        font-size: 15px;
        padding-right: 6px;
        font-weight: 600;
    }

footer#ht-colophon p {
    font-size: 16px;
    color: #989898;
    margin-bottom: 6px;
}

    footer#ht-colophon p i {
        font-size: 20px;
        color: #fff;
        margin-right: 5px;
    }

.ht-footer .textwidget .fa {
    margin-right: 5px;
}

.ht-footer ul li {
    padding: 5px 0 5px 0;
    list-style: none;
}

.page-template-home-template #ht-colophon,
.home.blog #ht-colophon {
    margin-top: 0
}

#ht-colophon a, footer#ht-colophon ul li span.post-date {
    color: #989898;
    text-decoration: none;
}

#ht-top-footer {
    width: 100%;
    max-width: 1200px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    box-sizing: border-box;
}

    #ht-top-footer .directory {
        display: flex;
        align-items: center;
    }

    #ht-top-footer .logobox {
        flex-grow: 0;
        position: relative;
    }

        #ht-top-footer .logobox img {
            height: auto;
            width: auto;
            max-height: 100%;
            max-width: 320px;
        }

    #ht-top-footer .foot-menu {
        text-align: right;
        padding-right: 10px;
        padding-top: 18px;
    }

        #ht-top-footer .foot-menu ul {
            list-style-type: none;
        }

            #ht-top-footer .foot-menu ul li {
                display: inline;
                padding-right: 10px;
            }

                #ht-top-footer .foot-menu ul li:last-child {
                    padding-right: 0;
                }

footer form fieldset {
    border: 0px solid transparent;
}

footer form input[type="text"] {
    padding: .5em 1em;
    background-color: rgba(255,255,255,.5);
    border: 2px solid rgba(0,0,0,.5);
    border-radius: 1em;
    position: relative;
    top: 0.65em;
    margin-left: 10px;
    color: rgba(0,0,0,.5);
    max-width: 240px;
}

    footer form input[type="text"]:focus {
        outline: none;
    }

footer form input[type="submit"] {
    display: none;
}

.foot-menu-bar {
    max-width: 1000px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 20px auto;
}

    .foot-menu-bar a {
        display: block;
    }

.ht-site-info {
    width: 100%;
    text-align: center;
    margin: 10px 0;
}



/*/////////////////////////////////////////
    UTILITY CLASSES
/////////////////////////////////////////*/

.text-center {
    text-align: center;
}

