/*
Theme Name:   	Tenaci Preview
Theme URI:    	https://github.com/stuartduff/storefront-child-theme
Author:       	Stuart Duff
Author URI:     https://extrude.se
Template:     	storefront
Description:  	This is a child theme for WooThemes StoreFront theme
Version:      	2.0.5
License:      	GNU General Public License v2 or later
License URI:  	http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  	tenaci
Tags:         	black, white, light, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, threaded-comments, accessibility-ready

*/
/*
 * Add your own custom css below this text.
 */

body.home .storefront-product-section {
    display: none;
}
 
.site-footer {

    padding: 1.618em 0 0;
}

.site-info {
    padding: 0.7em 0;
}


.footer-widgets {
    padding-top: 0em;
    border-bottom: 1px solid rgba(0,0,0,.05);
}

/* Tenaci 1.1: restrained, mobile-first refinement for Storefront 4.6.2.
 * Brand colours and font family continue to come from Storefront settings.
 * No gallery, variation, cart, checkout or navigation behaviour is replaced.
 */
body {
    --tenaci-line: rgba(110, 115, 120, .28);
    -webkit-text-size-adjust: 100%;
}
.site-header { border-bottom: 1px solid var(--tenaci-line); }
.site-header .site-branding img { height: auto; }
.site-header .site-search .search-field { border-radius: 2px; min-height: 48px; }
.main-navigation a { text-underline-offset: .2em; }
button.menu-toggle { min-height: 48px; }
.site-content :is(a, button, input, select, textarea):focus-visible,
.site-header :is(a, button, input):focus-visible,
.storefront-handheld-footer-bar a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}
.site-content :is(h1, h2, h3) { overflow-wrap: break-word; }
.woocommerce-products-header .page-title,
.single-product div.product .product_title {
    font-weight: 700;
    letter-spacing: -.025em;
    line-height: 1.15;
}
.woocommerce-products-header .page-title { font-size: clamp(28px, 4vw, 44px); }
.single-product div.product .product_title { font-size: clamp(26px, 3vw, 40px); }
.woocommerce-breadcrumb { line-height: 1.6; overflow-wrap: anywhere; }

/* Product images remain uncropped. Native prices, ratings and sale labels stay visible. */
.site-main ul.products li.product {
    text-align: left;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--tenaci-line);
}
.site-main ul.products li.product img {
    border-radius: 2px;
    margin: 0 auto 16px;
}
.site-main ul.products li.product .woocommerce-loop-product__title,
.site-main ul.products li.product .woocommerce-loop-category__title {
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: -.01em;
    overflow-wrap: anywhere;
    margin-bottom: 8px;
}
.site-main ul.products li.product .price {
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 12px;
    font-variant-numeric: tabular-nums;
}
.site-main ul.products li.product .price ins { font-weight: 700; }
.site-main ul.products li.product .star-rating { margin-left: 0; }
.site-main ul.products li.product .button {
    min-height: 44px;
    padding: 11px 14px;
    border-radius: 2px;
    font-size: .9375rem;
    line-height: 1.4;
    white-space: normal;
    text-align: center;
}
.site-main ul.products li.product .added_to_cart { margin: 8px 0 0; }
.storefront-sorting { padding-block: 12px; border-block: 1px solid var(--tenaci-line); }
.woocommerce-ordering select {
    max-width: 100%;
    min-height: 44px;
    padding: 8px;
    font: inherit;
    border: 1px solid var(--tenaci-line);
    border-radius: 2px;
}
.single-product div.product .summary .price {
    font-size: clamp(22px, 2.2vw, 28px);
    font-variant-numeric: tabular-nums;
    line-height: 1.4;
    margin-bottom: 16px;
}
.single-product div.product .summary .woocommerce-price-suffix { font-size: .65em; }
.single-product div.product .woocommerce-product-details__short-description { line-height: 1.7; }
.single-product div.product form.cart { border-top: 1px solid var(--tenaci-line); padding-top: 20px; }
.single-product div.product form.cart .variations { margin-bottom: 16px; }
.single-product div.product form.cart .variations th,
.single-product div.product form.cart .variations td { padding-bottom: 12px; }
.single-product div.product form.cart .variations label { font-weight: 700; }
.single-product div.product form.cart .variations select {
    min-height: 48px;
    width: 100%;
    max-width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--tenaci-line);
    border-radius: 2px;
    font: inherit;
    box-sizing: border-box;
}
.single-product div.product form.cart .reset_variations { padding-block: 8px; }
.single-product div.product form.cart .quantity .qty { min-height: 50px; border-radius: 2px; }
.single-product div.product form.cart .single_add_to_cart_button {
    min-height: 50px;
    padding: 12px 24px;
    border-radius: 2px;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
    white-space: normal;
}
.single-product div.product .product_meta { line-height: 1.7; overflow-wrap: anywhere; }
.woocommerce-tabs ul.tabs li a { padding-block: 16px; }
.woocommerce-product-attributes th,
.woocommerce-product-attributes td { overflow-wrap: anywhere; }
.woocommerce-pagination .page-numbers li :is(a, span) { min-width: 44px; min-height: 44px; }

@media (max-width: 767px) {
    .col-full { margin-left: 16px; margin-right: 16px; }
    .site-header { padding-top: 18px; padding-bottom: 18px; }
    .site-header .site-branding img { max-width: 180px; }
    .main-navigation .handheld-navigation a { padding-top: 12px; padding-bottom: 12px; }
    .handheld-navigation .dropdown-toggle { min-height: 44px; min-width: 44px; }
    .storefront-breadcrumb { padding-block: 14px; margin-bottom: 12px; }
    .woocommerce-breadcrumb { font-size: .8125rem; }
    .site-main .woocommerce-products-header { padding-bottom: 20px; }
    .site-main ul.products {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 14px;
    }
    .site-main ul.products::before,
    .site-main ul.products::after { content: none; }
    .site-main ul.products li.product {
        float: none;
        width: auto;
        min-width: 0;
        margin: 0;
        padding: 0 0 16px;
        display: flex;
        flex-direction: column;
    }
    .site-main ul.products li.product .button { margin-top: auto; width: 100%; }
    .site-main ul.products li.product .woocommerce-loop-product__title { font-size: .9375rem; }
    .site-main ul.products li.product .price { font-size: .9375rem; }
    .site-main ul.products li.product img { margin-bottom: 12px; }
    .storefront-sorting { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
    .storefront-sorting::before,
    .storefront-sorting::after { content: none; }
    .storefront-sorting .woocommerce-ordering { width: 100%; margin: 0; }
    .storefront-sorting .woocommerce-ordering select { width: 100%; font-size: 16px; }
    .storefront-sorting .woocommerce-result-count { margin: 0; }
    .storefront-sorting .woocommerce-pagination { margin: 0; }
    .single-product div.product .woocommerce-product-gallery { margin-bottom: 24px; }
    .single-product div.product .summary { margin-bottom: 28px; }
    .single-product div.product form.cart .variations th,
    .single-product div.product form.cart .variations td { display: block; width: 100%; }
    .single-product div.product form.cart .variations th { padding-bottom: 6px; }
    .single-product div.product form.cart .variations select,
    .single-product div.product form.cart input { font-size: 16px; }
    .single-product div.product form.cart .single_add_to_cart_button {
        float: none;
        display: block;
        width: 100%;
        clear: both;
        margin-top: 12px;
    }
    .single-product div.product form.cart .quantity { margin-bottom: 12px; }
    .woocommerce-tabs { padding-top: 16px; }
    .woocommerce-tabs ul.tabs { margin-bottom: 24px; }
    .storefront-handheld-footer-bar { padding-bottom: env(safe-area-inset-bottom, 0px); }
    .site-footer { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
}
@media (min-width: 768px) {
    .site-main ul.products li.product .button { max-width: 100%; }
    .single-product div.product .summary { padding-top: 4px; }
}
@media (prefers-reduced-motion: reduce) {
    .handheld-navigation, .handheld-navigation ul.menu .sub-menu,
    button.menu-toggle::before, button.menu-toggle::after,
    button.menu-toggle span::before { transition: none; }
}
