/* TN_PS_PRODUCT_SYSTEM_LAYOUT_V175
   SYSTEM-WIDE contract for every public product rendered by product-detail.php.

   Owner-preserved spacing:
   - Does NOT alter the intentional 140px separator margin.
   - Does NOT alter the intentional 50px product-description top padding.

   Desktop article-flow repair:
   Each CMS text+image section must NOT create its own independent formatting
   context merely because it has an image. A floated image may continue beside
   following text until its physical height is exhausted. This prevents the
   artificial blank vertical gaps created when a short text block was forced to
   reserve the full height of a tall image.

   Alignment remains DB/CMS-driven through ps-cms-layout-left/right/center.
*/

@media (min-width:821px) {
  body.ps-product-page-v175
  .ps-cms-description-flow
  .ps-cms-desc-block.ps-cms-block-has-media {
    display:block!important;
    clear:none!important;
    min-height:0!important;
    overflow:visible!important;
  }

  body.ps-product-page-v175
  .ps-cms-description-flow
  .ps-cms-desc-layout.ps-cms-has-media {
    display:block!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  body.ps-product-page-v175
  .ps-cms-description-flow
  .ps-cms-desc-block {
    clear:none!important;
    min-height:0!important;
  }

  /* Centered media deliberately starts a new visual row. */
  body.ps-product-page-v175
  .ps-cms-description-flow
  .ps-cms-layout-center {
    clear:both!important;
  }
}

/* Mobile remains a simple centered, linear reading flow. */
@media (max-width:820px) {
  body.ps-product-page-v175
  .ps-cms-description-flow
  .ps-cms-desc-block {
    clear:both!important;
  }
}

/*
  Product-only legacy Bootstrap 2 pollution isolation.
  new_css_products.css contains global .row and .btn rules that do not exist
  on normal pages. Neutralize those rules only inside the shared site header;

/* TN_PS_PRODUCT_HEADER_SHARED_CSS_V133 */
