
/* =========================================================
   AWEBZONE V15 — FINAL READABILITY + CONTEXTUAL ICON SYSTEM
   ========================================================= */

:root{
  --az-v15-ink:#16191d;
  --az-v15-muted:#59636d;
  --az-v15-soft:#707a84;
  --az-v15-green:#6f9f12;
}

/* 1) READABILITY: explicit foreground colors for light surfaces */
.az-post,
.az-page-post,
.card,
.day-card,
.service-card,
.process-card,
.az-rail-card,
.az-service-feed-grid a,
.az-price-feed > div,
.az-article-content{
  color:var(--az-v15-ink)!important;
}
.az-post :is(h1,h2,h3,h4,strong,b),
.az-page-post :is(h1,h2,h3,h4,strong,b),
.card :is(h1,h2,h3,h4,strong,b),
.day-card :is(h1,h2,h3,h4,strong,b),
.service-card :is(h1,h2,h3,h4,strong,b),
.process-card :is(h1,h2,h3,h4,strong,b){
  color:var(--az-v15-ink)!important;
}
.az-post :is(p,li,small),
.az-page-post :is(p,li,small),
.card :is(p,li,small),
.day-card :is(p,li,small),
.service-card :is(p,li,small),
.process-card :is(p,li,small){
  color:var(--az-v15-muted)!important;
}

/* Known dark/visual surfaces always receive readable foregrounds */
.az-visual-strip,
.az-visual-strip *,
.az-rail-dark,
.az-rail-dark *,
.az-hero-visual,
.az-hero-visual *,
.az-primary-action,
.az-primary-action *,
.az-nav-cta,
.az-nav-cta *,
.az-post-actions a:first-child,
.az-post-actions a:first-child *{
  color:#fff!important;
}
.az-visual-strip small{color:rgba(255,255,255,.74)!important}
.az-visual-strip b{color:#fff!important}
.az-primary-action:before,
.az-post-actions a:first-child:before,
.az-nav-cta:before{
  color:#111315!important;
}

/* Links on pale backgrounds should never disappear */
.az-post a:not(.az-primary-action),
.az-page-post a:not(.az-primary-action),
.card a,
.day-card a,
.service-card a,
.process-card a{
  color:#466f0d!important;
}
.az-post a:hover,
.az-page-post a:hover{color:#243d08!important}

/* 2) FOUNDER PHOTO: show the complete face more consistently */
.az-avatar-large,
.az-mini-avatar,
.az-header-avatar,
.az-founder-avatar,
.az-profile-avatar{
  background-size:100% auto!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.az-avatar-large{
  background-size:112% auto!important;
  background-position:center 42%!important;
}
.az-mini-avatar{
  background-size:106% auto!important;
  background-position:center 40%!important;
}
.az-header-avatar{
  background-size:106% auto!important;
  background-position:center 40%!important;
}

/* 3) CARD DENSITY: remove unnecessary tall empty areas */
.az-post{min-height:0!important}
.az-service-feed-grid a{
  min-height:128px!important;
  padding:16px!important;
}
.az-service-feed-grid a b{
  min-height:0!important;
  margin-top:2px!important;
}
.az-service-feed-grid a small{
  display:block!important;
  margin-top:4px!important;
}
.az-service-feed-grid a em{margin-top:8px!important}
.card,
.day-card,
.service-card,
.process-card{
  min-height:0!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}
.az-page-post .card-grid{gap:14px!important}
.az-post-head{margin-bottom:14px!important}

/* Contextual topic icon attached to headings based on actual nearby content */
.az-context-heading{
  display:flex!important;
  align-items:flex-start!important;
  gap:11px!important;
}
.az-context-heading > .az-topic-heading-icon{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  border-radius:12px!important;
  object-fit:cover!important;
  box-shadow:0 7px 16px rgba(20,28,34,.09)!important;
  margin-top:.08em!important;
}
.az-context-heading > .az-heading-text{
  min-width:0!important;
}

/* Smaller icon treatment on mobile so text remains the hero */
@media(max-width:820px){
  .az-context-heading{gap:9px!important}
  .az-context-heading > .az-topic-heading-icon{
    width:31px!important;
    height:31px!important;
    flex-basis:31px!important;
    border-radius:10px!important;
  }
  .az-service-feed-grid a{
    min-height:118px!important;
    padding:14px!important;
  }
  .az-post{padding-top:18px!important;padding-bottom:18px!important}
}

/* Explicit service-card icon polish */
.az-service-feed-grid a>span.az-service-icon-img{
  width:46px!important;
  height:46px!important;
  padding:0!important;
  overflow:hidden!important;
  background:transparent!important;
}
.az-service-feed-grid a>span.az-service-icon-img img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

/* A subtle performance visual marker for performance-oriented content */
.az-performance-marker{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:7px 10px!important;
  margin:4px 0 10px!important;
  border-radius:12px!important;
  background:#f3f8e8!important;
  color:#4c7210!important;
  font-size:11px!important;
  font-weight:900!important;
}
.az-performance-marker img{
  width:22px!important;
  height:22px!important;
  border-radius:7px!important;
}

/* Avoid icon collisions with existing decorative V14 visuals */
.az-icon-visual-system{z-index:2!important}
.az-post-head,.az-post-copy,.az-article-content{position:relative!important;z-index:3!important}
