.wf-loading body { visibility: hidden; }

/* Typography */
@font-face {
    font-family: 'Tenor Sans';
    src: url('/wp-content/themes/storefront-child/fonts/tenorsans-regular-webfont.woff2') format('woff2'),
         url('/wp-content/themes/storefront-child/fonts/tenorsans-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
h1, h2, h3, h4, h5, h6 { font-family: 'Tenor Sans', sans-serif; }
p+h2, p+header h2, p+h3, p+h4, ul+h2, ul+header h2, ul+h3, ul+h4, ol+h2, ol+header h2, ol+h3, ol+h4, table+h2, table+header h2, table+h3, table+h4, blockquote+h2, blockquote+header h2, blockquote+h3, blockquote+h4, form+h2, form+header h2, form+h3, form+h4 {
    margin-top: 0;
}
p a { text-decoration: underline; }

/* Globals */
.site-main { margin-bottom: 0; }
.site-footer { padding-top: 0; padding-bottom: 0; margin-top: 2em; }
.site-info { text-align: center; padding-top: 2em; padding-bottom: 2em; }
.search-field { -moz-border-radius: 5px; -webkit-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; }
.content-area { margin-bottom: 1em; }
.wp-block-image img { width: 100%; height: auto; }
#wpfront-scroll-top-container { bottom: 80px!important; }
.wp-block-columns { margin-bottom: 0; }
.wp-block-column { margin-bottom: 0; }
.contact-form label span { opacity: 1!important; }

/* Header */
.site-branding { display: flex !important; }
.hentry .entry-header { padding-bottom: 0.5em; }
a.custom-logo-link { align-self: center; }
img.custom-logo { max-width: 4em !important; }
h1.site-title { margin-left: 0.5em !important; font-size: 1.5em !important; align-self: center; }
h1.site-title a { font-weight: 300 !important; }
.main-navigation ul.menu>li.menu-item-has-children>a::after, .main-navigation ul.menu>li.page_item_has_children>a::after, .main-navigation ul.nav-menu>li.menu-item-has-children>a::after, .main-navigation ul.nav-menu>li.page_item_has_children>a::after { margin-left: 0.5em; }
.main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a { padding: 1em; }
.no-wc-breadcrumb .site-header { margin-bottom: 1em; }
.yoast-breadcrumbs { margin-bottom: 1em; }
.yoast-breadcrumbs span span { font-size: 1rem; margin: 0 0.25em; }
.yoast-breadcrumbs span span:first-of-type { margin-left: 0; }
.yoast-breadcrumbs span span:last-of-type { margin-right: 0; }

/* Gallery & home tiles */ 
.tile-gallery { flex-wrap: wrap!important; }
.home-tiles { margin-bottom: 0!important; }
.home-tiles+p { font-size: 1.2em; margin-top: 0.7em; }
.home-tiles, .category-tiles { -moz-border-radius: 20px; -webkit-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px; }
.home-tiles:hover, .category-tiles:hover { text-decoration: underline; }
.home-tiles img, .category-tiles img { -moz-border-radius: 20px;  -webkit-border-radius: 20px; -o-border-radius: 20px;  border-radius: 20px; object-fit: cover; aspect-ratio: 4 / 3; }
.home-tiles.light img, .category-tiles.light img { box-shadow: 0 0 20px #eaeaea; }
.home-tiles figcaption, .category-tiles figcaption { -moz-border-radius: 0 0 20px 20px; -webkit-border-radius: 0 0 20px 20px; -o-border-radius: 0 0 20px 20px; border-radius: 0 0 20px 20px; font-family: 'Tenor Sans', sans-serif; margin-bottom: 0; }
.home-tiles figcaption { font-size: 2em !important; }
.category-tiles.light figcaption { color: black!important; text-shadow: 0 0 1.5px white!important; }
.category-tiles figcaption { font-size: 1.2em !important; }
.category-tiles-container p { margin: 0 0 1.25em 0!important; line-height: 1.25em; }
.home-tiles figcaption a, .category-tiles figcaption a { text-decoration: none !important; color: #2c2d33; }
.logo-tile img { object-fit: contain!important; }
.taxonomy-description { margin-bottom: 3em; }
.homepage-icon { margin: 0!important; }
.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before { clip-path: inset(0 round 0 0 20px 20px); max-height: 47px; }

/* Hire Me & Services */
.wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex:has(.service-card) { margin-bottom: 1em; gap: 1em; }
.service-card { background: #eaeaea; padding-top: 1em; color: #525252; }
.service-card h3 { color: #006E3B; border-bottom: 1px solid darkgray; margin: 0 1em 1em 1em; }
.service-card ul { list-style-type: none; margin: 0 0 1.5em 0; text-align: center; }

/* One-offs */
ul.stockList { list-style-type: none; display: flex; margin: 0 0 2em 0; justify-content: center; flex-wrap: wrap; }
ul.stockList li { padding: 0.25em 1em; flex-shrink: 0; }
.homepage-gallery a, .wp-block-image a { display: block; }
body.home .yoast-breadcrumbs { display: none; }

/* Posts */
h1.entry-title { margin: 0; }
h2.alpha.entry-title { font-size: 2em; }
.posted-on { font-size: 1em; }
.img-light { box-shadow: 0 0 20px #eaeaea; }
.home-road { margin-bottom: 0; }
.home-road div { margin-bottom: 0!important; }
.wp-block-post-title a, .wp-block-post-terms a { text-decoration: none!important; }
.hentry .entry-content a:hover, .hentry .entry-content a:focus, .hentry .entry-content a.wp-block-post-excerpt__more-link { text-decoration: underline; }

/* Footer */
.footer-widgets { padding-top: 2em; }
.footer-widgets .widget { margin-bottom: 0; }
.wp-block-social-links { justify-content: center; }

/* Media queries */

@media (min-width: 576px) {
	h1.site-title { font-size: 2em !important; }
}
@media (min-width: 768px) {
	.site-header { padding-top: 1em; }
	.woocommerce-active .site-header .site-search { margin-bottom: 0; margin-top: 1em; }
	.site-branding { margin-bottom: 0; }
	.storefront-breadcrumb { margin: 0; }
	.hentry .entry-header { display: flex; margin-bottom: 1.5em; justify-content: space-between; align-items: center; }
	.hentry .entry-content .wp-block-columns .wp-block-column:not(:last-child), .editor-styles-wrapper .wp-block-columns .wp-block-column:not(:last-child) { padding-right: 0; margin-right: 0; }
	.wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex:has(.service-card) { gap: 2em; }
	.category-tiles-container { flex-basis: 45%!important; flex-grow: 0!important; }
	.storefront-full-width-content.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li { width: 15%; float: left; margin-right: 6%; }
	#wpfront-scroll-top-container { bottom: 20px!important; }
	.wc-block-product-categories-list--has-images .wc-block-product-categories-list-item { flex-basis: 16.9%; }
}
@media (min-width: 925px) {
	.category-tiles-container { flex-basis: 30%!important; flex-grow: 0!important; }
}