
/* =========================================================
   AWEBZONE V20 — DEFINITIVE PROFILE IMAGE + TEXT OVERFLOW FIX
   ========================================================= */

/* EXACT USER-SUPPLIED OWNER IMAGE
   An actual <img> is now inserted into every profile avatar.
   This avoids background-image inheritance/order problems completely. */
.az-avatar-large,
.az-mini-avatar,
.az-header-avatar,
.az-founder-avatar,
.az-profile-avatar{
  background-image:none!important;
  background:none!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
}

.az-owner-profile-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:scale(.86)!important;
  transform-origin:center center!important;
  border-radius:inherit!important;
  background:transparent!important;
}

/* Small avatars: keep even more of the supplied photo visible. */
.az-mini-avatar .az-owner-profile-img,
.az-header-avatar .az-owner-profile-img,
.az-profile-avatar .az-owner-profile-img{
  transform:scale(.78)!important;
}

/* Never allow old pseudo-elements to cover the image. */
.az-avatar-large::before,
.az-avatar-large::after,
.az-mini-avatar::before,
.az-mini-avatar::after,
.az-header-avatar::before,
.az-header-avatar::after,
.az-founder-avatar::before,
.az-founder-avatar::after,
.az-profile-avatar::before,
.az-profile-avatar::after{
  pointer-events:none!important;
}

/* ---------------------------------------------------------
   TEXT / CARD OVERFLOW FIX
   Cards now grow with their content instead of clipping text.
--------------------------------------------------------- */
.az-post,
.az-page-post,
.az-blog-card,
.az-problem-post,
.az-final-post,
.az-service-feed-grid a,
.az-article-cta,
.az-post-head,
.az-profile,
.az-profile > div,
.az-post-actions a,
.az-nav-cta,
.az-bottom-nav a{
  min-width:0!important;
  max-width:100%!important;
}

.az-post,
.az-page-post,
.az-blog-card,
.az-problem-post,
.az-final-post,
.az-service-feed-grid a,
.az-article-cta{
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* Preserve intentional visual clipping only for graphic/illustration areas. */
.az-hero-visual,
.az-growth-visual,
.az-visual-card{
  overflow:hidden!important;
}

/* Every normal text element can wrap safely inside its container. */
.az-post h1,
.az-post h2,
.az-post h3,
.az-page-post h1,
.az-page-post h2,
.az-page-post h3,
.az-post p,
.az-page-post p,
.az-profile strong,
.az-profile small,
.az-service-feed-grid a,
.az-service-feed-grid strong,
.az-service-feed-grid small,
.az-article-cta strong,
.az-article-cta p,
.az-post-actions a,
.az-nav-cta,
.az-bottom-nav a,
.az-article-content,
.az-article-content *{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto;
}

/* Remove rigid text heights that can cause clipping. */
.az-profile small,
.az-profile strong,
.az-post h1,
.az-post h2,
.az-post h3,
.az-post p,
.az-page-post h1,
.az-page-post h2,
.az-page-post h3,
.az-page-post p{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

/* Flexible rows must allow their text side to shrink/wrap. */
.az-post-head,
.az-profile,
.az-article-cta{
  align-items:flex-start!important;
}

.az-profile > div:not(.az-avatar-large):not(.az-mini-avatar):not(.az-header-avatar):not(.az-founder-avatar):not(.az-profile-avatar){
  min-width:0!important;
  flex:1 1 auto!important;
}

/* Mobile: give cards a little more breathing room for wrapped text. */
@media(max-width:820px){
  .az-post,
  .az-page-post{
    padding:20px!important;
  }

  .az-service-feed-grid a{
    min-height:0!important;
    padding:18px!important;
  }

  .az-profile{
    gap:10px!important;
  }

  .az-post-head{
    gap:10px!important;
  }
}
