/* PERFULET_V077_ALIGNMENT_POLISH
 * Presentation-only alignment hardening from owner visual QA.
 * Scope: circular icon centering, header action parity, desktop section copy rhythm,
 * and audience-card CTA placement. No commerce/business logic changes.
 */

/* 1) Circular icon contract: icon artwork must sit on the optical center. */
.icon-btn,
.trust-icon,
.product-wishlist,
.search-close,
.mobile-menu-btn,
.drawer-head .icon-btn,
.cart-drawer-head .icon-btn {
  display:inline-grid!important;
  place-items:center!important;
  align-content:center!important;
  justify-content:center!important;
  line-height:1!important;
}

.icon-btn > svg,
.trust-icon > svg,
.trust-icon .perfulet-icon,
.product-wishlist > svg,
.search-close > svg,
.mobile-menu-btn > svg,
.drawer-head .icon-btn > svg,
.cart-drawer-head .icon-btn > svg {
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  transform:none!important;
  transform-origin:center!important;
}

.trust-icon {
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  padding:0!important;
  border-radius:50%!important;
}

.trust-icon > svg,
.trust-icon .perfulet-icon {
  width:21px!important;
  height:21px!important;
}

/* 2) Header actions: one 44px circle system for Saved / Account / Cart. */
.header-actions .action-link {
  position:relative!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  gap:0!important;
  line-height:1!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}

.header-actions .action-link:hover,
.header-actions .action-link:focus-visible {
  background:#f6efe8!important;
  border-color:rgba(91,58,36,.10)!important;
}

.header-actions .action-link > svg,
.header-actions .action-link > .perfulet-icon {
  position:static!important;
  width:20px!important;
  height:20px!important;
  display:block!important;
  margin:0!important;
  transform:none!important;
}

/* Keep semantic labels available to assistive technology without disturbing icon centering. */
.header-actions .action-link .action-label {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Saved and cart counters share one geometry, baseline and offset. */
.header-actions .saved-count:not([hidden]),
.header-actions .cart-count {
  position:absolute!important;
  top:-4px!important;
  right:-5px!important;
  z-index:3!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  padding:0!important;
  margin:0!important;
  border:2px solid #fff!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#9b5529!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums!important;
  box-sizing:border-box!important;
}

.header-actions .saved-count[hidden] { display:none!important; }

/* 3) Desktop section headings: use the available horizontal room before wrapping. */
@media (min-width:1180px) {
  .home-v062 .section-head {
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:2rem!important;
  }

  .home-v062 .section-head > div:first-child {
    flex:1 1 auto!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
  }

  .home-v062 .section-head h2,
  .home-v062 .section-head .section-intro,
  .home-audience-v062 .section-head h2 {
    width:auto!important;
    max-width:none!important;
    white-space:nowrap!important;
  }

  .home-v062 .section-head .text-link {
    flex:0 0 auto!important;
  }
}

/* 4) Audience cards: keep title clear; move the CTA and chevron to a clean lower-right rail. */
.home-audience-v062 .home-audience-grid > a {
  position:relative!important;
  padding:1.7rem 1.7rem 1.85rem!important;
}

.home-audience-v062 .home-audience-grid > a strong {
  position:relative!important;
  z-index:2!important;
  margin:0 0 3.3rem!important;
}

.home-audience-v062 .home-audience-grid > a small {
  position:absolute!important;
  right:4.15rem!important;
  bottom:1.5rem!important;
  z-index:3!important;
  margin:0!important;
  min-height:34px!important;
  padding:.5rem .78rem!important;
  display:inline-flex!important;
  align-items:center!important;
  line-height:1!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}

.home-audience-v062 .home-audience-grid > a > .perfulet-icon,
.home-audience-v062 .home-audience-grid > a > svg {
  position:absolute!important;
  right:1.55rem!important;
  bottom:1.5rem!important;
  z-index:3!important;
  width:34px!important;
  height:34px!important;
  padding:8px!important;
  margin:0!important;
  border-radius:50%!important;
  display:block!important;
  box-sizing:border-box!important;
}

/* Preserve intentional wrapping and compact controls on narrower screens. */
@media (max-width:1179px) {
  .home-v062 .section-head h2,
  .home-v062 .section-head .section-intro {
    white-space:normal!important;
  }
}

@media (max-width:760px) {
  .header-actions { gap:.32rem!important; }
  .header-actions .action-link {
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }

  .home-audience-v062 .home-audience-grid > a strong {
    margin-bottom:3rem!important;
  }

  .home-audience-v062 .home-audience-grid > a small {
    right:3.95rem!important;
    bottom:1.3rem!important;
  }

  .home-audience-v062 .home-audience-grid > a > .perfulet-icon,
  .home-audience-v062 .home-audience-grid > a > svg {
    right:1.3rem!important;
    bottom:1.3rem!important;
  }
}
