/* overflow */
body{
overflow-x: hidden;
}

/* lazy image fade */
img[loading="lazy"]{
opacity: 0;
transition: opacity 0.5s ease;    
}
img[loading="lazy"].loaded{
opacity: 1;
}

/* backgrounds */
.bg-attachment-fixed::before{
background-attachment: fixed;
}

/* lazy bg img styles */
[data-lazy-bg-img]::before{
content: "";
background-size: cover;
background-position: center;
position: absolute;
top: 0px;
right: 0px;
bottom: 0px;
left: 0px;
z-index: 1;
opacity: 0;
transition: opacity 0.5s ease;  
}

/* Naked Header */
.naked, .not-naked{
top: var(--wp-admin--admin-bar--height);
}
.naked{
width: 100%;
background-color: transparent !important;
}
.naked, 
.naked a, 
.naked button{
color: #FFF !important;
}
.naked, .not-naked{
transition: background-color .5s ease-in-out, color .5s ease-in-out;    
}
.naked *, .not-naked *{
transition: inherit;   
}
.naked .naked-logo,
.not-naked .logo{
transition: opacity .5s ease-in-out;
}
.naked .naked-logo,
.not-naked .naked-logo{
position: absolute;        
}
.naked .logo,
.not-naked .naked-logo{
visibility: hidden;
opacity: 0;
}
.not-naked .logo{
visibility: visible;
opacity: 1;
}

/* carousel */
.carousel-indicators .dots{
border-radius: 50%;
width: 0px;
height: 0px;
padding: 5px;
}

/* content images */
p img{
max-width: 100%;
height: auto;
}

/* accordion */
.accordion-button:focus{
box-shadow: none;
}

/* text shadow */
.text-shadow-sm{
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}
.text-shadow{
text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}
.text-shadow-lg{
text-shadow: 3px 3px 7px rgba(0, 0, 0, 0.7);
}

/* Cards for gutter alignment */
.card:first-of-type{
margin-left: 0 !important;
}
.card:last-of-type{
margin-right: 0 !important;
}

/* Cards for stacking */
.card:last-of-type{
margin-bottom: 0 !important;
}

/* Header */
header p{
margin: 0;
}

/* Footer / Copyright */
#footer p,
#copyright p{
margin: 0;
}

/* boostrap display drop down on hover */
.nav-item{
position: relative;
}
ul.dropdown-menu{
margin-top: 0 !important;
}
.navbar-nav li:hover > ul.dropdown-menu{
display: block;
}
.navbar div, .navbar ul, .navbar li{
background-color: inherit;
}
.dropdown-toggle::after{
vertical-align: 2px;
}

/* fix WP admin bar going over our sticky navs */
#wpadminbar{
z-index: 1;    
}

/* fix viewport height */
.vh-100.h-less-header{
height: 100vh; /* stop height jump whilst below is calculated */
height: calc(100vh - var(--ac-header-height)) !important;
}

/* paragraphs */
p:last-of-type{
margin-bottom: 0;
}

/* utilities we must use body to beat annoying .block-editor__container img{ height: auto; }  */
body .h-100px{
height: 100px;    
}
body .h-150px{
height: 150px;    
}
body .h-200px{
height: 200px;    
}
body .h-250px{
height: 250px;    
}
body .h-300px{
height: 300px;    
}
body .h-400px{
height: 400px;    
}
body .h-500px{
height: 500px;    
}
body .h-600px{
height: 600px;    
}
body .h-700px{
height: 700px;    
}
body .h-800px{
height: 800px;    
}
body .h-900px{
height: 900px;    
}
body .h-1000px{
height: 1000px;    
}
@media screen and (max-width: 992px) {
    body .vh-100{
        height: auto !important;
        min-height: 100vh;  
    }
    body .h-xs-50{
        height: 50%;
    }
    body .h-100px{
        height: auto;
        min-height: 100px;  
    }
    body .h-150px{
        height: auto;
        min-height: 150px;  
    }
    body .h-200px{
        height: auto;
        min-height: 200px;    
    }
    body .h-250px{
        height: auto;
        min-height: 250px;    
    }
    body .h-300px{
        height: auto;
        min-height: 300px;    
    }
    body .h-400px{
        height: auto;
        min-height: 400px;    
    }
    body .h-500px{
        height: auto;
        min-height: 500px;    
    }
    body .h-600px{
        height: auto;
        min-height: 600px;    
    }
    body .h-700px{
        height: auto;
        min-height: 700px;    
    }
    body .h-800px{
        height: auto;
        min-height: 800px;    
    }
    body .h-900px{
        height: auto;
        min-height: 900px;    
    }
    body .h-1000px{
        height: auto;
        min-height: 1000px;    
    }
}