/*
 Theme Name:   GP Child
 Theme URI:    https://generatepress.com
 Description:  GeneratePress child theme customized by DK John Digital
 Author:       DK John
 Author URI:   https://dkjohn.com
 Template:     generatepress
 Version:      1.0
*/





/* Root values */

:root {
	--px-default: clamp(1rem, 0.848rem + 0.758vw, 1.5rem);
	--py-default: clamp(3rem, 2.394rem + 3.03vw, 5rem);
}


/* __TYPOGRAPHY TOKENS */
:root {

	--text-xxs: 0.625rem;
	--text-xs: 0.75rem;
	--text-sm: 0.875rem;
	--text-base: 1rem;
	--text-lg: 1.125rem;
	--text-xl: 1.25rem;
	--text-2xl: 1.5rem;
	/* 	prepare clamp values for heading */
}


/* Border Radius */
:root {	
	--rounded: 0.25rem;
	--rounded-md: 0.375rem;
	--rounded-lg: 0.5rem;
	--rounded-xl: 0.75rem;
	--rounded-2xl: 1rem;
	--rounded-3xl: 1.5rem;
	--rounded-full: 9999px;
}


/* __Reset__ */

html, body {
    height: 100%;
    width: 100%;
    font-size: 16px !important;
}

.site-wrapper {
	max-width: 1920px;
	margin: auto;
}


body #main {
  min-height: 75vh;
} 


/* HELPER CLASSES */

:root {
	--max-w-md: 768px;
}

/* Styling */




/* Filter layout */
.shop-product-filters {
    margin-bottom: 30px;
}

.shop-filter-top-row {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(220px, 0.9fr);
    gap: 20px;
    margin-bottom: 22px;
}

.shop-filter-search,
.shop-filter-category {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.shop-product-filters label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    color: #777;
}

.shop-product-filters input,
.shop-product-filters select {
    box-sizing: border-box;
    width: 100%;
    height: 60px;
    padding: 0 18px;
    border: 1px solid #d9dfe5;
    border-radius: 0;
    background: #fff;
    color: #172033;
    font: inherit;
}

.shop-filter-tags {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 35px;
    padding: 20px 0;
    border-top: 1px solid #d9dfe5;
    border-bottom: 1px solid #d9dfe5;
}

.shop-filter-tags a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #777;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    text-transform: uppercase;
}

.shop-filter-tags a span {
    font-size: 11px;
    font-weight: 400;
}

.shop-filter-tags a:hover,
.shop-filter-tags a.is-active {
     background-color: var(--accent);
}

.shop-filter-bottom-row {
    display: flex;
    justify-content: flex-end;
    padding-top: 16px;
}

.shop-filter-reset {
    color: #777;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    text-transform: uppercase;
}

.shop-filter-tags a {
    background-color: var(--nutral-900);
    padding: 8px 14px;
    border-radius: 100px;
    color: white;
    transition: background ease .1s;
}


.shop-filter-reset:hover {
    color: #f04432;
}

/* AJAX loading feedback */
.gp-custom-archive-container.is-loading {
    opacity: 0.55;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

@media (max-width: 640px) {
    .shop-filter-top-row {
        grid-template-columns: 1fr;
    }

    .shop-filter-tags {
        gap: 16px 22px;
    }
}
