/*
Theme Name: 007Carbon LiveCanvas Child
Theme URI: https://007carbon.com/
Description: Site-specific Picostrap child theme with local Montserrat typography. Adapted from the official LiveCanvas blank child scaffold; preserves the installed parent's compiled styles and Bootstrap script.
Author: 007Carbon
Version: 1.1.0
Template: picostrap5-3.8.6
Text Domain: 007carbon-child
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Scoped presentation patch; append after child typography.css.
 * Product cards only: main product gallery, brand/application cards, blog cards
 * and inline article images deliberately do not match these selectors. */

/* A. Native archive cards and industry product recommendations. */
body.c7-local-fonts :is(.c7-product-card, .c7-product-grid__item, .c7-search-card:has(a[href^="https://007carbon.com/product/"], a[href^="/product/"])) {
  padding: 0 !important;
}
body.c7-local-fonts .c7-product-card > figure,
body.c7-local-fonts .c7-product-grid__item > .c7-product-grid__img,
body.c7-local-fonts .c7-search-card:has(a[href^="https://007carbon.com/product/"], a[href^="/product/"]) .c7-search-card-inner > .c7-search-image {
  display: block !important;
  position: relative;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
}
body.c7-local-fonts .c7-product-card > figure > a,
body.c7-local-fonts .c7-product-grid__item > .c7-product-grid__img > a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.c7-local-fonts .c7-product-card > figure > a > img,
body.c7-local-fonts .c7-product-grid__item > .c7-product-grid__img > a > img,
body.c7-local-fonts .c7-search-card:has(a[href^="https://007carbon.com/product/"], a[href^="/product/"]) .c7-search-image > img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1;
  object-fit: cover !important;
  object-position: center;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
/* A mixed search template opts in its product rows only, not article rows. */
body.c7-local-fonts .c7-search-card:has(a[href^="https://007carbon.com/product/"], a[href^="/product/"]) .c7-search-image::before {
  content: none;
}

/* B. WooCommerce-generated product loops (e.g. related/cross-sell widgets).
 * The link often also wraps the title/price, so do not square/clip the link.
 * Product-category tiles are explicitly excluded. */
body.c7-local-fonts.woocommerce ul.products > li.product:not(.product-category),
body.c7-local-fonts .woocommerce ul.products > li.product:not(.product-category) {
  padding: 0 !important;
}
body.c7-local-fonts.woocommerce ul.products > li.product:not(.product-category)
  > a.woocommerce-loop-product__link > img,
body.c7-local-fonts.woocommerce ul.products > li.product:not(.product-category)
  > a.woocommerce-LoopProduct-link > img,
body.c7-local-fonts .woocommerce ul.products > li.product:not(.product-category)
  > a.woocommerce-loop-product__link > img,
body.c7-local-fonts .woocommerce ul.products > li.product:not(.product-category)
  > a.woocommerce-LoopProduct-link > img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  object-fit: cover !important;
  object-position: center;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

/* C. First-level menu labels only; 12px -> 13px desktop, 20px -> 21px drawer.
 * Direct-child chains prevent changes to mega-menu and collapsed descendants.
 * Desktop gets 600; drawer preserves 700 anchors and brings buttons to 700.
 * Specific !important beats the current typography role weight 500. */
body.c7-local-fonts .lc-007-header #c7PrimaryNav
  > .navbar-nav > .nav-item > .nav-link {
  font-size: 13px !important;
  font-weight: 600 !important;
}
body.c7-local-fonts #c7MobileNav > .offcanvas-body > nav > ul
  > li > .c7-mobile-row > .c7-mobile-link {
  font-size: 21px !important;
  font-weight: 700 !important;
}

/* D. Homepage: live 1440px baseline had a 72px breadcrumb margin-top gap.
 * Move that exact space into the hero's background-bearing bottom padding.
 * Breadcrumb/next-section positions and existing right-image overlap stay put.
 * 50px + 72px desktop/tablet; the original <=767px padding was 30px. */
body.c7-local-fonts .c7-home-e721a47 {
  padding-bottom: 122px !important;
  overflow: visible;
  position: relative;
  z-index: 2;
  background-position: center bottom;
}
/* Per-section <style> tags can sit between sections; do not use adjacent +. */
body.c7-local-fonts .c7-home-e721a47 ~ .c7-home-2398587b {
  margin-top: 0 !important;
}
body.c7-local-fonts .c7-home-e721a47 .c7-home-f17e093,
body.c7-local-fonts .c7-home-e721a47 .c7-home-f17e093 > .c7-populated {
  overflow: visible;
}
body.c7-local-fonts .c7-home-e721a47 .c7-home-595df1a {
  position: relative;
  z-index: 2;
  pointer-events: none;
}
/* Hero/image can overlap the empty right side of the lower breadcrumb.
 * Header keeps its existing 1030 stacking level; image cannot intercept clicks. */
body.c7-local-fonts .c7-home-e721a47 ~ .c7-home-2398587b {
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  body.c7-local-fonts .c7-home-e721a47 .c7-home-595df1a {
    transform: translateY(40px);
  }
}
@media (max-width: 767px) {
  body.c7-local-fonts .c7-home-e721a47 {
    padding-bottom: 102px !important;
  }
}
/* Plain hero art is decorative on the public site, but editable in LiveCanvas. */
body.c7-local-fonts.livecanvas-is-editing .c7-home-e721a47 .c7-home-595df1a,
body.c7-local-fonts.livecanvas-is-editing .c7-home-e721a47 .c7-home-595df1a img {
  pointer-events: auto;
}
