/* Noor Naksha v1.7.2 — consolidated UAT fixes on top of v1.7.1 */

/* Header action hover colors are already powered by v1.4 variables; v1.7.2
   exposes them in Header & Navigation and keeps this rule last in cascade. */
.nn-header-actions .nn-icon-button:hover,
.nn-header-actions .nn-icon-button:focus-visible{
  background:var(--nn-action-hover-bg)!important;
  color:var(--nn-action-hover-icon)!important;
  border-color:var(--nn-action-hover-bg)!important;
}

/* One product-card typography system: main showcase, multiple product rows,
   Elementor/theme cards, and WooCommerce archive loops inherit the same values. */
.nn-product-info h3,
.nn-product-info h3 a,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:var(--nn-product-title-global-v172)!important;
  font-weight:var(--nn-product-title-weight-global-v172)!important;
}
.nn-price,
.nn-product-info .price,
.woocommerce ul.products li.product .price{
  font-size:var(--nn-product-price-global-v172)!important;
  font-weight:var(--nn-product-price-weight-global-v172)!important;
}
.nn-price ins,.woocommerce ul.products li.product .price ins{font-weight:inherit!important}

/* Category badge typography — force both layout families to use the same
   setting. This fixes controls that existed but did not affect all cards. */
.nn-category-showcase-label,
.nn-category-card-reference .nn-category-meta strong,
.nn-category-card .nn-category-meta strong{
  font-size:var(--nn-cat-badge-size-v172)!important;
  text-transform:var(--nn-cat-badge-transform-v172)!important;
}

/* One visible-card control set for both Reference and Showcase carousels. */
.nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-showcase-card{
  flex-basis:calc((100% - (var(--nn-cat-gap-d) * (var(--nn-cat-carousel-cards-d-v172) - 1)) - var(--nn-cat-peek-d)) / var(--nn-cat-carousel-cards-d-v172))!important;
}
.nn-category-layout-reference .nn-category-carousel-enabled .nn-category-card-reference{
  flex-basis:calc((100% - (var(--nn-cat-gap-d) * (var(--nn-cat-carousel-cards-d-v172) - 1)) - var(--nn-cat-peek-d)) / var(--nn-cat-carousel-cards-d-v172))!important;
}
@media(min-width:721px) and (max-width:1024px){
  .nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-showcase-card,
  .nn-category-layout-reference .nn-category-carousel-enabled .nn-category-card-reference{
    flex-basis:calc((100% - (var(--nn-cat-gap-t) * (var(--nn-cat-carousel-cards-t-v172) - 1)) - var(--nn-cat-peek-t)) / var(--nn-cat-carousel-cards-t-v172))!important;
  }
}
@media(max-width:720px){
  .nn-category-layout-showcase .nn-category-carousel-enabled .nn-category-showcase-card,
  .nn-category-layout-reference .nn-category-carousel-enabled .nn-category-card-reference{
    flex-basis:calc((100% - (var(--nn-cat-gap-m) * (var(--nn-cat-carousel-cards-m-v172) - 1)) - var(--nn-cat-peek-m)) / var(--nn-cat-carousel-cards-m-v172))!important;
    min-width:0!important;
  }
}

/* Footer text-size controls now affect actual footer text instead of a class
   that is not present in the footer markup. */
.nn-footer,
.nn-footer .nn-footer-links a,
.nn-footer p,
.nn-footer .nn-newsletter p,
.nn-footer .nn-footer-contact,
.nn-footer .nn-footer-brand-contact-item,
.nn-footer .nn-footer-tagline,
.nn-footer .nn-footer-bottom{
  font-size:var(--nn-footer-text-d-v172)!important;
}
.nn-footer h3{font-size:calc(var(--nn-footer-text-d-v172) * .95)!important}
@media(min-width:721px) and (max-width:1024px){
  .nn-footer,.nn-footer .nn-footer-links a,.nn-footer p,.nn-footer .nn-newsletter p,.nn-footer .nn-footer-contact,.nn-footer .nn-footer-brand-contact-item,.nn-footer .nn-footer-tagline,.nn-footer .nn-footer-bottom{font-size:var(--nn-footer-text-t-v172)!important}
  .nn-footer h3{font-size:calc(var(--nn-footer-text-t-v172) * .95)!important}
}
@media(max-width:720px){
  .nn-footer,.nn-footer .nn-footer-links a,.nn-footer p,.nn-footer .nn-newsletter p,.nn-footer .nn-footer-contact,.nn-footer .nn-footer-brand-contact-item,.nn-footer .nn-footer-tagline,.nn-footer .nn-footer-bottom{font-size:var(--nn-footer-text-m-v172)!important}
  .nn-footer h3{font-size:calc(var(--nn-footer-text-m-v172) * .95)!important}
}

/* Make common Logo to Tagline Spacing functional; device mode can still
   override it. Keep every branding item on one real alignment axis. */
.nn-footer-brand{display:flex!important;flex-direction:column!important;box-sizing:border-box!important}
.nn-footer-logo-link{transform:none!important;margin-top:0!important;margin-bottom:var(--nn-footer-logo-tag-gap-d-v172)!important;line-height:0!important}
.nn-footer-logo{transform:translateX(var(--nn-footer-logo-offset-d-v17,0));transform-origin:center center}
.nn-footer-tagline{margin-top:0!important}
.nn-footer-brand-d-left{align-items:flex-start!important;text-align:left!important}
.nn-footer-brand-d-center{align-items:center!important;text-align:center!important}
.nn-footer-brand-d-right{align-items:flex-end!important;text-align:right!important}
.nn-footer-brand-d-left .nn-footer-tagline,.nn-footer-brand-d-left .nn-footer-brand-contact{width:100%;text-align:left!important;align-self:stretch!important}
.nn-footer-brand-d-center .nn-footer-tagline,.nn-footer-brand-d-center .nn-footer-brand-contact{width:100%;text-align:center!important;align-self:stretch!important}
.nn-footer-brand-d-right .nn-footer-tagline,.nn-footer-brand-d-right .nn-footer-brand-contact{width:100%;text-align:right!important;align-self:stretch!important}
@media(min-width:721px) and (max-width:1024px){
  .nn-footer-logo-link{margin-bottom:var(--nn-footer-logo-tag-gap-t-v172)!important}
  .nn-footer-logo{transform:translateX(var(--nn-footer-logo-offset-t-v17,0))}
  .nn-footer-brand-t-left{align-items:flex-start!important;text-align:left!important}.nn-footer-brand-t-center{align-items:center!important;text-align:center!important}.nn-footer-brand-t-right{align-items:flex-end!important;text-align:right!important}
  .nn-footer-brand-t-left .nn-footer-tagline,.nn-footer-brand-t-left .nn-footer-brand-contact{width:100%;text-align:left!important;align-self:stretch!important}.nn-footer-brand-t-center .nn-footer-tagline,.nn-footer-brand-t-center .nn-footer-brand-contact{width:100%;text-align:center!important;align-self:stretch!important}.nn-footer-brand-t-right .nn-footer-tagline,.nn-footer-brand-t-right .nn-footer-brand-contact{width:100%;text-align:right!important;align-self:stretch!important}
}
@media(max-width:720px){
  .nn-footer-logo-link{margin-bottom:var(--nn-footer-logo-tag-gap-m-v172)!important}
  .nn-footer-logo{transform:translateX(var(--nn-footer-logo-offset-m-v17,0))}
  .nn-footer-brand-m-left{align-items:flex-start!important;text-align:left!important}.nn-footer-brand-m-center{align-items:center!important;text-align:center!important}.nn-footer-brand-m-right{align-items:flex-end!important;text-align:right!important}
  .nn-footer-brand-m-left .nn-footer-tagline,.nn-footer-brand-m-left .nn-footer-brand-contact{width:100%;text-align:left!important;align-self:stretch!important}.nn-footer-brand-m-center .nn-footer-tagline,.nn-footer-brand-m-center .nn-footer-brand-contact{width:100%;text-align:center!important;align-self:stretch!important}.nn-footer-brand-m-right .nn-footer-tagline,.nn-footer-brand-m-right .nn-footer-brand-contact{width:100%;text-align:right!important;align-self:stretch!important}
}

/* Testimonial redesign: title column + a dedicated responsive card grid.
   A single Hub review no longer occupies one of three tiny reserved columns. */
.nn-testimonial-grid-v172{display:grid!important;grid-template-columns:minmax(210px,250px) minmax(0,1fr)!important;gap:28px!important;align-items:start!important}
.nn-testimonial-cards-v172{display:grid;grid-template-columns:repeat(var(--nn-testimonial-cols-d-v172),minmax(0,1fr));gap:var(--nn-testimonial-gap-d,16px);align-items:stretch;min-width:0}
.nn-testimonial-card-v17{width:100%;max-width:var(--nn-testimonial-card-w-d-v172);min-height:var(--nn-testimonial-card-h-d-v172)!important;justify-self:start;box-sizing:border-box}
.nn-testimonial-content-v17>p{text-align:var(--nn-testimonial-text-align-v172)!important}
.nn-testimonial-card-v17 .nn-testimonial-screenshot{width:min(180px,100%)}
@media(min-width:721px) and (max-width:1024px){
  .nn-testimonial-grid-v172{grid-template-columns:1fr!important;gap:18px!important}
  .nn-testimonial-title{padding-right:0!important}
  .nn-testimonial-cards-v172{grid-template-columns:repeat(var(--nn-testimonial-cols-t-v172),minmax(0,1fr));gap:var(--nn-testimonial-gap-t,12px)}
  .nn-testimonial-card-v17{max-width:var(--nn-testimonial-card-w-t-v172);min-height:var(--nn-testimonial-card-h-t-v172)!important}
}
@media(max-width:720px){
  .nn-testimonial-grid-v172{grid-template-columns:1fr!important;gap:16px!important}
  .nn-testimonial-title{padding-right:0!important}
  .nn-testimonial-cards-v172{grid-template-columns:repeat(var(--nn-testimonial-cols-m-v172),minmax(0,1fr));gap:var(--nn-testimonial-gap-m,12px)}
  .nn-testimonial-card-v17{max-width:min(100%,var(--nn-testimonial-card-w-m-v172));min-height:var(--nn-testimonial-card-h-m-v172)!important}
}
