/* FamilySafe 11Z.3 — public-page polish
   Fixes family-page catalog scope, uncrops the header logo, and gives the
   Programs AHA notice its own centered visual section. */

/* Header brand: show the whole logo artwork. 11Z.2 intentionally enlarged the
   mark, but its scale(1.34) cropped the left/right edges of the source image. */
.public-site .nav-wrap{
  min-height:142px!important;
}
.public-site .brand-mark{
  width:118px!important;
  height:118px!important;
  flex:0 0 118px!important;
  box-sizing:border-box!important;
  padding:3px!important;
  overflow:hidden!important;
  border-radius:27px!important;
  background:#0d1517!important;
}
.public-site .brand-mark img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  transform-origin:center!important;
}
.public-site .brand-copy strong{
  font-size:1.7rem!important;
}

/* Programs: the AHA authorization notice is a standalone centered block,
   rather than visually touching / inheriting the hero section above it. */
.public-site .launch-catalog-hero{
  margin-bottom:0!important;
}
.public-site .launch-catalog-hero + .aha-catalog-callout,
.public-site .aha-catalog-callout{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-items:center!important;
  align-items:center!important;
  gap:18px!important;
  width:min(calc(100% - 48px),1000px)!important;
  margin:52px auto 36px!important;
  padding:34px 42px!important;
  box-sizing:border-box!important;
  text-align:center!important;
  border-radius:24px!important;
}
.public-site .aha-catalog-callout>div{
  width:100%!important;
  max-width:850px!important;
  margin:0 auto!important;
  text-align:center!important;
}
.public-site .aha-catalog-callout .eyebrow{
  margin-left:auto!important;
  margin-right:auto!important;
}
.public-site .aha-catalog-callout h2{
  margin:.3rem auto .65rem!important;
  max-width:760px!important;
  text-align:center!important;
}
.public-site .aha-catalog-callout p:not(.eyebrow){
  max-width:820px!important;
  margin:.35rem auto 0!important;
  text-align:center!important;
}
.public-site .aha-hold-badge{
  justify-self:center!important;
  margin:0 auto!important;
  text-align:center!important;
}
.public-site .platform-catalog-section{
  padding-top:26px!important;
}

@media(max-width:1040px){
  .public-site .nav-wrap{min-height:118px!important}
  .public-site .brand-mark{width:96px!important;height:96px!important;flex-basis:96px!important;border-radius:23px!important}
  .public-site .brand-copy strong{font-size:1.5rem!important}
}
@media(max-width:860px){
  .public-site .nav-wrap{min-height:104px!important}
  .public-site .brand-mark{width:84px!important;height:84px!important;flex-basis:84px!important;border-radius:21px!important}
  .public-site .aha-catalog-callout{width:min(calc(100% - 34px),1000px)!important;margin:38px auto 28px!important;padding:28px 26px!important}
}
@media(max-width:640px){
  .public-site .nav-wrap{min-height:92px!important}
  .public-site .brand-mark{width:72px!important;height:72px!important;flex-basis:72px!important;border-radius:18px!important;padding:2px!important}
  .public-site .brand-copy strong{font-size:1.25rem!important}
  .public-site .aha-catalog-callout{width:min(calc(100% - 24px),1000px)!important;margin:30px auto 22px!important;padding:24px 19px!important;border-radius:19px!important}
}
