/* =====================================================================
   compat.css — Astra / WooCommerce overrides. LOADS LAST. !important on purpose.
   Known Astra problems fixed here: blue buttons and link hovers, heading
   padding, narrow product pages, default card layout, sidebar on shop.
   ===================================================================== */

/* ---- Astra globals → our tokens ---- */
:root {
	--ast-global-color-0: #f5a524 !important;   /* theme/accent */
	--ast-global-color-1: #dc8c0a !important;   /* accent hover */
	--ast-global-color-2: #12332b !important;   /* headings */
	--ast-global-color-3: #12332b !important;   /* text */
	--ast-global-color-4: #ffffff !important;   /* content bg */
	--ast-global-color-5: #ffffff !important;   /* site bg */
	--ast-global-color-6: #e7dfd0 !important;   /* borders */
	--ast-global-color-7: #f6f1e7 !important;
	--ast-global-color-8: #12332b !important;
}
body, .ast-container { font-family: var(--ukd-font-body) !important; color: var(--ukd-ink) !important; }
h1, h2, h3, h4, h5, h6, .entry-title { font-family: var(--ukd-font-head) !important; color: var(--ukd-ink) !important; padding: 0 !important; }
/* dark sections keep white headings/text */
.ukd-hero h1, .ukd-hero p, .ukd-banner h2, .ukd-banner li, .ukd-spot h3, .ukd-spot p { color: #fff !important; }
.ukd-hero .ukd-eyebrow, .ukd-banner .ukd-eyebrow { color: #f5a524 !important; }
.ukd-hero .ukd-from { color: rgba(255,255,255,.6) !important; }
.ukd-footer h3 { color: #fff !important; }

/* ---- Links: never blue ---- */
a, a:visited { color: var(--ukd-ink) !important; }
a:hover, a:focus { color: var(--ukd-ink-hover) !important; }
.ukd-footer a, .ukd-footer a:visited { color: rgba(255, 255, 255, .85) !important; }
.ukd-announcement a, .ukd-announcement a:visited { color: #f5a524 !important; }
.ukd-footer a:hover { color: #fff !important; }
.ukd-btn, .ukd-btn:visited, .ukd-btn-primary, .ukd-btn-primary:visited { color: var(--ukd-accent-ink) !important; }

/* ---- Buttons: Astra + Woo + blocks all become the amber pill ---- */
.ast-button, .button, button, input[type="submit"], input[type="button"],
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce input.button.alt, .woocommerce #respond input#submit.alt,
.wc-block-components-button, .wp-block-button__link, .wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button, .single_add_to_cart_button, .checkout-button {
	background: var(--ukd-accent) !important; background-color: var(--ukd-accent) !important;
	color: var(--ukd-accent-ink) !important; border: 1px solid var(--ukd-accent) !important;
	border-radius: var(--ukd-pill) !important; font-family: var(--ukd-font-body) !important;
	font-weight: 600 !important; font-size: 15px !important; line-height: 1.2 !important;
	padding: 13px 22px !important; text-transform: none !important; letter-spacing: 0 !important;
	box-shadow: none !important; transition: background .15s !important;
}
.ast-button:hover, .button:hover, button:hover, input[type="submit"]:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.wc-block-components-button:hover, .wp-block-button__link:hover, .single_add_to_cart_button:hover {
	background: var(--ukd-accent-hover) !important; background-color: var(--ukd-accent-hover) !important;
	border-color: var(--ukd-accent-hover) !important; color: var(--ukd-accent-ink) !important;
}
/* Card "Add to basket" buttons: secondary outline style, like Poolmere's "View all" */
ul.products li.product .button, ul.products li.product .added_to_cart {
	background: transparent !important; color: var(--ukd-ink) !important;
	border: 1px solid var(--ukd-ink) !important; padding: 9px 16px !important; font-size: 13.5px !important;
}
ul.products li.product .button:hover { background: rgba(18, 51, 43, .08) !important; }
ul.products li.product .button.loading { opacity: .6 !important; }

/* ---- Headings: Astra adds padding + odd sizes ---- */
.ast-single-post .entry-header, .ast-archive-description { padding: 0 !important; }
.entry-content > h2 { font-size: 26px !important; margin: 1.6em 0 .6em !important; }
.entry-content > h3 { font-size: 20px !important; margin: 1.3em 0 .5em !important; }
.entry-content > p, .entry-content > ul > li, .entry-content > ol > li { font-size: 16px !important; line-height: 1.65 !important; }

/* ---- Layout: Astra narrows pages and product pages ---- */
.ast-container { max-width: 1280px !important; }
.single-product .ast-container, .woocommerce-page .ast-container, .archive.woocommerce .ast-container { max-width: 1280px !important; }
.single-product #primary, .woocommerce-page #primary { width: 100% !important; }
.single-product #secondary, .woocommerce-page #secondary, .archive.woocommerce #secondary { display: none !important; }
.single-product .woocommerce div.product div.images { width: 50% !important; }
.single-product .woocommerce div.product div.summary { width: 46% !important; }
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post,
.ast-separate-container .ast-woocommerce-container { background: transparent !important; border: 0 !important; padding: 2em 0 !important; }
.ast-page-builder-template .site-content > .ast-container { max-width: 100% !important; padding: 0 !important; }
.home .site-content > .ast-container { max-width: 100% !important; padding: 0 !important; }
.home .entry-content { margin: 0 !important; }
.home .ast-article-single { padding: 0 !important; margin: 0 !important; }

/* ---- Product grid ---- */
.woocommerce ul.products, .woocommerce-page ul.products {
	display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 20px !important;
	margin: 0 0 32px !important; padding: 0 !important;
}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	width: auto !important; margin: 0 !important; float: none !important; clear: none !important; text-align: left !important;
}
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap { margin: 0 !important; }
.woocommerce ul.products li.product .ast-woo-product-category { display: none !important; }
.woocommerce ul.products li.product .star-rating { display: none !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h2 { /* card title: body font, 2-line clamp, no fixed height */
	font-family: var(--ukd-font-body) !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1.35 !important;
	margin: 4px 16px 6px !important; padding: 0 !important;
	display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important;
	overflow: hidden !important; text-overflow: ellipsis !important; height: auto !important; min-height: 0 !important;
}
@media (max-width: 1024px) { .woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 782px)  { .woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; } }

/* ---- Shop header / sorting ---- */
.woocommerce .woocommerce-result-count { color: var(--ukd-muted) !important; font-size: 14px !important; }
.woocommerce .woocommerce-ordering select { border: 1px solid var(--ukd-line) !important; border-radius: var(--ukd-pill) !important; padding: 8px 36px 8px 14px !important; font-size: 14px !important; }
.ast-woocommerce-container .page-title, .woocommerce-products-header__title { font-size: 32px !important; margin-bottom: 8px !important; }
.term-description { color: var(--ukd-muted) !important; max-width: 720px; margin-bottom: 24px !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span {
	border-radius: 50% !important; border: 1px solid var(--ukd-line) !important; margin: 0 3px !important; min-width: 40px !important; line-height: 38px !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--ukd-ink) !important; color: #fff !important; }

/* ---- Single product ---- */
.single-product .product_title { font-size: 30px !important; margin-bottom: 10px !important; }
.single-product .summary .price { font-family: var(--ukd-font-head) !important; font-size: 28px !important; font-weight: 700 !important; color: var(--ukd-ink) !important; margin: 10px 0 16px !important; }
.single-product .summary .price del { color: var(--ukd-subtle) !important; font-size: 18px !important; }
.single-product .summary .price ins { text-decoration: none !important; }
.single-product .quantity .qty { border: 1px solid var(--ukd-line) !important; border-radius: var(--ukd-pill) !important; padding: 11px 8px !important; width: 72px !important; }
.single-product form.cart { display: flex !important; gap: 10px !important; align-items: center !important; flex-wrap: wrap !important; }
.single-product .woocommerce-product-gallery__image img { background: #fff; border: 1px solid var(--ukd-line); border-radius: var(--ukd-radius); }
.single-product .woocommerce-tabs ul.tabs li { border: 0 !important; background: transparent !important; }
.single-product .woocommerce-tabs ul.tabs li a { font-family: var(--ukd-font-head) !important; font-weight: 700 !important; color: var(--ukd-ink) !important; }
.single-product .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--ukd-accent) !important; }
.single-product .woocommerce-tabs .panel { border: 0 !important; padding: 0 !important; }
.single-product .woocommerce-tabs .panel table { border-collapse: collapse !important; }
.single-product .woocommerce-tabs .panel th, .single-product .woocommerce-tabs .panel td { border: 1px solid var(--ukd-line) !important; padding: 8px 12px !important; font-size: 14.5px !important; }
.single-product .related.products > h2, .single-product .up-sells > h2 { font-size: 26px !important; margin: 48px 0 20px !important; }

/* ---- Cart / checkout (block + classic) ---- */
.wc-block-components-product-name, .wc-block-components-totals-item__label { color: var(--ukd-ink) !important; }
.woocommerce-checkout .ast-container, .woocommerce-cart .ast-container { max-width: 1100px !important; }
.wc-block-components-notice-banner { border-radius: var(--ukd-radius) !important; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.wc-block-components-text-input input, .wc-block-components-select__select {
	border: 1px solid var(--ukd-line) !important; border-radius: 10px !important; font-size: 15px !important;
}
.woocommerce-message, .woocommerce-info { border-top-color: var(--ukd-accent) !important; background: var(--ukd-cream) !important; border-radius: var(--ukd-radius) !important; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--ukd-ink) !important; }

/* ---- Hide Astra bits we replaced ---- */
.ast-above-header-wrap, .ast-below-header-wrap, .ast-footer-copyright, .site-footer:not(.ukd-footer) { display: none !important; }
#content { margin-top: 0 !important; }
.site-content { background: #fff !important; }
.ast-breadcrumbs-wrapper { font-size: 13px !important; color: var(--ukd-muted) !important; }

/* ---- Hostinger contact form ---- */
.hostinger-contact-form input, .hostinger-contact-form textarea { border: 1px solid var(--ukd-line) !important; border-radius: 10px !important; }

/* ---- Sale badge ---- */
.woocommerce span.onsale, .woocommerce ul.products li.product .onsale {
	position: absolute !important; top: 12px !important; left: 12px !important; right: auto !important; margin: 0 !important;
	background: var(--ukd-accent) !important; color: var(--ukd-ink) !important; border-radius: var(--ukd-pill) !important;
	font-size: 12px !important; font-weight: 700 !important; min-height: 0 !important; min-width: 0 !important; line-height: 1 !important; padding: 6px 10px !important;
}
.woocommerce ul.products li.product { position: relative !important; }
