/**
 * Global 2026 Modernization Layer
 * Scope: entire astra-child frontend.
 * Loaded last to normalize legacy gradients/warm palettes into a clean mono ecommerce style.
 */

:root {
  --sk-modern-bg: #ffffff;
  --sk-modern-surface: #ffffff;
  --sk-modern-surface-soft: #f7f7f8;
  --sk-modern-text: #111111;
  --sk-modern-text-muted: #5f6368;
  --sk-modern-line: #e5e7eb;
  --sk-modern-line-strong: #d1d5db;
  --sk-modern-shadow: 0 10px 28px rgba(17, 24, 39, 0.08);
  --sk-modern-shadow-soft: 0 4px 14px rgba(17, 24, 39, 0.06);
  --sk-modern-radius: 14px;
  --sk-modern-radius-lg: 18px;
  --sk-modern-accent: #2f6b4f;
  --sk-modern-focus: 0 0 0 3px rgba(17, 17, 17, 0.2);
}

body,
body .site,
body .site-content,
body .ast-woocommerce-container {
  background: var(--sk-modern-bg);
  color: var(--sk-modern-text);
}

body p,
body li,
body .entry-content,
body .woocommerce {
  color: var(--sk-modern-text);
}

body a {
  color: var(--sk-modern-accent);
}

body a:hover {
  color: #1f4c38;
}

body a:focus-visible,
body button:focus-visible,
body input:focus-visible,
body select:focus-visible,
body textarea:focus-visible {
  outline: none;
  box-shadow: var(--sk-modern-focus);
}

/* Shared wrappers */
body.sk-about-page .sk-about-company,
body.sk-contact-page .sk-contact-wrap,
body.sk-blog-shell .sk-blog-layout,
body.sk-blog-shell .sk-blog-shell-main,
body.sk-downloads-page .sk-downloads-content,
body.sk-downloads-page .sk-download-grid-head,
body.sk-downloads-page .sk-download-pagination,
body.sk-brand-index-page .sk-brand-index,
body.sk-faq-page .sk-faq-section,
body.sk-cart-shell .sk-cart-after-totals,
body.sk-checkout-shell .sk-checkout-order-column {
  background: transparent;
}

/* Unified breadcrumb chips */
body .ast-breadcrumbs-wrapper .trail-items,
body .sk-download-breadcrumb__list,
body .sk-contact-breadcrumb,
body .sk-about-breadcrumb {
  border: 1px solid var(--sk-modern-line) !important;
  background: #ffffff !important;
  border-radius: 999px !important;
}

/* Global container rhythm */
.site .site-content > .ast-container,
.site .ast-woocommerce-container {
  max-width: min(1280px, calc(100% - 28px));
}

/* Header modernized globally */
.site #masthead,
.site #masthead .ast-main-header-wrap,
.site #masthead .ast-header-wrap,
.site #masthead .ast-primary-header-bar,
.site #masthead .main-header-bar,
.site #masthead .site-primary-header-wrap,
.site #masthead .site-above-header-wrap,
.site #masthead .site-below-header-wrap {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
  box-shadow: none !important;
}

.site #masthead {
  border-bottom: 1px solid var(--sk-modern-line) !important;
  backdrop-filter: none !important;
}

.site #masthead .main-navigation .menu-link,
.site #masthead .main-header-menu .menu-link {
  color: #111111 !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  background: transparent !important;
}

.site #masthead .main-navigation .menu-link:hover,
.site #masthead .main-header-menu .menu-link:hover {
  border-color: var(--sk-modern-line) !important;
  background: #fafafa !important;
  color: #111111 !important;
}

.site #masthead .main-navigation .current-menu-item > .menu-link,
.site #masthead .main-navigation .current-menu-ancestor > .menu-link {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
  box-shadow: none !important;
}

.site #masthead .header-social-item,
.site #masthead .ast-search-menu-icon .ast-search-icon a,
.site #masthead .ast-site-header-cart .cart-container {
  background: #ffffff !important;
  border: 1px solid var(--sk-modern-line) !important;
  color: #111111 !important;
  box-shadow: none !important;
}

body.sk-new-header .sk-topbar,
body.sk-new-header .sk-header-main-wrap {
  background: #ffffff;
  border-bottom: 1px solid var(--sk-modern-line);
}

body.sk-new-header .sk-topbar__item,
body.sk-new-header .sk-topbar__link,
body.sk-new-header .sk-header-action,
body.sk-new-header .sk-header-search__input {
  color: #111111;
}

/* Footer */
.site footer,
.site .site-footer,
.site .site-primary-footer-wrap,
.site .site-below-footer-wrap,
.site .site-above-footer-wrap {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
}

.site .site-footer a {
  color: #111111;
}

.site .site-footer a:hover {
  color: #000000;
}

/* Global cards across sections */
.sk-home .sk-home-hero,
.sk-home .sk-home-intro,
.sk-home .sk-home-products,
.sk-home .sk-home-free,
.sk-home .sk-home-blog,
.sk-home .sk-home-cta-bottom,
.sk-home .sk-home-context-lane,
.sk-home .sk-home-promo-sales,
.sk-home .sk-home-promo-sales-stack,
.sk-home .sk-home-category-cards,
.sk-home .sk-category-tiles,
.sk-home .sk-home-blog-categories,
body.sk-page-shell .ast-article-single,
body.sk-page-shell .entry-content.clear,
body.sk-page-shell .sk-page-hero,
body.sk-page-shell .sk-page-mini-card,
body.sk-blog-shell .sk-blog-hero,
body.sk-blog-shell .sk-blog-taxonomy-universe,
body.sk-blog-shell .sk-blog-taxonomy-card,
body.sk-blog-shell .sk-blog-card,
body.sk-blog-shell .sk-blog-side-panel,
body.sk-blog-shell .sk-blog-post,
body.sk-blog-shell .sk-blog-post-hero,
body.sk-blog-shell .sk-blog-post-content,
body.sk-blog-shell .sk-blog-bottom-copy,
body.sk-downloads-page .sk-download-hero,
body.sk-downloads-page .sk-download-filter,
body.sk-downloads-page .sk-download-card,
body.sk-downloads-page .sk-download-side-panel,
body.sk-downloads-page .sk-download-side-ad,
body.sk-downloads-page .sk-download-seo-copy,
body.sk-about-page .sk-about-hero,
body.sk-about-page .sk-about-nav,
body.sk-about-page .sk-about-section,
body.sk-about-page .sk-about-meta,
body.sk-about-page .sk-about-staff-card,
body.sk-contact-page .sk-contact-hero,
body.sk-contact-page .sk-contact-card,
body.sk-contact-page .sk-contact-section,
body.sk-contact-page .sk-contact-seo-footer,
body.sk-404-page .sk-404-sheet,
body.sk-404-page .sk-404-video-card,
body.sk-404-page .sk-404-links,
.sk-faq-page .sk-faq-help-links,
.sk-faq-page .sk-faq-item,
.sk-faq-page .sk-faq-cta,
.sk-brand-index__nav,
.sk-brand-index__section,
.sk-account-shell__hero,
.sk-account-layout__nav .woocommerce-MyAccount-navigation,
.sk-account-layout__content .woocommerce-MyAccount-content,
.sk-cart-shell .sk-cart-hero,
.sk-checkout-shell .sk-checkout-hero,
.sk-checkout-shell .sk-checkout-step,
.sk-checkout-shell .sk-payment-area {
  background: var(--sk-modern-surface) !important;
  border: 1px solid var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

/* Global section title hierarchy */
body h1,
body h2,
body h3,
body h4,
body .entry-title,
body .page-title,
body .product_title {
  color: #111111 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body .sk-about-hero p,
body .sk-contact-hero p,
body .sk-blog-hero__lead,
body .sk-download-hero p,
body .sk-page-prose p,
body .sk-product__summary p,
body .sk-cart-hero__lead,
body .sk-checkout-hero__lead {
  color: var(--sk-modern-text-muted) !important;
}

/* Buttons: primary black, secondary outline */
.site .button,
.site button,
.site input[type="submit"],
.site .woocommerce a.button,
.site .woocommerce button.button,
.site .woocommerce input.button,
.site .wp-block-button__link,
.site .sk-404-btn,
.site .sk-blog-pill,
.site .sk-download-pill,
.site .sk-contact-link-list--grid a,
.site .sk-about-nav a,
.site .sk-page-mini-card__cta {
  border-radius: 10px !important;
  font-weight: 600 !important;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease !important;
}

.site .button,
.site .woocommerce a.button,
.site .woocommerce button.button,
.site .woocommerce input.button,
.site .wp-block-button__link,
.site .sk-404-btn--ghost,
.site .sk-blog-pill,
.site .sk-contact-link-list--grid a,
.site .sk-about-nav a,
.site .sk-page-mini-card__cta,
.site .sk-download-card__actions .button,
.site .sk-download-side-panel__all,
.site .sk-home-hero__btn--outline,
.site .sk-home-hero__btn--secondary {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #111111 !important;
  box-shadow: none !important;
}

.site .button:hover,
.site .woocommerce a.button:hover,
.site .woocommerce button.button:hover,
.site .woocommerce input.button:hover,
.site .wp-block-button__link:hover,
.site .sk-404-btn--ghost:hover,
.site .sk-blog-pill:hover,
.site .sk-contact-link-list--grid a:hover,
.site .sk-about-nav a:hover,
.site .sk-page-mini-card__cta:hover,
.site .sk-download-card__actions .button:hover,
.site .sk-download-side-panel__all:hover,
.site .sk-home-hero__btn--outline:hover,
.site .sk-home-hero__btn--secondary:hover {
  background: #f7f7f8 !important;
  color: #111111 !important;
  border-color: #111111 !important;
}

.site .woocommerce a.button.alt,
.site .woocommerce button.button.alt,
.site .woocommerce input.button.alt,
.site .woocommerce div.product .single_add_to_cart_button,
.site .woocommerce-checkout #place_order,
.site .woocommerce-mini-cart .woocommerce-mini-cart__buttons .button.checkout,
.site .widget_shopping_cart .woocommerce-mini-cart__buttons .button.checkout,
.site .sk-404-btn--solid,
.site .sk-blog-pill--solid,
.site .sk-home-hero__btn--primary,
.site .sk-home-free__cta,
.site .sk-home-blog__cta,
.site .sk-home-cta-bottom .button,
.site .sk-about-section .button,
.site .sk-about-cta .button,
.site .sk-contact-section--cta .button,
.site .sk-faq-cta__link,
.site .sk-dock__btn,
.site .sk-product__summary .single_add_to_cart_button,
.site .sk-product__summary .button,
.site .sk-cart-hero__cta,
.site .sk-checkout-hero__cta {
  background: #111111 !important;
  border: 1px solid #111111 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.site .woocommerce a.button.alt:hover,
.site .woocommerce button.button.alt:hover,
.site .woocommerce input.button.alt:hover,
.site .woocommerce div.product .single_add_to_cart_button:hover,
.site .woocommerce-checkout #place_order:hover,
.site .woocommerce-mini-cart .woocommerce-mini-cart__buttons .button.checkout:hover,
.site .widget_shopping_cart .woocommerce-mini-cart__buttons .button.checkout:hover,
.site .sk-404-btn--solid:hover,
.site .sk-blog-pill--solid:hover,
.site .sk-home-hero__btn--primary:hover,
.site .sk-home-free__cta:hover,
.site .sk-home-blog__cta:hover,
.site .sk-home-cta-bottom .button:hover,
.site .sk-about-section .button:hover,
.site .sk-about-cta .button:hover,
.site .sk-contact-section--cta .button:hover,
.site .sk-faq-cta__link:hover,
.site .sk-dock__btn:hover,
.site .sk-product__summary .single_add_to_cart_button:hover,
.site .sk-product__summary .button:hover,
.site .sk-cart-hero__cta:hover,
.site .sk-checkout-hero__cta:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
}

/* Inputs and controls */
.site input[type="text"],
.site input[type="search"],
.site input[type="email"],
.site input[type="tel"],
.site input[type="number"],
.site textarea,
.site select,
.site .sk-download-side-panel__search,
.site .sk-contact-form-wrap .wpforms-form input,
.site .sk-contact-form-wrap .wpforms-form textarea,
.site .sk-contact-form-wrap .wpforms-form select,
.site .woocommerce-checkout input,
.site .woocommerce-checkout select,
.site .woocommerce-checkout textarea {
  border: 1px solid var(--sk-modern-line-strong) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: #111111 !important;
  box-shadow: none !important;
}

.site input:focus,
.site textarea:focus,
.site select:focus,
.site .woocommerce-checkout input:focus,
.site .woocommerce-checkout select:focus,
.site .woocommerce-checkout textarea:focus {
  border-color: #111111 !important;
  box-shadow: var(--sk-modern-focus) !important;
}

/* Home */
body.sk-home,
body.sk-home .site-content {
  background: #ffffff !important;
}

.sk-home .sk-hero-stage.wp-block-uagb-container {
  border-radius: 20px !important;
  overflow: hidden;
}

.sk-home .sk-hero-stage.wp-block-uagb-container::before {
  background: linear-gradient(120deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.42)) !important;
}

.sk-home .sk-hero-stage.wp-block-uagb-container::after {
  background: radial-gradient(circle, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0) 70%) !important;
}

.sk-home .sk-hero-stage .uagb-ifb-title,
.sk-home .sk-hero-stage .uagb-ifb-title-prefix,
.sk-home .sk-hero-stage .uagb-ifb-desc {
  color: #ffffff !important;
}

.sk-home .sk-hero-trust > .wp-block-uagb-container,
.sk-home .sk-hero-promos .uagb-block-7ea54f02 > .wp-block-uagb-container,
.sk-home .sk-home-blog__item,
.sk-home .sk-home-category-card,
.sk-home .sk-home-promo-block,
.sk-home .sk-home-blog-category-card {
  background: #ffffff !important;
  border: 1px solid var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

.sk-home .sk-hero-trust .uagb-ifb-icon-wrap {
  background: #f4f5f6 !important;
}

.sk-home .sk-home-blog__item,
.sk-home .sk-home-category-card,
.sk-home .sk-home-promo-block {
  border-radius: var(--sk-modern-radius) !important;
}

/* Page shell */
body.sk-page-shell .ast-single-post-featured-section.post-thumb,
body.sk-page-shell .ast-article-single,
body.sk-page-shell .entry-content.clear,
body.sk-page-shell .sk-page-hero,
body.sk-page-shell .sk-page-mini-card {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

body.sk-page-shell .ast-breadcrumbs-wrapper .trail-items {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
}

body.sk-page-shell .sk-page-prose a {
  color: var(--sk-modern-accent) !important;
}

/* Blog */
body.sk-blog-shell .sk-blog-hero,
body.sk-blog-shell .sk-blog-taxonomy-universe,
body.sk-blog-shell .sk-blog-card,
body.sk-blog-shell .sk-blog-side-panel,
body.sk-blog-shell .sk-blog-post,
body.sk-blog-shell .sk-blog-post-content,
body.sk-blog-shell .sk-blog-post-hero,
body.sk-blog-shell .sk-blog-bottom-copy {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

body.sk-blog-shell .sk-blog-hero::after,
body.sk-blog-shell .sk-blog-taxonomy-universe::after {
  opacity: 0.18;
}

body.sk-blog-shell .sk-blog-pill,
body.sk-blog-shell .sk-blog-quick-nav__link,
body.sk-blog-shell .sk-blog-tax-link,
body.sk-blog-shell .sk-blog-tag-link,
body.sk-blog-shell .sk-blog-tax-pill {
  color: #111111 !important;
  border-color: var(--sk-modern-line-strong) !important;
  background: #ffffff !important;
}

body.sk-blog-shell .sk-blog-pill--solid {
  color: #ffffff !important;
  border-color: #111111 !important;
  background: #111111 !important;
}

/* Downloads */
body.sk-downloads-page .sk-downloads-wrap {
  max-width: 1240px;
}

body.sk-downloads-page .sk-downloads-layout {
  gap: clamp(10px, 1.8vw, 18px) !important;
}

body.sk-downloads-page .sk-download-side-panel,
body.sk-downloads-page .sk-download-side-ad,
body.sk-downloads-page .sk-download-hero,
body.sk-downloads-page .sk-download-filter,
body.sk-downloads-page .sk-download-card,
body.sk-downloads-page .sk-download-seo-copy {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

body.sk-downloads-page .sk-download-grid {
  gap: 5px !important;
}

body.sk-downloads-page .sk-download-card {
  border-radius: 12px !important;
}

body.sk-downloads-page .sk-download-card__thumb-wrap {
  min-height: 170px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.sk-downloads-page .sk-download-card__thumb,
body.sk-downloads-page .sk-download-card__thumb-link img,
body.sk-downloads-page .sk-download-card__thumb-image,
body.sk-downloads-page .sk-download-card__thumb-wrap img {
  width: 100%;
  max-height: 170px;
  object-fit: contain !important;
}

body.sk-downloads-page .sk-download-card__heading {
  display: flex;
  flex-direction: column;
  min-height: 58px;
}

body.sk-downloads-page .sk-download-card__actions {
  margin-top: auto;
}

body.sk-downloads-page .sk-download-side-panel__header,
body.sk-downloads-page .sk-download-side-ad {
  background: #ffffff !important;
}

body.sk-downloads-page .sk-download-side-nav__link {
  color: #111111 !important;
}

body.sk-downloads-page .sk-download-side-nav__item-wrap.is-current > .sk-download-side-nav__item .sk-download-side-nav__link {
  background: #f3f4f6 !important;
  border-color: var(--sk-modern-line-strong) !important;
}

body.sk-downloads-page .sk-download-side-nav__toggle {
  border-color: var(--sk-modern-line) !important;
  color: #111111 !important;
}

body.sk-downloads-page .sk-download-pill {
  border: 1px solid var(--sk-modern-line-strong) !important;
  background: #f7f7f8 !important;
  color: #111111 !important;
}

body.sk-downloads-page .sk-download-seo-copy--full-bleed {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* About and Contact */
body.sk-about-page .sk-about-hero,
body.sk-about-page .sk-about-nav,
body.sk-about-page .sk-about-section,
body.sk-about-page .sk-about-history-hero,
body.sk-about-page .sk-about-subcard,
body.sk-about-page .sk-about-staff-card,
body.sk-contact-page .sk-contact-hero,
body.sk-contact-page .sk-contact-card,
body.sk-contact-page .sk-contact-section,
body.sk-contact-page .sk-contact-form-wrap,
body.sk-contact-page .sk-contact-seo-footer {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

body.sk-about-page .sk-about-staff-grid,
body.sk-contact-page .sk-contact-grid {
  gap: 12px !important;
}

body.sk-about-page .sk-about-staff-card,
body.sk-contact-page .sk-contact-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

body.sk-about-page .sk-about-staff-mail,
body.sk-contact-page .sk-contact-email {
  margin-top: auto;
}

body.sk-about-page .sk-about-staff-chip,
body.sk-contact-page .sk-contact-chip {
  background: #f7f7f8 !important;
  border: 1px solid var(--sk-modern-line) !important;
  color: #111111 !important;
}

/* FAQ and brand index */
.sk-faq-page,
.sk-brand-index {
  --sk-primary: #111111;
  --sk-primary-hover: #000000;
  --sk-primary-soft: #f2f4f6;
  --sk-ink: #111111;
  --sk-muted: #5f6368;
  --sk-line: #e5e7eb;
  --sk-card: #ffffff;
  --sk-card-soft: #f7f7f8;
}

.sk-faq-page .sk-faq-item,
.sk-faq-page .sk-faq-help-links,
.sk-faq-page .sk-faq-cta,
.sk-brand-index__nav,
.sk-brand-index__section {
  border-color: var(--sk-modern-line) !important;
  background: #ffffff !important;
}

.sk-brand-index__nav-letter {
  border-color: var(--sk-modern-line) !important;
  background: #ffffff !important;
  color: #111111 !important;
}

.sk-brand-index__nav-letter:hover {
  border-color: #111111 !important;
  color: #111111 !important;
}

/* 404 */
body.sk-404-page .sk-404-sheet,
body.sk-404-page .sk-404-video-card,
body.sk-404-page .sk-404-links,
body.sk-404-page .sk-404-link-card {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

body.sk-404-page .sk-404-sheet::before {
  opacity: 0.24;
}

body.sk-404-page .sk-404-search input {
  border-color: var(--sk-modern-line-strong) !important;
}

body.sk-404-page .sk-404-search button {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #ffffff !important;
}

/* Woo PLP/PDP/cart/checkout/account */
body.woocommerce-page .site-content,
body.woocommerce .site-content,
body.sk-product-page .site-content,
body.sk-cart-shell .site-content,
body.sk-checkout-shell .site-content,
body.sk-account-page .site-content {
  background: #ffffff !important;
}

.site .woocommerce ul.products li.product,
.site .woocommerce ul.products li.product .woocommerce-loop-product__link,
.site .woocommerce ul.products li.product .astra-shop-summary-wrap,
.site .woocommerce div.product .summary,
.site .woocommerce div.product .images,
.site .woocommerce div.product .woocommerce-tabs,
.site .woocommerce .cart_totals,
.site .woocommerce table.shop_table,
.site .woocommerce-checkout .woocommerce-billing-fields,
.site .woocommerce-checkout .woocommerce-shipping-fields,
.site .woocommerce-checkout #order_review,
.site .woocommerce-account .woocommerce-MyAccount-content,
.site .woocommerce-account .woocommerce-MyAccount-navigation,
body.sk-product-page .sk-product__summary,
body.sk-product-page .sk-product__details,
body.sk-product-page .sk-product__tabs,
body.sk-product-page .sk-product__cross-inner,
body.sk-product-page .sk-product__upsells-inner,
body.sk-cart-shell .sk-cart-hero,
body.sk-checkout-shell .sk-checkout-hero,
body.sk-checkout-shell .sk-checkout-step,
body.sk-account-page .sk-account-shell__hero,
body.sk-account-page .sk-account-layout__nav .woocommerce-MyAccount-navigation,
body.sk-account-page .sk-account-layout__content .woocommerce-MyAccount-content,
body.sk-account-page .woocommerce form.login,
body.sk-account-page .woocommerce form.register,
body.sk-account-page .woocommerce form.lost_reset_password {
  background: #ffffff !important;
  border: 1px solid var(--sk-modern-line) !important;
  box-shadow: var(--sk-modern-shadow-soft) !important;
}

.site .woocommerce ul.products li.product .button,
.site .woocommerce ul.products li.product .added_to_cart {
  width: 100%;
}

.site .woocommerce ul.products li.product .woocommerce-loop-product__link img {
  padding: 14px;
}

/* Varekategori/shop: større billeder igen uden beskæring (bevar ens grid) */
body.post-type-archive-product .site .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.tax-product_cat .site .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.tax-product_tag .site .woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
}

body.post-type-archive-product .site .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.tax-product_cat .site .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.tax-product_tag .site .woocommerce ul.products li.product .woocommerce-loop-product__link img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: clamp(2px, 0.35vw, 6px) !important;
}

.site .woocommerce .widget,
.site .woocommerce-page .widget,
.site .woocommerce .widget_layered_nav,
.site .woocommerce .widget_price_filter,
.site .woocommerce .widget_product_categories,
.site .woocommerce .widget_shopping_cart {
  background: #ffffff !important;
  border: 1px solid var(--sk-modern-line) !important;
  border-radius: var(--sk-modern-radius) !important;
  box-shadow: none !important;
  padding: 14px !important;
}

.site .woocommerce .widget .widget-title,
.site .woocommerce-page .widget .widget-title {
  color: #111111 !important;
  font-size: 1.05rem !important;
  margin-bottom: 10px !important;
  text-transform: none !important;
}

.site .woocommerce .woocommerce-ordering select,
.site .woocommerce .woocommerce-result-count {
  color: #111111 !important;
}

body.sk-product-page {
  --sk-primary: #111111;
  --sk-primary-hover: #000000;
  --sk-primary-soft: #f3f4f6;
  --sk-ink: #111111;
  --sk-muted: #5f6368;
  --sk-muted-light: #7a7f86;
  --sk-bg: #ffffff;
  --sk-card: #ffffff;
  --sk-card-soft: #f7f7f8;
  --sk-line: #e5e7eb;
  --sk-line-strong: #d1d5db;
  --sk-shadow: 0 10px 28px rgba(17, 24, 39, 0.08);
  --sk-shadow-sm: 0 4px 14px rgba(17, 24, 39, 0.06);
  --sk-shadow-card: 0 8px 24px rgba(17, 24, 39, 0.06);
  --sk-shadow-dock: 0 -6px 18px rgba(17, 24, 39, 0.12);
}

body.sk-product-page .sk-product__summary .price,
body.sk-product-page .sk-product__summary .amount,
body.sk-product-page .sk-dock__price .sk-dock__value,
.site .woocommerce div.product .summary .price {
  color: #111111 !important;
}

body.sk-product-page .sk-product__gallery .woocommerce-product-gallery,
body.sk-product-page .sk-product__gallery .woocommerce-product-gallery__image {
  background: #ffffff !important;
  border-color: var(--sk-modern-line) !important;
}

body.sk-product-page .sk-meta-chips__tab,
body.sk-product-page .sk-chip,
body.sk-product-page .sk-summary-kicker,
body.sk-product-page .sk-summary-kicker--muted,
body.sk-product-page .sk-summary-kicker--ok,
body.sk-product-page .sk-summary-kicker--warm {
  background: #f7f7f8 !important;
  color: #111111 !important;
  border-color: var(--sk-modern-line) !important;
}

body.sk-account-page .sk-account-layout__nav .woocommerce-MyAccount-navigation-link a {
  background: #ffffff !important;
  border: 1px solid var(--sk-modern-line) !important;
  color: #111111 !important;
}

body.sk-account-page .sk-account-layout__nav .woocommerce-MyAccount-navigation-link.is-active a {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #ffffff !important;
}

body.sk-cart-shell .sk-cart-hero__metric,
body.sk-checkout-shell .sk-checkout-hero__metric,
body.sk-checkout-shell .sk-checkout-order-preview,
body.sk-checkout-shell .sk-checkout-conversion-strip,
body.sk-checkout-shell .sk-checkout-step__toggle {
  background: #f7f7f8 !important;
  border: 1px solid var(--sk-modern-line) !important;
  color: #111111 !important;
}

body.sk-checkout-shell .sk-checkout-step__toggle {
  box-shadow: none !important;
}

/* Responsive refinements */
@media (max-width: 1100px) {
  .site .site-content > .ast-container,
  .site .ast-woocommerce-container {
    max-width: calc(100% - 20px);
  }

  body.sk-downloads-page .sk-downloads-layout {
    grid-template-columns: 1fr !important;
  }

  body.sk-downloads-page .sk-downloads-sidebar {
    position: static;
  }

  body.sk-about-page .sk-about-history-hero,
  body.sk-contact-page .sk-contact-hero,
  body.sk-404-page .sk-404-wrap {
    grid-template-columns: 1fr !important;
  }

  body.sk-contact-page .sk-contact-grid,
  body.sk-about-page .sk-about-staff-grid,
  body.sk-blog-shell .sk-blog-taxonomy-universe__grid,
  body.sk-404-page .sk-404-link-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .site .site-content > .ast-container,
  .site .ast-woocommerce-container {
    max-width: calc(100% - 14px);
  }

  .sk-home .sk-hero-stage.wp-block-uagb-container {
    border-radius: 14px !important;
  }

  body.sk-contact-page .sk-contact-grid,
  body.sk-about-page .sk-about-staff-grid,
  body.sk-blog-shell .sk-blog-taxonomy-universe__grid,
  body.sk-blog-shell .sk-blog-feed__grid,
  body.sk-404-page .sk-404-link-grid,
  body.sk-downloads-page .sk-download-grid,
  body.sk-downloads-page .sk-download-grid-head,
  body.sk-contact-page .sk-contact-link-list--grid {
    grid-template-columns: 1fr !important;
  }

  body.sk-downloads-page .sk-download-card__thumb-wrap {
    min-height: 150px;
  }

  .site .woocommerce ul.products {
    gap: 12px;
  }
}

/* ========================================================================== */
/* Hard Overrides requested: black secondary text, square UI, white trust, */
/* portrait product media on home + related/upsell/cross-sell               */
/* ========================================================================== */

/* Secondary buttons/chips must always be readable on white background */
.site .sk-404-btn--ghost,
.site .sk-blog-pill,
.site .sk-download-pill,
.site .sk-contact-link-list--grid a,
.site .sk-about-nav a,
.site .sk-page-mini-card__cta,
.site .sk-download-card__actions .button,
.site .sk-download-side-panel__all,
.site .sk-home-hero__btn--outline,
.site .sk-home-hero__btn--secondary,
.site .sk-home--fallback .sk-home-hero__btn--secondary.button,
.site .sk-home--fallback .sk-home-hero__btn--outline.button {
  color: #111111 !important;
  border-color: #111111 !important;
  background: #ffffff !important;
}

.site .sk-404-btn--ghost:hover,
.site .sk-blog-pill:hover,
.site .sk-download-pill:hover,
.site .sk-contact-link-list--grid a:hover,
.site .sk-about-nav a:hover,
.site .sk-page-mini-card__cta:hover,
.site .sk-download-card__actions .button:hover,
.site .sk-download-side-panel__all:hover,
.site .sk-home-hero__btn--outline:hover,
.site .sk-home-hero__btn--secondary:hover,
.site .sk-home--fallback .sk-home-hero__btn--secondary.button:hover,
.site .sk-home--fallback .sk-home-hero__btn--outline.button:hover {
  color: #111111 !important;
  border-color: #111111 !important;
  background: #f7f7f8 !important;
}

/* Square system: remove corner radius in design */
:root {
  --radius-sm: 0px;
  --radius-md: 0px;
  --radius-lg: 0px;
  --radius-pill: 0px;
  --sk-r-sm: 0px;
  --sk-r-md: 0px;
  --sk-r-lg: 0px;
  --sk-r-xl: 0px;
  --sk-modern-radius: 0px;
  --sk-modern-radius-lg: 0px;
}

.site .button,
.site button,
.site input,
.site select,
.site textarea,
.site [class*="chip"],
.site [class*="pill"],
.site [class*="badge"],
.site [class*="card"],
.site [class*="panel"],
.site [class*="box"],
.site .woocommerce ul.products li.product,
.site .woocommerce .widget,
.site .woocommerce table.shop_table,
.site .woocommerce .cart_totals,
.site .woocommerce div.product .summary,
.site .woocommerce div.product .images,
.site .woocommerce div.product .woocommerce-tabs,
.site .woocommerce-checkout .woocommerce-billing-fields,
.site .woocommerce-checkout .woocommerce-shipping-fields,
.site .woocommerce-checkout #order_review,
.site .ast-article-single,
.site .entry-content.clear,
.site .ast-breadcrumbs-wrapper .trail-items,
.site .sk-download-breadcrumb__list,
.site .sk-contact-breadcrumb,
.site .sk-about-breadcrumb,
.site .sk-home .sk-hero-stage.wp-block-uagb-container,
.site .sk-home .sk-home-blog__item,
.site .sk-home .sk-home-category-card,
.site .sk-home .sk-home-promo-block,
.site .sk-home .sk-home-blog-category-card,
.site .sk-home .sk-hero-trust > .wp-block-uagb-container,
.site .skoleabc-trust-grid,
.site .skoleabc-trust-grid__item,
body.sk-product-page .sk-product-trust-proof,
body.sk-product-page .sk-product-trust-proof__trustpilot,
body.sk-product-page .sk-product-trust-proof__stat,
body.sk-product-page .sk-summary-proof {
  border-radius: 0 !important;
}

/* Trust boxes: enforce white background */
.sk-home .sk-hero-trust > .wp-block-uagb-container,
.site .skoleabc-trust-grid,
.site .skoleabc-trust-grid__item,
body.sk-product-page .sk-product-trust-proof,
body.sk-product-page .sk-product-trust-proof__trustpilot,
body.sk-product-page .sk-product-trust-proof__stat,
body.sk-product-page .sk-summary-proof,
body.sk-cart-shell .sk-cart-hero__trust li,
body.sk-checkout-shell .sk-checkout-hero__trust li {
  background: #ffffff !important;
  background-image: none !important;
}

/* Portrait media in product loops (home/category/related/upsell) */
.site .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.single-product .woocommerce .related.products ul.products li.product .astra-shop-thumbnail-wrap,
body.single-product .woocommerce .upsells.products ul.products li.product .astra-shop-thumbnail-wrap {
  display: block;
  overflow: hidden;
}

.site .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.home .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.single-product .woocommerce .related.products ul.products li.product .woocommerce-loop-product__link,
body.single-product .woocommerce .upsells.products ul.products li.product .woocommerce-loop-product__link {
  aspect-ratio: 3 / 4 !important;
  min-height: 280px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.site .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.home .woocommerce ul.products li.product .woocommerce-loop-product__link img,
body.single-product .woocommerce .related.products ul.products li.product .woocommerce-loop-product__link img,
body.single-product .woocommerce .upsells.products ul.products li.product .woocommerce-loop-product__link img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  padding: 10px !important;
  box-sizing: border-box !important;
}

/* Custom cross/upsell cards on PDP */
body.sk-product-page .sk-product-card__image {
  aspect-ratio: 3 / 4 !important;
  min-height: 300px;
  background: #ffffff !important;
}

body.sk-product-page .sk-product-card__image img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  padding: 10px !important;
  box-sizing: border-box !important;
}

@media (max-width: 920px) {
  .site .woocommerce ul.products li.product .woocommerce-loop-product__link,
  body.single-product .woocommerce .related.products ul.products li.product .woocommerce-loop-product__link,
  body.single-product .woocommerce .upsells.products ul.products li.product .woocommerce-loop-product__link,
  body.sk-product-page .sk-product-card__image {
    min-height: 220px;
  }
}

/* Category/shop card alignment: ensure title/price/button line up cleanly */
body.post-type-archive-product .woocommerce ul.products li.product,
body.tax-product_cat .woocommerce ul.products li.product,
body.tax-product_tag .woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  height: 100%;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-summary-wrap {
  flex: 1;
  display: grid;
  grid-template-rows: minmax(22px, auto) minmax(calc(1.32em * 2), auto) minmax(28px, auto) auto;
  align-content: start;
  gap: 0.4rem;
}

body.post-type-archive-product .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_cat .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_tag .woocommerce ul.products li.product .ast-woo-product-category {
  min-height: 22px;
  line-height: 1.2;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__title {
  margin: 0;
  min-height: calc(1.32em * 2);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body.post-type-archive-product .woocommerce ul.products li.product .price,
body.tax-product_cat .woocommerce ul.products li.product .price,
body.tax-product_tag .woocommerce ul.products li.product .price {
  margin: 0;
  min-height: 28px;
}

body.post-type-archive-product .woocommerce ul.products li.product .button,
body.post-type-archive-product .woocommerce ul.products li.product .added_to_cart,
body.tax-product_cat .woocommerce ul.products li.product .button,
body.tax-product_cat .woocommerce ul.products li.product .added_to_cart,
body.tax-product_tag .woocommerce ul.products li.product .button,
body.tax-product_tag .woocommerce ul.products li.product .added_to_cart {
  margin-top: auto !important;
}

/* Front page: reduce product image box height (approx. 50px) while keeping full image visible */
body.home .woocommerce ul.products li.product .woocommerce-loop-product__link {
  aspect-ratio: 4 / 5 !important;
  min-height: 230px !important;
}

/* ========================================================================== */
/* Button contrast safety net: secondary = black on white, primary = white on black */
/* ========================================================================== */

/* Secondary buttons (default) */
.site .button,
.site button.button,
.site input.button,
.site .woocommerce a.button,
.site .woocommerce button.button,
.site .woocommerce input.button,
.site .woocommerce ul.products li.product .button,
.site .woocommerce ul.products li.product .added_to_cart,
.site a.added_to_cart,
.site .added_to_cart.wc-forward,
.site .wp-block-button__link,
.site .wc-block-components-product-button__button,
.site .wc-block-grid__product-add-to-cart .wp-block-button__link {
  background: #ffffff !important;
  border: 1.5px solid #111111 !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  box-shadow: none !important;
}

.site .button:hover,
.site button.button:hover,
.site input.button:hover,
.site .woocommerce a.button:hover,
.site .woocommerce button.button:hover,
.site .woocommerce input.button:hover,
.site .woocommerce ul.products li.product .button:hover,
.site .woocommerce ul.products li.product .added_to_cart:hover,
.site a.added_to_cart:hover,
.site .added_to_cart.wc-forward:hover,
.site .wp-block-button__link:hover,
.site .wc-block-components-product-button__button:hover,
.site .wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
  background: #f7f7f8 !important;
  border-color: #000000 !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
}

/* Primary buttons */
.site .woocommerce a.button.alt,
.site .woocommerce button.button.alt,
.site .woocommerce input.button.alt,
.site .woocommerce div.product .single_add_to_cart_button,
.site .woocommerce .button.checkout,
.site .woocommerce .checkout-button,
.site .woocommerce-checkout #place_order,
.site .widget_shopping_cart .woocommerce-mini-cart__buttons .button.checkout,
.site .woocommerce-mini-cart .woocommerce-mini-cart__buttons .button.checkout,
.site .wc-block-cart__submit-button,
.site .wc-block-components-checkout-place-order-button,
.site .sk-product__summary .single_add_to_cart_button,
.site .sk-dock__btn--buy,
.site .sk-checkout-hero__cta,
.site .sk-cart-hero__cta {
  background: #111111 !important;
  border: 1.5px solid #111111 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Loop add-to-cart buttons: no visible border */
.site .woocommerce ul.products li.product .button,
.site .woocommerce ul.products li.product .added_to_cart,
.site a.added_to_cart,
.site .added_to_cart.wc-forward,
.site .wc-block-components-product-button__button,
.site .wc-block-grid__product-add-to-cart .wp-block-button__link {
  border: 0 !important;
}

.site .woocommerce ul.products li.product .button:hover,
.site .woocommerce ul.products li.product .added_to_cart:hover,
.site a.added_to_cart:hover,
.site .added_to_cart.wc-forward:hover,
.site .wc-block-components-product-button__button:hover,
.site .wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
  border: 0 !important;
}

/* Product cards: remove border around item/price area */
.site .woocommerce ul.products li.product,
.site .woocommerce ul.products li.product .woocommerce-loop-product__link,
.site .woocommerce ul.products li.product .astra-shop-summary-wrap {
  border: 0 !important;
}

/* Front/category hover add-to-cart overlay */
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.sk-loop-hover-atc .woocommerce ul.products li.product .wc-block-components-product-image,
body.sk-loop-hover-atc .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.sk-loop-hover-atc .wc-block-product .wc-block-components-product-image {
  position: relative;
}

body.sk-loop-hover-atc .sk-loop-hover-atc {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  z-index: 8;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.18s ease, transform 0.18s ease;
  pointer-events: none;
}

body.sk-loop-hover-atc .sk-loop-hover-atc > * {
  pointer-events: auto;
}

body.sk-loop-hover-atc .sk-loop-hover-atc .button,
body.sk-loop-hover-atc .sk-loop-hover-atc .add_to_cart_button,
body.sk-loop-hover-atc .sk-loop-hover-atc .added_to_cart,
body.sk-loop-hover-atc .sk-loop-hover-atc .wc-block-components-product-button__button,
body.sk-loop-hover-atc .sk-loop-hover-atc .wp-block-button__link {
  width: 100%;
  justify-content: center;
  border: 0 !important;
  background: #111111 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22) !important;
  text-decoration: none !important;
}

body.sk-loop-hover-atc .sk-loop-hover-atc .button:hover,
body.sk-loop-hover-atc .sk-loop-hover-atc .add_to_cart_button:hover,
body.sk-loop-hover-atc .sk-loop-hover-atc .added_to_cart:hover,
body.sk-loop-hover-atc .sk-loop-hover-atc .wc-block-components-product-button__button:hover,
body.sk-loop-hover-atc .sk-loop-hover-atc .wp-block-button__link:hover {
  background: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product:hover .sk-loop-hover-atc,
body.sk-loop-hover-atc .woocommerce ul.products li.product:focus-within .sk-loop-hover-atc,
body.sk-loop-hover-atc .wc-block-product:hover .sk-loop-hover-atc,
body.sk-loop-hover-atc .wc-block-product:focus-within .sk-loop-hover-atc {
  opacity: 1;
  transform: translateY(0);
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .button,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .added_to_cart,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .add_to_cart_button,
body.sk-loop-hover-atc .wc-block-product .wc-block-components-product-button,
body.sk-loop-hover-atc .wc-block-product .wc-block-components-product-button__button {
  display: none !important;
}

@media (hover: none) {
  body.sk-loop-hover-atc .sk-loop-hover-atc {
    opacity: 1;
    transform: translateY(0);
  }
}

.site .woocommerce a.button.alt:hover,
.site .woocommerce button.button.alt:hover,
.site .woocommerce input.button.alt:hover,
.site .woocommerce div.product .single_add_to_cart_button:hover,
.site .woocommerce .button.checkout:hover,
.site .woocommerce .checkout-button:hover,
.site .woocommerce-checkout #place_order:hover,
.site .widget_shopping_cart .woocommerce-mini-cart__buttons .button.checkout:hover,
.site .woocommerce-mini-cart .woocommerce-mini-cart__buttons .button.checkout:hover,
.site .wc-block-cart__submit-button:hover,
.site .wc-block-components-checkout-place-order-button:hover,
.site .sk-product__summary .single_add_to_cart_button:hover,
.site .sk-dock__btn--buy:hover,
.site .sk-checkout-hero__cta:hover,
.site .sk-cart-hero__cta:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* ========================================================================== */
/* Category/front product cards: aligned, attractive, hover add-to-cart       */
/* ========================================================================== */
body.post-type-archive-product .woocommerce ul.products,
body.tax-product_cat .woocommerce ul.products,
body.tax-product_tag .woocommerce ul.products,
body.home .woocommerce ul.products {
  align-items: stretch;
}

body.post-type-archive-product .woocommerce ul.products li.product,
body.tax-product_cat .woocommerce ul.products li.product,
body.tax-product_tag .woocommerce ul.products li.product,
body.home .woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(17, 24, 39, 0.08) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

body.post-type-archive-product .woocommerce ul.products li.product:hover,
body.tax-product_cat .woocommerce ul.products li.product:hover,
body.tax-product_tag .woocommerce ul.products li.product:hover,
body.home .woocommerce ul.products li.product:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(17, 24, 39, 0.12) !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.home .woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: block;
  height: 100%;
  background: #ffffff !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
  aspect-ratio: 4 / 5;
  min-height: 240px;
  background: #ffffff !important;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap a.woocommerce-loop-product__link,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap a.woocommerce-loop-product__link,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap a.woocommerce-loop-product__link,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap a.woocommerce-loop-product__link,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap a.woocommerce-loop-product__link {
  display: flex;
  align-items: center;
  justify-content: center;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  object-position: center;
  background: #ffffff;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.home .woocommerce ul.products li.product .astra-shop-summary-wrap {
  flex: 1;
  display: grid;
  grid-template-rows: minmax(20px, auto) minmax(calc(1.3em * 2), auto) minmax(28px, auto) 1fr;
  align-content: start;
  gap: 0.45rem;
  border-top: 0 !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_cat .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_tag .woocommerce ul.products li.product .ast-woo-product-category,
body.home .woocommerce ul.products li.product .ast-woo-product-category {
  min-height: 20px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.home .woocommerce ul.products li.product .woocommerce-loop-product__title {
  min-height: calc(1.3em * 2);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

body.post-type-archive-product .woocommerce ul.products li.product .price,
body.tax-product_cat .woocommerce ul.products li.product .price,
body.tax-product_tag .woocommerce ul.products li.product .price,
body.home .woocommerce ul.products li.product .price {
  margin: 0;
  min-height: 28px;
  align-self: start;
}

/* Hide default CTA in summary when overlay CTA is active */
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .button,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .added_to_cart,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .add_to_cart_button,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap .wc-block-components-product-button,
body.sk-loop-hover-atc .wc-block-product .wc-block-components-product-button,
body.sk-loop-hover-atc .wc-block-product .wc-block-components-product-button__button {
  display: none !important;
}

/* Woo blocks cards (fallback alignment) */
body.post-type-archive-product .wc-block-grid__products .wc-block-product,
body.tax-product_cat .wc-block-grid__products .wc-block-product,
body.tax-product_tag .wc-block-grid__products .wc-block-product,
body.home .wc-block-grid__products .wc-block-product {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(17, 24, 39, 0.08);
}

body.post-type-archive-product .wc-block-grid__products .wc-block-product .wc-block-components-product-image,
body.tax-product_cat .wc-block-grid__products .wc-block-product .wc-block-components-product-image,
body.tax-product_tag .wc-block-grid__products .wc-block-product .wc-block-components-product-image,
body.home .wc-block-grid__products .wc-block-product .wc-block-components-product-image {
  aspect-ratio: 4 / 5;
  min-height: 240px;
  background: #ffffff;
}

/* Generic alignment fallback for all pages where hover-atc is active */
body.sk-loop-hover-atc .woocommerce ul.products {
  align-items: stretch;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  height: 100%;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .woocommerce-loop-product__link {
  height: 100%;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap {
  flex: 1;
  display: grid;
  grid-template-rows: minmax(20px, auto) minmax(calc(1.3em * 2), auto) minmax(28px, auto) 1fr;
  align-content: start;
  gap: 0.45rem;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .ast-woo-product-category {
  min-height: 20px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .woocommerce-loop-product__title {
  min-height: calc(1.3em * 2);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .price {
  margin: 0;
  min-height: 28px;
}

/* Front page product cards should stay pure white */
body.home .woocommerce ul.products li.product,
body.home .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.home .wc-block-grid__products .wc-block-product,
body.home .wc-block-grid__products .wc-block-product .wc-block-components-product-image {
  background: #ffffff !important;
}

/* ========================================================================== */
/* Loop image hard fix: prevent tall portrait products from breaking alignment */
/* ========================================================================== */
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
  height: 320px !important;
  min-height: 320px !important;
  max-height: 320px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  aspect-ratio: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.sk-loop-hover-atc .woocommerce ul.products li.product .woocommerce-loop-product__link img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  background: #ffffff !important;
}

body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-summary-wrap {
  display: grid !important;
  grid-template-rows: minmax(22px, auto) minmax(calc(1.3em * 2), auto) minmax(30px, auto) 1fr !important;
  align-content: start !important;
}

@media (max-width: 1200px) {
  body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    height: 280px !important;
    min-height: 280px !important;
    max-height: 280px !important;
  }
}

@media (max-width: 921px) {
  body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    height: 240px !important;
    min-height: 240px !important;
    max-height: 240px !important;
  }
}

@media (max-width: 544px) {
  body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    height: 200px !important;
    min-height: 200px !important;
    max-height: 200px !important;
  }
}

/* ========================================================================== */
/* Mini-cart drawer refresh                                                   */
/* ========================================================================== */
body.sk-new-header .astra-cart-drawer .astra-cart-drawer-header {
  position: relative !important;
}

body.sk-new-header .astra-cart-drawer .astra-cart-drawer-close,
body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item .remove {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

body.sk-new-header .astra-cart-drawer .astra-cart-drawer-close:focus,
body.sk-new-header .astra-cart-drawer .astra-cart-drawer-close:focus-visible,
body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item .remove:focus,
body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item .remove:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

body.sk-new-header .astra-cart-drawer .astra-cart-drawer-content {
  padding: 10px 16px 14px !important;
}

body.sk-new-header .astra-cart-drawer .widget_shopping_cart_content {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
}

body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-content: flex-start !important;
  flex: 0 0 auto !important;
}

body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item {
  min-height: 84px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 12px 40px 12px 84px !important;
  border: 1px solid #dfe9e4 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item img {
  width: 60px !important;
  height: 60px !important;
  object-fit: contain !important;
  background: #ffffff !important;
}

body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item a:not(.remove) {
  margin: 0 !important;
  padding: 0 12px 0 0 !important;
}

body.sk-new-header .astra-cart-drawer .woocommerce-mini-cart .mini_cart_item .remove {
  width: auto !important;
  height: auto !important;
  line-height: 1 !important;
  font-size: 26px !important;
  padding: 0 !important;
}

/* ========================================================================== */
/* Canonical loop-card sizing (archive = forside)                             */
/* ========================================================================== */

body.post-type-archive-product .woocommerce ul.products,
body.tax-product_cat .woocommerce ul.products,
body.tax-product_tag .woocommerce ul.products,
body.home .woocommerce ul.products {
  align-items: stretch;
}

body.post-type-archive-product .woocommerce ul.products li.product,
body.tax-product_cat .woocommerce ul.products li.product,
body.tax-product_tag .woocommerce ul.products li.product,
body.home .woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  height: 100%;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.home .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.sk-loop-hover-atc .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  background: #ffffff !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.home .woocommerce ul.products li.product .astra-shop-summary-wrap {
  flex: 1;
  display: grid;
  grid-template-rows: minmax(22px, auto) minmax(calc(1.3em * 2), auto) minmax(30px, auto) auto;
  align-content: start;
  gap: 0.42rem;
}

body.post-type-archive-product .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_cat .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_tag .woocommerce ul.products li.product .ast-woo-product-category,
body.home .woocommerce ul.products li.product .ast-woo-product-category {
  min-height: 22px;
  margin: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.home .woocommerce ul.products li.product .woocommerce-loop-product__title {
  min-height: calc(1.3em * 2);
  margin: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body.post-type-archive-product .woocommerce ul.products li.product .price,
body.tax-product_cat .woocommerce ul.products li.product .price,
body.tax-product_tag .woocommerce ul.products li.product .price,
body.home .woocommerce ul.products li.product .price {
  margin: 0;
  min-height: 30px;
}

body.post-type-archive-product .woocommerce ul.products li.product .button,
body.post-type-archive-product .woocommerce ul.products li.product .added_to_cart,
body.tax-product_cat .woocommerce ul.products li.product .button,
body.tax-product_cat .woocommerce ul.products li.product .added_to_cart,
body.tax-product_tag .woocommerce ul.products li.product .button,
body.tax-product_tag .woocommerce ul.products li.product .added_to_cart,
body.home .woocommerce ul.products li.product .button,
body.home .woocommerce ul.products li.product .added_to_cart {
  margin-top: auto !important;
  align-self: stretch;
}

/* Keep category/shop grid clean: only products (no injected ad slots). */
body.post-type-archive-product .woocommerce ul.products li.sk-ad-slot,
body.tax-product_cat .woocommerce ul.products li.sk-ad-slot,
body.tax-product_tag .woocommerce ul.products li.sk-ad-slot {
  display: none !important;
}

/* Varekategori: højkant (portrait) billedvisning, pæn alignment uden beskæring */
body.tax-product_cat .woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr));
  align-items: stretch;
  gap: 1.25rem;
}
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link {
  aspect-ratio: 4 / 5 !important;
}
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img {
  object-fit: contain !important;
  object-position: center center !important;
}

/* ========================================================================== */
/* Link CTA polish: avoid heavy black backgrounds on content links            */
/* ========================================================================== */
body.sk-blog-shell .sk-blog-card__cta,
body.sk-blog-shell .sk-blog-taxonomy-card__cta,
.site a.more-link,
.site .read-more a,
.site .sk-home-blog__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  border-radius: 999px;
  border: 1px solid #c8d0d7 !important;
  background: #ffffff !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: none !important;
  padding: 0.48rem 0.72rem;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

body.sk-blog-shell .sk-blog-card__cta:hover,
body.sk-blog-shell .sk-blog-taxonomy-card__cta:hover,
.site a.more-link:hover,
.site .read-more a:hover,
.site .sk-home-blog__cta:hover {
  border-color: #aeb8c1 !important;
  background: #f4f6f8 !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  transform: translateY(-1px);
}

body.sk-blog-shell .sk-blog-card__cta:visited,
body.sk-blog-shell .sk-blog-taxonomy-card__cta:visited,
.site a.more-link:visited,
.site .read-more a:visited,
.site .sk-home-blog__cta:visited {
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
}

/* ========================================================================== */
/* Cart: Update cart button should be light, modern and not heavy dark        */
/* ========================================================================== */
body.sk-cart-shell .woocommerce .actions .button[name="update_cart"] {
  border-radius: 12px;
  min-height: 46px;
  padding: 0.7rem 1.1rem;
  border: 1px solid #c8d0d8 !important;
  background: linear-gradient(180deg, #ffffff 0%, #f6f8fb 100%) !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  font-weight: 700;
  letter-spacing: 0.01em;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.06);
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

body.sk-cart-shell .woocommerce .actions .button[name="update_cart"]:hover:not([disabled]):not(.disabled),
body.sk-cart-shell .woocommerce .actions .button[name="update_cart"]:focus-visible:not([disabled]):not(.disabled) {
  border-color: #aeb8c2 !important;
  background: #f2f5f8 !important;
  color: #0f1720 !important;
  -webkit-text-fill-color: #0f1720 !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.1);
  transform: translateY(-1px);
}

body.sk-cart-shell .woocommerce .actions .button[name="update_cart"][disabled],
body.sk-cart-shell .woocommerce .actions .button[name="update_cart"]:disabled,
body.sk-cart-shell .woocommerce .actions .button[name="update_cart"].disabled {
  border-color: #d6dbe2 !important;
  background: #f3f4f6 !important;
  color: #8f98a5 !important;
  -webkit-text-fill-color: #8f98a5 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transform: none !important;
  cursor: not-allowed;
}

/* ========================================================================== */
/* Canonical varekategori-grid (fast billedramme + aligned tekst/pris/knap)  */
/* ========================================================================== */
body.post-type-archive-product .woocommerce ul.products,
body.tax-product_cat .woocommerce ul.products,
body.tax-product_tag .woocommerce ul.products {
  align-items: stretch !important;
}

body.post-type-archive-product .woocommerce ul.products li.product,
body.tax-product_cat .woocommerce ul.products li.product,
body.tax-product_tag .woocommerce ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  margin: 0 !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
  position: relative !important;
  height: clamp(260px, 27vw, 360px) !important;
  min-height: clamp(260px, 27vw, 360px) !important;
  max-height: clamp(260px, 27vw, 360px) !important;
  padding: clamp(4px, 0.45vw, 8px) !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-loop-product__link {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: transparent !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_cat .woocommerce ul.products li.product .astra-shop-summary-wrap,
body.tax-product_tag .woocommerce ul.products li.product .astra-shop-summary-wrap {
  flex: 1 1 auto !important;
  display: grid !important;
  grid-template-rows: minmax(20px, auto) minmax(calc(1.3em * 2), auto) minmax(30px, auto) auto !important;
  align-content: start !important;
  gap: 0.42rem !important;
  padding: 12px 14px 14px !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_cat .woocommerce ul.products li.product .ast-woo-product-category,
body.tax-product_tag .woocommerce ul.products li.product .ast-woo-product-category {
  min-height: 20px !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag .woocommerce ul.products li.product .woocommerce-loop-product__title {
  margin: 0 !important;
  min-height: calc(1.3em * 2) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .price,
body.tax-product_cat .woocommerce ul.products li.product .price,
body.tax-product_tag .woocommerce ul.products li.product .price {
  margin: 0 !important;
  min-height: 30px !important;
  display: inline-flex !important;
  align-items: flex-end !important;
}

body.post-type-archive-product .woocommerce ul.products li.product .button,
body.post-type-archive-product .woocommerce ul.products li.product .added_to_cart,
body.tax-product_cat .woocommerce ul.products li.product .button,
body.tax-product_cat .woocommerce ul.products li.product .added_to_cart,
body.tax-product_tag .woocommerce ul.products li.product .button,
body.tax-product_tag .woocommerce ul.products li.product .added_to_cart {
  margin-top: auto !important;
  align-self: stretch !important;
}

@media (max-width: 921px) {
  body.post-type-archive-product .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
  body.tax-product_cat .woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
  body.tax-product_tag .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    height: clamp(210px, 46vw, 290px) !important;
    min-height: clamp(210px, 46vw, 290px) !important;
    max-height: clamp(210px, 46vw, 290px) !important;
    padding: clamp(4px, 1vw, 8px) !important;
  }
}
