/*
Theme Name: BMDStarter Child
Template: bmdstarter
*/

/*--------------------------------------------------------------
Variables
--------------------------------------------------------------*/

:root {
    --main-background-color: #ffffff;
    --footer-height: 0px;
    --max-width: 1500px;
    --border-radius: 2px;
    --border-color: #C0C0C0;
    --text-color: #303030;
    --gray-color: #757576;
    
    --link-color: #7395b7;
    --branding-color: #7395b7;
    --complimentary-color: #FFBA99;
    --darkblue-color: #507191;
}

/*--------------------------------------------------------------
Site
--------------------------------------------------------------*/

@media screen and (min-width: 1200px) {
    .max1000 {
        max-width: 1000px;
        margin-right:auto;
        margin-left:auto;
    }
}

@media screen and (min-width: 1400px) {
    .max1200 {
        max-width: 1200px;
        margin-right:auto;
        margin-left:auto;
    }
}

.icons15 {
    height:15px;
    width:auto;
}

.icons25 {
    height:25px;
    width:auto;
}

.icons30 {
    height:30px;
    width:auto;
}

body {
    line-height: 1.5;
}

h1, h2, h3, h4, h5 {
    clear: both;
    font-weight: 600;
    line-height: 1;
    margin-block-start: 0;
    margin-block-end: 0;
    margin: 15px 0;
}

h1, h2 {
    font-family: 'KGHolocene';
    font-weight: normal;
    text-transform: uppercase;
    letter-spacing:2px;
    line-height: 1.5;
}

h1 {
  font-size: 1.4em;
}

h2 {
  font-size: 1.2em;
}

h3 {
  font-size: 1.4em;
}

h4 {
  font-size: 1.2em;
}

h5 {
  font-size: 1.0em;
}

ul.unbulleted {
    list-style: none;
    padding-inline-start: 0px;
}

a {
    color: var(--link-color);
}

.link-color {
    color: var(--link-color) !important;
}

.text-color {
    color: var(--text-color) !important;
}

.bold {
    font-weight: bold !important;
}

.center {
    justify-content: center;
    text-align: center;
}

.italic {
    font-style: italic;
}

.block {
    display:block;
}

.flex {
    display:flex;
}

.displaynone {
    display:none;
}

.small {
    font-size:small;
}

.bordered {
    border: solid 1px #C0C0C0;
}

.archiveslist {
    margin: 30px 0;
    text-align: center;
    list-style: none;
}

.archiveslist h2 {
    margin:15px 0px;
}

.archiveslist ul {
    list-style: none;
}

.sortbyselect,
.bmd-select {
    font-size: smaller;
    width: auto;
    padding: 5px 10px;
    border-radius: 5px;
    border: 1px solid #C0C0C0;
}
    
@media screen and (min-width: 769px) {
    .archiveslist {
        text-align: left;
    }
}

hr {margin:30px 0px;}

.bmd-columned {
    text-align: center;
}

.bmd-columned p:first-of-type {
    margin-top:0px;
}

/*--------------------------------------------------------------
Pagination
--------------------------------------------------------------*/
    
.pagination {
    border-top: 1px solid var(--border-color, #DCDCDC);
    text-align: center;
    margin-top:15px;
    padding-top:30px;
}

.page-numbers {
    padding:5px;
}

.page-numbers.current {
    font-weight: bold;
}
    
#product-archive-grid .bmd-square-grid {
    min-height: 545px;
}

/*--------------------------------------------------------------
EDD Customizations
--------------------------------------------------------------*/

.edd_submit, 
.edd-submit {
    /*
    background-color: var(--link-color, #7395b7);
    border-color: 1px solid var(--link-color, #7395b7);
    color:white;
    */
}

/*--------------------------------------------------------------
Color Filters
--------------------------------------------------------------*/

/* generated color filters from https://codepen.io/sosuke/pen/Pjoqqp */
    
.white-svg-filter {
    filter: invert(100%) sepia(2%) saturate(788%) hue-rotate(226deg) brightness(115%) contrast(100%);
}

.gray-svg-filter {
    filter: invert(45%) sepia(0%) saturate(1780%) hue-rotate(308deg) brightness(101%) contrast(80%);
}

.text-color-svg-filter {
    filter: invert(10%) sepia(1%) saturate(3376%) hue-rotate(315deg) brightness(106%) contrast(78%);
}

.facebook-color-svg-filter {
    filter: invert(38%) sepia(14%) saturate(1808%) hue-rotate(182deg) brightness(88%) contrast(102%);
}

.twitter-color-svg-filter {
    filter: invert(51%) sepia(87%) saturate(466%) hue-rotate(171deg) brightness(95%) contrast(101%);
}

.pinterest-color-svg-filter {
    filter: invert(21%) sepia(74%) saturate(4284%) hue-rotate(346deg) brightness(81%) contrast(91%);
}

.instagram-color-svg-filter {
    filter: invert(35%) sepia(70%) saturate(561%) hue-rotate(294deg) brightness(98%) contrast(95%);
}

.behance-color-svg-filter {
    filter: invert(51%) sepia(100%) saturate(5862%) hue-rotate(213deg) brightness(101%) contrast(102%);
}

.dribbble-color-svg-filter {
    filter: invert(43%) sepia(46%) saturate(2401%) hue-rotate(309deg) brightness(95%) contrast(92%);
}

.branding-color-svg-filter { 
    filter: invert(64%) sepia(15%) saturate(790%) hue-rotate(169deg) brightness(86%) contrast(91%);
}

.darkblue-color-svg-filter { 
    filter: invert(42%) sepia(54%) saturate(335%) hue-rotate(168deg) brightness(89%) contrast(87%);
}

.link-color-svg-filter { 
    filter: invert(64%) sepia(15%) saturate(790%) hue-rotate(169deg) brightness(86%) contrast(91%);
}

.complimentary-color-svg-filter { 
    filter: invert(75%) sepia(37%) saturate(682%) hue-rotate(318deg) brightness(108%) contrast(101%);
}

.makerstype-color-svg-filter { 
    filter: invert(70%) sepia(8%) saturate(1314%) hue-rotate(137deg) brightness(84%) contrast(84%);
}

.tpt-color-svg-filter { 
    filter: invert(40%) sepia(58%) saturate(1032%) hue-rotate(117deg) brightness(102%) contrast(93%);
}

.green-svg-filter {
    filter: invert(75%) sepia(50%) saturate(393%) hue-rotate(74deg) brightness(84%) contrast(85%);
}

.red-svg-filter {
    filter: invert(54%) sepia(71%) saturate(2878%) hue-rotate(324deg) brightness(85%) contrast(113%);
}

/*--------------------------------------------------------------
Fonts
--------------------------------------------------------------*/

/* Webfont: KGHolocene-Regular */

@font-face {
    font-family: 'KGHolocene';
    src: url('assets/KGHolocene/KGHolocene.ttf') format('truetype');
    font-style: normal;
    font-weight: normal;
    text-rendering: optimizeLegibility;
}

/* Webfont: KGOnlyAngel-Regular */
@font-face {
    font-family: 'KGOnlyAngel';
    src: url('assets/KGOnlyAngel/KGOnlyAngel.ttf') format('truetype');
    font-style: normal;
    font-weight: normal;
    text-rendering: optimizeLegibility;
}

/*--------------------------------------------------------------
Header
--------------------------------------------------------------*/

/* Announcement Bar */

#announcement-bar-container {
    background-color:var(--complimentary-color);
}
    
#announcement-bar {
    padding:10px; 
    text-align:center; 
    font-size: 90%;
    font-family: 'KGHolocene';
}

#announcement-bar a {
    color:var(--text-color, #303030);
}

#mobile-header {
    background-color:var(--darkblue-color);
    flex-direction: column;
    font-size: 80%;
    color:white;
}

#mobile-header a {
    color:white;
}

#mobile-header-flex {
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding:10px 0px;
}
    
#mobile-logo a{
    display:flex;
    justify-content: center;
    padding:10px 0px;
}

#mobile-logo img{
    max-height: 75px;
    width:auto;
}

#mobile-header-icons {
    list-style: none;
    padding:10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

#mobile-header-icons li {
    padding:7px;
}

li#mobile-navigation-toggler {
    padding:11px;
}

@media screen and (min-width: 375px) {
    #mobile-header-flex {
        justify-content: space-between;
        flex-direction: row;
    }
}

/* END OF SPACE-BETWEENED */
    
#mobile-main-menu {
    display:none;
    padding-top:25px;
    text-align:center;
    padding-bottom:15px;
}

#mobile-header-search {
    padding-bottom:15px;
    display:flex;
    justify-content: center;
}

#mobile-header-search form.search-form{
    max-width:400px;
}

.mobile-main-menu,
.mobile-main-menu ul {
    list-style: none; 
}
   
.mobile-main-menu a {
    color: white;
}
    
.mobile-main-menu li {
    padding:7px 0px;
    border-top: solid 1px #d3d3d3;
    text-transform:uppercase;
    letter-spacing:2px;
}

.mobile-main-menu li:first-of-type {
    border-top: none;
}

.mobile-main-menu ul li:first-of-type {
    border-top: solid 1px #d3d3d3;
}
    
.mobile-main-menu li.menu-item-has-children > a:after,
.mobile-main-menu li.page_item_has_children > a:after{
    content: '\25BE';
    display:inline-block;
}
    
.mobile-main-menu ul {
    padding-top:7px;
    display:block;
}
    
.mobile-main-menu ul li:last-of-type{
    padding-bottom:0px;
}

.mobile-main-menu ul li a {
    font-weight: normal;
    text-transform:none;
    letter-spacing:normal;
}
    
/* Desktop Header */

#desktop-header {
}

body.show-site-subheader #desktop-header {
    box-shadow: 0px 0px 5px rgba(0,0,0,0.5);
    position:relative;
}

body.unshadowed-header #desktop-header {
    box-shadow: unset;
}

#desktop-header-container {
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding:10px 0px;
}

#desktop-header-left {
    display:flex;
    align-items: center;
}

#desktop-logo {
    width:150px;
    flex: 0 0 auto;
    margin-right:30px;
}

#desktop-header-container a{
    color: white;
    font-weight: normal;
}

#desktop-header-container li{
    list-style: none; 
}
    
#desktop-navigation ul.main-menu {
    display:flex;
    flex-wrap: wrap;
    font-family: 'KGHolocene';
}
    
#desktop-navigation ul.main-menu li {
    padding:0px 10px;
    position: relative;
    text-transform: uppercase;
    letter-spacing: 2px;
}

#desktop-navigation ul.main-menu li:first-of-type {
    padding:0px 10px;
    position: relative;
    text-transform: uppercase;
    letter-spacing: 2px;
}
    
#desktop-navigation ul.main-menu li.menu-item-has-children > a::after, 
#desktop-navigation ul.main-menu li.page_item_has_children > a::after {
    content: '	\25BE';
    display: inline-block;
}
    
#desktop-navigation ul.main-menu li ul {
    display: none;
    position: absolute;
    z-index: 99999; 
    width: 180px;
    background-color: white;
    box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
    list-style: none;
    padding:5px 10px 5px 10px;
}
    
#desktop-navigation ul.main-menu li:hover > ul {
    display: block;
}
    
#desktop-navigation ul.main-menu li ul li {
    padding: 5px 0px 5px 0px;
    border-top:solid 1px lightgray;
    text-transform: none;
    letter-spacing: normal;
}

#desktop-navigation ul.main-menu li ul li:first-of-type {
    border-top: none;
}

#desktop-navigation ul.main-menu li ul li a {
    color:var(--text-color);
}

#desktop-header-right {
    margin-left:30px;
}

#desktop-header-search {
    max-width:200px;
    flex: 0 0 auto;
    margin-top:2px;
}
 
form.search-form {
    border: unset;
}

form.search-form button {
    border-radius:var(--border-radius);
}
    
.search-form-button-container {
    background-color:white;
    border-radius:var(--border-radius);
}
    
.search-submit {
    width:25px;
    background-color:white;
    border-radius:var(--border-radius);
}

form.search-form label {
    border-radius:var(--border-radius);
    margin-right:5px;
}

form.search-form label input.search-field{
    border-radius:var(--border-radius);
}

#desktop-header-icons {
    display:flex;
    align-items: center;
    padding: 5px 0px;
}
    
#desktop-header-icons li {
     padding:5px 5px 0px 5px;      
}
    
#desktop-header-icons li a{
    font-weight: bold;
    color:white;
    font-size: 75%;
}

/* Subheader Section */

body.show-site-subheader
.white-under-brush-border {
    display:none;
}

body.show-site-subheader #site-subheader {
    position: inherit;
    z-index: -1;
    margin-top:-2px;
}

.single-entry-title-container {
    display:flex;
    justify-content: center;
    margin:0px 30px;
}

/* Photo-Quote Section */

.photo-quote-outer-container {
    display:flex;
    justify-content:center;
    padding:15px;
}

.photo-quote-inner-container {
    display:flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.photo-quote-photo-container {
    min-width:200px;
    max-width:300px;
    background: rgb(145,179,206);
    background: linear-gradient(120deg, rgba(145,179,206,1) 0%, rgba(205,205,205,1) 100%);
    border: 6px solid white;
    transform: rotate(3deg);
    box-shadow: 0px 0px 3px rgba(0,0,0,0.5);
    margin:15px 30px;
}

.photo-quote-photo {
    border: 6px solid white;
    transform: rotate(-8deg);
    border-radius:0px;
    box-shadow: 0px 0px 3px rgba(0,0,0,0.5);
}

.photo-quote-quote {
    max-width: 550px;
    font-family: 'KGOnlyAngel';
    color: white;
    margin:15px 30px;
    text-align: center;
    font-size: 28pt;
    line-height: 1.0;
    text-shadow: 0px 0px 3px rgba(0,0,0,0.5);
}

.attribution {
    margin-top:10px;
}

.brush-border-up {
    width:100%;
    background-image: url(assets/images/brush-border.png);
    height:50px;
    background-repeat: repeat-x;
}

.white-under-brush-border {
    background-color: white;
    height:2px;
    width: 100%;
    margin-top:-1px;
}

@media screen and (min-width: 768px) {
    .photo-quote-inner-container {
        display:flex;
        flex-direction: row;
        justify-content:space-around;
        max-width: 1200px;
    }
    
    .photo-quote-photo-container {
        min-width:200px;
        max-width:200px;
    }
}

/*--------------------------------------------------------------
Misc
--------------------------------------------------------------*/

.rank-math-breadcrumb {
    text-align: center;
    text-transform: uppercase;
    letter-spacing:2px;
    font-size: 8pt;
}

.rank-math-breadcrumb a{
    color: var(--text-color) !important;
    font-weight: normal;
}

.wpforms-confirmation-container-full wpforms-confirmation-scroll {
    background: whitesmoke;
    border: 1px solid #D3D3D3;
}

/*--------------------------------------------------------------
Shortcodes
--------------------------------------------------------------*/

/* Display Image Group */

.display-image-item {
    padding:5px;
    box-sizing: border-box;
}

.display-image-group,
.display-image-group-2,
.display-image-group-3,
.display-image-group-4,
.display-image-group-other {
    margin:30px 0px;
}

@media screen and (min-width: 768px) {
    .display-image-group,
    .display-image-group-2,
    .display-image-group-3,
    .display-image-group-4,
    .display-image-group-other {
        display:flex;
        justify-content: space-around;
    }
    
    .display-image-group-2 display-image-item,
    .display-image-group-4 display-image-item {
        width:48%;
    }
    
    .display-image-group-3 display-image-item,
    .display-image-group-other display-image-item {
        width:30%;
    }
}

/*--------------------------------------------------------------
Template Parts
--------------------------------------------------------------*/

.grid-heading-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.grid-heading-container-item {
    padding:10px;
}

a.product-row-heading {
    color:var(--text-color, #303030);
}

/* Image Modal */
    
.activesliderimage:hover {
    cursor: pointer;
    opacity: 0.7;
}
    
#image-modal {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.9);
}
    
#modal-image {
    margin: auto;
    display: block;
    object-fit: contain;
    max-width: 90%;
    max-height: 90%;
}
    
#image-modal-close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

#image-modal-close:hover,
#image-modal-close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}
    
@media only screen and (min-width: 769px){
  #modal-image {
    width: 80%;
  }
}
    
/* BMD Grid Product */
    
.old-price-title {
    display:none;
}                
                
.grid-product, 
.square-grid-product {
    padding: 15px 0px;
    width:100%;
    height:100%;
    text-align:center;
}

.square-grid-review {
    padding: 15px 0px;
    width:100%;
    height:auto;
    text-align:center;
}

.grid-product-thumbnail {
    padding:5px;
    background-color:white;
    box-sizing: border-box;
}   
    
.grid-product a,
.square-grid-product,
.square-grid-review a {
    font-style:normal;
    text-align:center;
    font-weight:normal; 
    color: var(--text-color, #303030);
}
    
.grid-product-title {
    font-weight:bold;
    margin:10px 0px 5px 0px;
    font-size: 100%;
}
       
.grid-product-price-container {
    display: flex;
    justify-content: center;
}
           
.grid-product-price {
    text-transform:uppercase; 
    letter-spacing:2px; 
    font-size:12px; 
}

@media screen and (min-width: 530px) {
    .bmd-square-grid {
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
    }
}
                
@media screen and (min-width: 550px) and (max-width: 1400px) {
    .grid-product {
        width:45%;
    }
}
    
@media screen and (min-width: 1401px) {
    .grid-product {
        width:21%;
    }
}

@media screen and (min-width: 530px) and (max-width: 900px) {
    .square-grid-product,
    .square-grid-review,
    .square-grid-review {
        width:45%;
    }
}

@media screen and (min-width: 901px) and (max-width: 1400px) {
    .square-grid-product,
    .square-grid-review {
        width:30%;
    }
}
    
@media screen and (min-width: 1401px) {
    .square-grid-product,
    .square-grid-review {
        width:14.5%;
    }
}

/* Hide On Homepage According to Screen Width */

body.page-template-homepage .square-grid-product {
    display:none;
}
body.page-template-homepage .square-grid-product:nth-child(1) {
    display:block;
}
body.page-template-homepage .square-grid-product:nth-child(2) {
    display:block;
}
body.page-template-homepage .square-grid-product:nth-child(3) {
    display:block;
}
body.page-template-homepage .square-grid-product:nth-child(4) {
    display:block;
}
body.page-template-homepage .square-grid-product:nth-child(5) {
    display:block;
}
body.page-template-homepage .square-grid-product:nth-child(6) {
    display:block;
}
body.page-template-homepage .mobile-product-row-see-more {
    margin:15px 0px;
}

@media screen and (min-width: 900px) {
    body.page-template-homepage .square-grid-product:nth-child(7) {
        display:block;
    }
    body.page-template-homepage .square-grid-product:nth-child(8) {
        display:block;
    }
    body.page-template-homepage .square-grid-product:nth-child(9) {
        display:block;
    }
}

@media screen and (min-width: 1200px) {
    body.page-template-homepage .square-grid-product {
        width:22%;
    }
    body.page-template-homepage .square-grid-product:nth-child(10) {
        display:block;
    }
    body.page-template-homepage .square-grid-product:nth-child(11) {
        display:block;
    }
    body.page-template-homepage .square-grid-product:nth-child(12) {
        display:block;
    }
}

@media screen and (min-width: 1401px) {
    body.page-template-homepage .square-grid-product {
        width:14.5%;
    }
    body.page-template-homepage .square-grid-product {
        display:block;
    } 
    .mobile-product-row-see-more {
        display:none;
    }
}

#product-image-gallery {
    display:flex;
    flex-direction: column-reverse;
}

#product-thumbnail-container {
    display:flex;
    align-items: center;
}

#product-image:hover {
    cursor: pointer;
}

#product-thumbnails {
    display:flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
}

.product-thumbnail {
    margin:0px 15px 15px 0px;
}

.product-thumbnail:hover {
    cursor: pointer;
}

#gallery-scroll{
    max-height: 20px;
}

#gallery-scroll::after {
    content: '\25BA';
}
    
#gallery-scroll:hover {
    cursor: pointer;
    color: var(--link-color);
}

#product-thumbnail-spacer {
    width: 100%;
    max-width: 100%;
    flex-shrink: 1;
    flex-grow: 1;
}

@media screen and (min-width: 960px) {
    
    #product-image-gallery {
        flex-direction: column;
    }
    
    #product-image-container{
        max-height:500px;
        width: 100%;
        box-sizing: border-box;
    }
    
    #product-image-container img {
        max-height:500px;
        width:auto;
    }
    
    .product-thumbnail {
        margin:15px 15px 0px 0px;
    }
}

#gallery-scroll {
    display:block;
}
        
#product-thumbnails {
    padding-right:25px;
}

#product-thumbnails img{
    display:none;
}

#product-thumbnails img:first-child,
#product-thumbnails img:nth-child(1),
#product-thumbnails img:nth-child(2),
#product-thumbnails img:nth-child(3){
    display:block;
}

/* Font Previews */

.font-preview-form {
    width:100%; 
    margin:30px 0px;
}

.fontpreviewtextinput {
    width:100%;
    padding:5px;
    border:1px solid lightgray; 
    border-radius:2px;
    text-align: center;
}

.fontpreviewtextsubmit {
    width:100%; 
    margin-top:5px;
    padding:5px;
    border:1px solid lightgray;
    border-radius:2px; 
}

.fontpreviewtextsubmit:hover {
    cursor: pointer;
}

@media screen and (min-width: 350px) {
    .font-preview-form {
        display:flex;
    }
    
    .fontpreviewtextinput {
        width:unset;
        flex-grow:1;
        text-align: left;
    }

    .fontpreviewtextsubmit {
        width:unset;
        margin-left:7px; 
        margin-top: 0px; 
    }
}

@media screen and (min-width: 1300px) {
    .font-preview-form {
        width:auto; 
        display:block;
    }
    
    .fontpreviewtextsubmit {
        margin-left:unset; 
    }
}

/*--------------------------------------------------------------
Archive Templates
--------------------------------------------------------------*/

#archive-breadcrumb-sort-row {
    text-align: center;
    border-bottom: solid 1px #C0C0C0;
    padding-bottom:10px;
}

/*

.archive-title {
    text-align: center;
}

*/

/* Product Archive */

#product-archive-container{
    display:block;
}

#product-archive-sidebar {
    padding:10px 0px;
    width:100%;
    box-sizing: border-box;
    display: block;
    text-align: center;
}

/*
#product-archive-grid {
    width:100%;
    box-sizing: border-box;
}
*/

.sidebar-section {
    margin:15px 0px;
    display:flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sidebar-section:last-of-type {
    margin-bottom:0px;
}

span.sidebar-section-heading {
    font-weight: bold;
    padding:7px;
}

.sidebar-categories,
.sidebar-filters {
    display:flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sidebar-categories li,
.sidebar-filters li {
    padding:7px;
}

.sidebar-categories a,
.sidebar-filters a {
    color: var(--text-color, #303030);
    font-weight: normal;
}

.sidebar-categories a,
.sidebar-filters a {
    color: var(--text-color, #303030);
    font-weight: normal;
}

.sidebar-categories a.active-sidebar-item,
.sidebar-filters a.active-sidebar-item {
    color: var(--link-color, #7395b7);
    font-weight:bold;
}

@media screen and (min-width: 960px) {
    
    #archive-breadcrumb-sort-row {
        display:flex; 
        justify-content: space-between; 
        border-bottom: solid 1px #C0C0C0;
        padding-bottom:10px;
        flex-wrap: wrap;
    }    
    #product-archive-container{
        display:flex;
    }
    
    #product-archive-sidebar{
        width:200px;
        flex-grow:0;
        flex-shrink:0;
        text-align: left;
    }

    #product-archive-grid {
        margin-top:20px;
    }
    
    .sidebar-section {
        display:block;
    }

    .sidebar-section:last-of-type {
        margin-bottom:15px;
    }
    
    span.sidebar-section-heading {
        padding:0px;
    }

    .sidebar-categories,
    .sidebar-filters {
        display:block;
    }

    .sidebar-categories li,
    .sidebar-filters li {
        padding:0px;
    }
    
    #product-archive-grid {
        flex-grow:1;
        flex-shrink:1;
        padding-left:30px;
        margin-left:30px; 
        border-left: solid 1px #DCDCDC;
    }
}
    
/*--------------------------------------------------------------
Page & Post Templates
--------------------------------------------------------------*/

/* Single */
        
body.show-site-subheader .single-entry-title {
    margin:35px 0px 10px 0px;
    transform: rotate(-2deg);
    padding:5px 0px 5px 0px;
}

body.page-template-healthy .single-entry-title,
body.show-ad-subheader .single-entry-title {
    margin:0px 0px 10px 0px;
    transform: unset;
}

body.show-site-subheader.has-featured-image .single-entry-title {
    padding-bottom:30px;
}

body.show-site-subheader .single-entry-title-frame {
    margin:15px auto;
    background-color:white;
    padding:10px 15px;
    border-radius:2px;
    box-shadow: 0px 0px 5px rgba(104,89,72,0.5);
}

.single-entry-title {
    text-align: center;
}

#featured-image-container {
    text-align: center;
}

.page-featured-image {
    background-color:white;
    padding:5px;
    max-height: 500px;
    width:auto;
}

.widescreen-image {
    display:none;
    margin-bottom:30px;
}

.regular-image {
    display:block;
    margin-bottom:30px;
}

.has-site-subheader .page-featured-image,
.show-site-subheader .page-featured-image {
    margin-top: -45px;
}

.single-flex-container {
    margin:15px 0px;
    display:block;
}

.single-flex-container-left {
    width:100%;
}
        
.separated-content-container {
    border-bottom:solid 1px var(--border-color, #C0C0C0);
    padding-bottom: 15px;
    margin-bottom: 30px;
}

.single-flex-container-right {
    margin-top:30px;
}


@media screen and (min-width: 960px) {
    
    #site-subheader.has-site-subheader .single-entry-title,
    .show-site-subheader .single-entry-title {
        padding:unset;
    }
    
    .has-featured-image .single-entry-title,
    .has-featured-image .single-entry-title {
        padding:5px 0px 30px 0px;
    }

    .widescreen-image {
        display:block;
    }

    .regular-image {
        display:none;
    }
    
    .single-flex-container {
        display:flex;
    }
    
    .single-flex-container-left {
        margin-right:30px;
        box-sizing: border-box;
        flex-shrink:1;
    }

    .single-flex-container-right {
        margin-top:unset;
        width:380px;
    }
    
}

/* Search Results */

main form.search-form {
    border: 1px solid var(--border-color, #C0C0C0);
}

main form.search-form .search-form-button-container {
    padding:0px 3px;
    border-left: 1px solid var(--border-color, #C0C0C0);
}

body.search-results .single-entry-title {
    margin-bottom:0px;
}
    
.search-item-container {
    display:block;
}
    
.search-item-left {
    box-sizing: border-box;
    margin:15px 30px;
}
    
.search-item-left img {
    width: 100%;
    border-radius: var(--border-radius,10px);
    border: 1px solid var(--border-color, #C0C0C0);
}
    
.search-item-right {
    padding:15px 30px;
}

@media screen and (min-width: 960px) {
    
    .search-item-container {
        display:flex;
        border-top: solid 1px #DCDCDC;
        padding:15px;
    }
    
    .search-item-left {
        flex: 0 0 330px;
    }

    .search-item-right {
        flex: 1 1 auto;
        margin:15px;
        padding:unset;
    }
}

#search-statement-sort {
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#search-sortby-form {
    margin:10px;
}

@media screen and (min-width: 769px) {
    #search-statement-sort {
        display:flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        margin-bottom:20px;
    }   

    #search-sortby-form {
        margin:0px;
    }
}

/* Healthy */

.kg-flex-images {
    display:flex;
    max-width:100%;
    width:100%;
    box-sizing: border-box;
    flex-shrink: 1;
    flex-grow: 1;
    justify-content: center;
    overflow: hidden;
}

.kg-flex-images img{
    box-sizing: border-box;
    flex-shrink: 1;
    flex-grow: 1;
    max-height: 300px;
    max-width:100%;
    width:auto;
    border-radius:0px;
}

.kg-photo-align {
    padding:0px 60px 30px 60px;
    box-sizing: border-box;
}

@media screen and (min-width: 769px) {
    body.page-template-healthy .tiktok-embed {
        max-width:325px !important; 
        float:left; 
        margin-right:60px;
        margin-bottom:30px;
    }
    
    .kg-photo-align {
        width:300px;
        float:left;
        margin:0px 60px 30px 0px;
        padding:0px;
    }
}

/* Homepage */

.banner-image {
    margin: 30px 0px;
}

/* FAQ */

.faq-item-container {
    margin:30px 0px;
}

.faq-item-container li {
    margin:5px 0px;
}

/* Account Page */

#edd_profile_submit_fieldset {
    border:0px;
}

/* Contact Page */
    
body.show-site-subheader #contact-page-main {
    margin-top:-60px;
}

#contact-page-flex-container {
   text-align: center;
}

.contact-profile-image {
    border-radius: 50%;
    width:100%;
    max-width: 500px;
    max-height: 500px;
}

#contact-page-content {
    margin:0px auto;
    text-align: left;
    max-width: 500px;
}

#contact-form-container {
}

@media screen and (min-width: 960px) {
    
    #contact-page-main.has-site-subheader,
    .show-site-subheader #contact-page-main {
        margin-top:-45
    }
    
    #contact-page-flex-container {
        display:flex;
    }
    
    .contact-profile-image {
        border-radius: 50%;
        min-width: 300px;
        min-height: 300px;
        width:300px;
        height:300px;
        flex-grow:0;
        flex-shrink:0;
    }

    #contact-page-content {
        margin:unset;
        max-width: unset;
        text-align: left;
        padding:45px 30px;
        flex-grow:1;
        flex-shrink:1;
    }
    
}

/* Single Product */

body.single-download .single-entry-title {
    margin-top:0px;
    margin-bottom:30px;
}

body.single-download .single-breadcrumbs p {
    margin-bottom:0px;
}

.product-description {
    margin:30px 0px;
}

.available-links {
    margin:-7px 0px;
    font-size: smaller;
}

.available-links a img {
    margin:7px 3px 7px 0px;
}

.makerstype-link {
    color: #6F9EA3;
}

.tpt-link {
    color: #09a46c;
}

.variable-price-description {
    font-size: smaller;
    font-style: italic;
    margin:15px;
}

.font-product-warning {
    font-style: italic;
    font-size:smaller;
    background-color: #f4dfdf;
    border-radius:2px;
    border: solid 1px #efbdbd;
    padding:15px;
    box-sizing: border-box;
}

.edd_price_options.edd_multi_mode ul li{ 
    display:none;
    padding-top:15px;
}

.edd_price_options.edd_multi_mode ul li:first-of-type {
    display:block;
    padding-top:unset;
    border-top: none;
}

.edd_download_purchase_form .edd_price_options .edd_download_quantity_wrapper {
    display:inline-block;
    padding-left:0px;
    margin:0px;
    position: relative;
    top: -0.1em;
}

#show-all-prices-toggle {
    display:none;
}

.show-more-prices-toggle {
    padding:15px 0px;
    border-top: 1px solid #e0e0e0;
    font-weight: bold;
    color: var(--branding-color, #7395b7);    
}

.show-more-prices-toggle:hover {
    cursor: pointer;
}

.show-more-prices-toggle-caron {
    font-size:larger;
}

#price-group-toggle-label {
    font-weight: bold;
    font-size: smaller;
}
            
#price-group-toggle {
    margin-bottom:15px;
}

.edd-submit.button, 
.edd-submit.button:visited, 
.edd-submit.button:hover {
    background-color:var(--branding-color, #7395b7);
    border-color: var(--branding-color, #7395b7);
    color:white;
    border-radius: 2px;
    padding: 10px;
    width:100%;
    text-align: left;
    font-weight: bold;
    box-sizing: border-box;
}

.edd-add-to-cart-label::before {
    content: url(assets/icons/shopping-cart-solid.svg); 
    display: inline-block;
    filter: invert(100%) sepia(2%) saturate(788%) hue-rotate(226deg) brightness(115%) contrast(100%);
    width: 23px;
    height: 20px;
    padding:7px;
}

.edd-add-to-cart-label {
    display:flex;
    align-items: center;
}

.similar-products {
    margin:30px 0px 0px 0px;
    font-size: 1.4em;
    font-family: 'KGHolocene';
    font-weight: normal;
    text-transform: uppercase;
    letter-spacing:2px;
    line-height: 1.5;
}

/* Reviews */

body.post-type-archive-review .single-entry-title {
    margin-top:0px;
    margin-bottom:30px;
}

body.post-type-archive-review .single-breadcrumbs p {
    margin-bottom:0px;
}

body.show-ad-subheader #site-subheader {
    position: inherit;
    z-index: -1;
    margin-top:-4px;
}

#site-subheader-ad-container { 
    display:none;
}

.kg-review-ad {
}

.review-ad-label {
    text-align: center;
    font-size: 90%;
    padding:15px;
}

#health-submenu {
    display:none;
}
	
@media screen and (min-width: 769px) {
	#health-submenu {
		display:block;
	}		
}

#health-submenu {
    margin-top:-2px;
    background-color: #496989;
    color:white;
    padding:15px;
}

#health-submenu-container {
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#health-submenu a {
    color:white;
    font-size: 80%;
}

@media screen and (min-width: 769px) {
    
    #health-submenu-container {
    	display:flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    
    #health-submenu a {
        padding:0px 10px;
        text-transform: uppercase;
        font-size: 80%;
        letter-spacing: 1px;
    }
    
    #health-submenu .contained div a {
        border-right: 2px solid white;
    }
    
    #health-submenu .contained div:last-of-type a{
        border-right: none;
    }
    
}

@media screen and (min-width: 1200px) {
    
    #health-submenu-container {
        justify-content: flex-start;
        margin-left:185px;
    }
}

@media screen and (min-width: 1700px) {
    
    #health-submenu-container {
        margin-left:200px;
    }
}






/* Single Review */

body.single-review .single-entry-title {
    margin-top:0px;
    margin-bottom:30px;
}

body.single-review .single-breadcrumbs p {
    margin-bottom:0px;
}

#review-tldr-container {
    margin:15px 0px;
    display:flex;
    justify-content: center;
}

#review-tldr {
    background-color: #c7dcec;
    padding:10px 30px;
    border-radius:30px;
    display:flex;
    justify-content: center;
    align-items: center;
}

#review-tldr strong {
    font-weight: normal;
}

#review-tldr img { 
    padding-right:10px;
}

#review-tldr img.thumbs-up { 
    padding-bottom:2px;
}

#review-tldr img.thumbs-down { 
    padding-top:2px;
}

.review-affiliate-link {
    text-align: center;
    padding-top:10px;
    font-weight: bold;
}

.review-flex-container {
    display:flex;
    flex-direction: column-reverse;
}

.review-flex-container-left,
.review-flex-container-right,
.review-flex-container-right-flexed {
    margin:15px;
}

.review-flex-container-right {
    flex: auto;
}

.review-video-container {
    margin-top:-3px;
}

.product-review-image-container {
    margin:15px 10px;
}

.review-flex-container-right-flexed .product-review-image-container{
    margin:15px;
}

.product-specs-container{
    margin:30px 50px 0px 50px;
}

.product-specs {
    padding:10px;
}

ul.product-pros,
ul.product-cons {
    list-style: none;
}

ul.product-pros li ,
ul.product-cons li {
    padding: 0px 3px;
}

ul.product-pros img {
    margin-right:3px;
}

ul.product-cons img {
    margin-right:9px;
}

.review-about {
    text-align: center;
}

.review-product-links {
    margin-top:30px;
    padding-top:15px;
    border-top: solid 1px #C0C0C0;
    text-align: center;
}

.review-product-links ul {
    list-style: none;
    padding-left:0px;
}

.review-product-links li {
    margin:3px 0px;
}

.smalltext {
    font-size: 90%;
    font-style: italic;
}

.other-reviews {
    margin-top:30px;
    padding-top:15px;
    border-top: solid 1px #C0C0C0;
}

.other-review-title {
    padding:5px 0px;
    font-weight: bold;
}

@media screen and (min-width: 960px) {
    .review-flex-container {
        flex-direction: row;
    }
    
    .review-flex-container-right-flexed {
        display:flex;
    }
    
    .product-review-image {
        max-width:350px;
        width:100%;
        height:auto;
    }
    
    .product-specs-container{
        margin:0px;
    }
    
    .review-about,
    .review-product-links {
        text-align: left;
    }
    
}

/* Recipes */

body.post-type-archive-recipe .single-entry-title,
body.tax-recipe_category .single-entry-title,
body.tax-recipe_tag .single-entry-title {
    margin-top:0px;
    margin-bottom:30px;
}

body.post-type-archive-recipe .single-breadcrumbs,
body.tax-recipe_category .single-breadcrumbs, 
body.tax-recipe_tag .single-breadcrumbs p {
    margin-bottom:0px;
}

/* Single Recipe */

body.single-recipe .single-entry-title {
    margin-top:0px;
    margin-bottom:30px;
}

body.single-recipe .single-breadcrumbs p {
    margin-bottom:0px;
}

.tldr-heart {
    padding-bottom:2px;
}
    
.print-recipe-link {
    margin:30px 15px 23px 15px;
}
    
.print-icon {
    padding-right:5px;
    padding-bottom:3px;
}
    
.print-recipe-link a {
    font-family: 'KGHolocene';
    font-weight: normal;
    text-transform: uppercase;
    letter-spacing: 2px;
    line-height: 1.5;
    color:var(--text-color, #303030)
}
    
    #recipe-tag-link-container {
        display: flex; flex-wrap: wrap;
    }

.recipe-tag-link-div {
    padding:10px 0px;
}
    
a.recipe-tag-link {
    padding:10px 20px; margin:7px 4px; background-color:var(--link-color, #7395b7); color:white; border-radius:20px;
}
    
#recipe-specs-container {
    margin:15px 0px;
}
    
#nutrition-info-list {
    display:flex;
    flex-wrap: wrap;
    margin:0px -7px;
    font-size: 90%;
}

.nutrition-info-item {
    padding:0px 7px;
}
    
.nutrition-info-label {
    font-weight: bold;
}
    
.nutrition-info-text {
}
    
.ingredient-section-heading {
    font-weight: bold;
    margin:5px 0px;
}
    
.ingredient-section-heading:first-of-type {
    margin-top:-5px;
}
    
.recipe-directions{
    padding-inline-start: 20px;
}
    
.recipe-directions li {
    margin:10px 0px;
}
    
.recipe-directions li:first-of-type {
    margin-top:-5px;
}
    
#print-recipe {
    display:none;
}
    
@media print {
    
    .single-entry-title {
        margin-top:50px;
    }
    
    #site-header,
    .single-breadcrumbs,
    #review-tldr-container,
    .review-flex-container,
    #display-recipe, 
    .review-product-links,
    .other-reviews,
    .bmd-square-grid, 
    .icon-footer, 
    #site-footer {
        display:none !important;
    }

    #print-recipe {
        display:block;
        font-size: 80%;
    }

    #print-recipe h2.review-about {
        text-align: left;
    }
    
}

/* Review Archive */
   
#side-review-section-ad-container{
    display:none;
}

#featured-review {
    text-align: center;
}

.featured-review-image {
    max-width: 400px;
    width: 100%;
    height: auto;
}

.featured-review-title-container {
    display:flex;
    align-items: center;
    justify-content: center;
    padding-top:5px;
}

.featured-review-title-container a {
    color:var(--text-color, #303030);
    padding:7px 7px 7px 0px;
    font-size: 125%;
}

.featured-review-title-container .thumbs-up {
    padding:7px;
    margin-bottom:6px;
}

.featured-review-title-container .thumbs-down {
    padding:7px;
    margin-top:3px;
}

#featured-review-text {
    text-align: left;
}

#new-reviews {
    flex:1 1 auto;
}

.new-review {
    display:flex;
    border-top:solid 1px #D3D3D3;
    margin:30px 30px 30px 0px;
    padding-top:30px;
    position: relative;
}

.new-reivew-left {
    flex:0 0 100px;
    margin-right:15px;
}

.new-review a {
    color: var(--text-color, #303030);
}

.new-review img {
    width:100px;
    height: auto;
}

img.absolute-on-image-thumb {
    position:absolute;
    width: 25px;
    height:25px;
    top:45px;
    left:15px;
    filter: invert(100%) sepia(2%) saturate(788%) hue-rotate(226deg) brightness(115%) contrast(100%) drop-shadow(0px 0px 2px rgb(0 0 0 / 0.3));
}

.new-reivew-right {
    flex:1 1 auto;
}

#review-landing-page-categories-container {
    background-color: #e0edf7;
    margin-top:30px;
    margin-bottom:-30px;
}

#review-landing-page-categories {
    padding:15px;
    display:flex;
}
    
#review-grid {
    margin-top:30px;
    margin-bottom:-15px;
}
    
@media screen and (min-width: 380px) {
    
    #site-subheader-ad-container {
        margin:30px 0px 1px 0px;
        display: flex;
        justify-content: center;
        text-align: center;
    }
    
    #site-subheader-ad {
        height:100px;
        width:320px;
    }
    
    #bottom-review-section-ad-container {
        display:flex;
        justify-content: center;
        margin-top:30px;
    }
    
    #bottom-review-section-ad {
        height:100px;
        width:320px;
    }

}   
    
@media screen and (min-width: 481px) {
    
    #site-subheader-ad {
        height:60px;
        width:468px;
    }
    
    #bottom-review-section-ad {
        height:60px;
        width:468px;
    }

}
    
@media screen and (min-width: 960px) {
    
    #site-subheader-ad-container {        
        margin:30px 0px 0px 0px;
    }
    
    #site-subheader-ad {
        height:90px;
        width:728px;
    }
    
    #top-review-section {
        display:flex;
        flex-direction: row-reverse;
        max-width: 900px;
        margin-right:auto;
        margin-left:auto;
    }
    
    #featured-review {
        flex:0 0 300px;
    }
    
    .featured-review-title-container {
        justify-content: space-between;
    }
    
    .new-review {
        margin:15px 30px 15px 0px;
        padding-top:15px;
    }
    
    .new-review:first-of-type {
        border-top:none;
        margin-top:0px;
    }
    
    img.absolute-on-image-thumb {
        top:30px;
    }
    
    #bottom-review-section-ad {
        height:90px;
        width:728px;
    }
}
    
@media screen and (min-width: 1300px) {
    
    #top-review-section {
        max-width: 1200px;
        margin-right:auto;
        margin-left:auto;
    }
    
    #side-review-section-ad-container {
        display:flex;
        justify-content: flex-end;
        flex:0 0 330px;
        margin-top:0px;
    }
    
    #side-review-section-ad {
        width:300px;
        margin-left:30px;
        height:250px;
    }
}

/*--------------------------------------------------------------
Footer
--------------------------------------------------------------*/

.icon-footer {
    background-color: var(--branding-color, #7395b7);
    margin-top:30px;
}

.icon-footer-container {
    padding:15px 0px;
    display: flex;
    justify-content: center;
    flex-wrap:wrap;
    align-items: center;
}

.footer-logo {
    height:35px;
    width:auto;
    margin:5px;
}

.footer-socials-flex {
    display:flex;
    list-style: none;
    padding-inline-start:0px;
    margin:0px;
    align-items: center;
}

.footer-socials-flex li {
   margin:8px;
}

#site-footer {
    background-color: var(--darkblue-color, #507191);
    color:white;
    padding:15px 0px;
    text-align: center;
}
    
#site-footer h3 {
    font-family: 'KGHolocene';
    font-weight: normal;
    margin:15px 0px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 1.0em;
}
    
#site-footer li {
    margin:8px 0px;    
}
    
#site-footer a {
    color:white;
	font-weight:normal; 
}
    
.footer-column {
    padding:15px 0px;
}
    
.footer-column ul {
    list-style: none;
    padding-inline-start:0px;
    margin:0px;
}

#copyright-credit {
    padding:15px 0px;
}

#footer-copyright {
    font-family: 'KGHolocene';
    text-transform: uppercase;
    letter-spacing:2px;
}

#footer-site-link {
    color: white;
    font-weight: normal;
}

#bmd-credit-link {
    font-style: italic;
    font-size: smaller;
}
	
@media screen and (min-width: 769px) {
	#site-footer-columns {
		display:flex;
		align-items: flex-start;
		justify-content:center;
	}
	.footer-column {
		padding:15px 30px;
	}
}




/* Make Site Flex with Sticky Footer*/
.flexsite {
    display: flex;
    min-height: calc(100vh - var(--footer-height, 100px));
    flex-direction: column;
    height: calc(100vh - var(--footer-height, 100px));
}

.flexsite-content {
    flex: 1 0 auto;
}