/* Family-only Pet Pic styles copied from the bundled public.css, with
 * original order, specificity and media queries retained. Public CSS is unchanged.
 * The nested public classes preserve the public homepage's Pet Pic context.
 */
.hh-family-public-petpic{width:100%;min-width:0;padding:20px 0 25px;font-family:Quicksand,Arial,sans-serif;color:#222026}
.hh-family-public-petpic .hhp-home-story-pet-row{width:100%;max-width:236px;margin:0 auto}
@media(min-width:831px) and (max-width:1030px){.hh-family-public-petpic .hhp-home-story-pet-row{max-width:210px}}
@media(max-width:830px){.hh-family-public-petpic .hhp-home-story-pet-row{max-width:100%}}
.hh-family-public-petpic .hhp-petpic-section{padding:10px 18px 60px;display:flex;justify-content:center;align-items:center;scroll-margin-top:35px}
.hh-family-public-petpic .hhp-petpic-card{--hhp-pet-ink:#28212c;position:relative;max-width:440px;width:min(100%,440px);padding:15px 15px 21px;text-align:center;isolation:isolate}
.hh-family-public-petpic .hhp-petpic-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:2;margin:0 auto -3px;padding:0 5px;line-height:1;font-style:normal}
.hh-family-public-petpic .hhp-petpic-today{font-family:'DynaPuff','Quicksand',sans-serif;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:700;color:#ff8db8;-webkit-text-stroke:1px var(--hhp-pet-ink);paint-order:stroke fill;transform:rotate(-4deg) translateX(-50px) translateY(12px);text-shadow:2px 3px 0 #fff,4px 5px 0 #65d5e9}
.hh-family-public-petpic .hhp-petpic-big{font-family:'DynaPuff','Quicksand',sans-serif;font-size:clamp(2.35rem,5.6vw,3.65rem);font-weight:700;letter-spacing:-.025em;color:#fff4a7;-webkit-text-stroke:2.2px var(--hhp-pet-ink);paint-order:stroke fill;filter:drop-shadow(3px 4px 0 #fff) drop-shadow(5px 5px 0 #ff85b6);transform:rotate(-2deg)}
.hh-family-public-petpic .hhp-petpic-date{font-family:'Coming Soon','Comic Sans MS',cursive;position:relative;z-index:2;margin:15px 0 13px;color:#413749;text-align:left;padding-left:18px;font-size:1rem;font-weight:700;transform:rotate(-3deg)}
.hh-family-public-petpic .hhp-petpic-date:empty{display:none}
.hh-family-public-petpic .hhp-petpic-polaroid{position:relative;margin:0;background:#fff;border:3px solid var(--hhp-pet-ink);border-radius:18px;padding:14px 14px 10px;box-shadow:0 0 0 5px #fff,0 0 0 9px #7bdcec,8px 9px 0 10px #ffe36d,14px 15px 0 11px #ff94c4;transform:rotate(1.2deg)}
.hh-family-public-petpic .hhp-petpic-mat{background:#f1f8fb;position:relative;width:100%;aspect-ratio:1.13;overflow:hidden;border-radius:7px;line-height:0;border:1px solid #ece6ee}
.hh-family-public-petpic .hhp-petpic-mat img{width:100%;height:100%;object-fit:cover;object-position:var(--petpic-x,50%) var(--petpic-y,50%);transform:scale(var(--petpic-zoom,1));transform-origin:var(--petpic-x,50%) var(--petpic-y,50%);display:block;max-width:none}
.hh-family-public-petpic .hhp-petpic-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 6px 1px;font-family:'Coming Soon','Comic Sans MS',cursive;font-size:1.05rem;font-weight:700;color:#312b37;line-height:1.4;text-align:left}
.hh-family-public-petpic .hhp-petpic-caption{min-width:0;overflow-wrap:anywhere}
.hh-family-public-petpic .hhp-petpic-heart{font-family:'DynaPuff','Quicksand',sans-serif;color:#ff80b2;font-size:2.1rem;line-height:1;text-shadow:1px 2px 0 #302538;flex:none}
@media(max-width:550px){
.hh-family-public-petpic .hhp-petpic-section{padding:10px 14px 50px}
.hh-family-public-petpic .hhp-petpic-card{padding:12px 15px 16px}
.hh-family-public-petpic .hhp-petpic-polaroid{padding:11px 11px 9px;box-shadow:0 0 0 4px #fff,0 0 0 7px #7bdcec,5px 6px 0 8px #ffe36d,10px 11px 0 9px #ff94c4}
.hh-family-public-petpic .hhp-petpic-today{transform:rotate(-4deg) translateX(-35px) translateY(11px)}
.hh-family-public-petpic .hhp-petpic-date{padding-left:7px}
}
@media(prefers-reduced-motion:reduce){
.hh-family-public-petpic .hhp-petpic-polaroid{transition:none}
}
.hh-family-public-petpic .hhp-petpic-card--portrait .hhp-petpic-mat{aspect-ratio:0.9}
.hh-family-public-petpic .hhp-petpic-card--landscape .hhp-petpic-mat{aspect-ratio:1.4}
.hh-family-public-petpic .hhp-petpic-mat img[style*="object-fit:contain"]{background:#f1f8fb}
.hh-family-public-petpic .hhp-home .hhp-petpic-section{display:flex;width:100%;padding:2px clamp(15px,5vw,72px) 42px;margin:0 auto;align-items:flex-start;scroll-margin-top:32px}
.hh-family-public-petpic .hhp-home .hhp-petpic-align--left{justify-content:flex-start}
.hh-family-public-petpic .hhp-home .hhp-petpic-align--center{justify-content:center}
.hh-family-public-petpic .hhp-home .hhp-petpic-align--right{justify-content:flex-end}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-card{--hhp-pet-ink:#29242e;width:100%;max-width:300px;padding:15px 7px 9px;isolation:isolate;text-align:center}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-size--medium{max-width:365px}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-heading{position:relative;z-index:3;display:inline-block;width:auto;max-width:calc(100% + 14px);margin:0 auto -13px;padding:7px 16px;border:2.5px solid var(--hhp-pet-ink);border-radius:999px;background:#ffe982;box-shadow:0 0 0 4px #fff,4px 5px 0 4px #ff9ac9;color:var(--hhp-pet-ink);font-family:'DynaPuff','Quicksand',sans-serif;font-size:clamp(1rem,1.7vw,1.2rem);font-weight:700;letter-spacing:-.035em;line-height:1.2;transform:none;filter:none;-webkit-text-stroke:0;text-shadow:none}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-polaroid{padding:12px 12px 9px;transform:rotate(1deg);border:2.5px solid var(--hhp-pet-ink);border-radius:15px;box-shadow:0 0 0 4px #fff,0 0 0 7px #65cee6,6px 7px 0 8px #ffe16e,11px 12px 0 9px #ff94c4}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-mat{border-radius:5px;overflow:hidden;aspect-ratio:1.12;background:#edf8fd;border:1px solid #ddd;position:relative;line-height:0}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-mat img{border-radius:4px;clip-path:inset(0 round 4px)}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-card--portrait .hhp-petpic-mat{aspect-ratio:.93}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-card--landscape .hhp-petpic-mat{aspect-ratio:1.38}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-date{position:absolute;top:9px;right:0px;left:auto;z-index:4;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:6px 10px;border:2px solid white;border-radius:999px;background:#bafa5c;box-shadow:2px 3px 0 #29242e;color:#2b2730;font-family:'Quicksand',Arial,sans-serif;font-size:.72rem;font-weight:900;line-height:1.1;text-align:center;white-space:nowrap;transform:rotate(-2deg)}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-foot{padding:12px 3px 0;gap:8px;text-align:left;font-family:'Coming Soon','Comic Sans MS',cursive;font-size:.88rem;font-weight:700;line-height:1.32}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-heart{font-size:1.45rem;line-height:1}
@media(max-width:650px){
.hh-family-public-petpic .hhp-home .hhp-petpic-section{justify-content:center;padding:8px 14px 39px}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-card{max-width:min(100%,290px)}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-size--medium{max-width:min(100%,335px)}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-polaroid{padding:10px 10px 8px}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-heading{font-size:1.04rem}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-date{font-size:.68rem}
}
.hh-family-public-petpic .hhp-home-story-pet-row > .hhp-petpic-section{
    width:100%;
    min-width:0;
    margin:0;
    padding:2px 10px 12px;
    align-self:center;
    scroll-margin-top:30px;
}
.hh-family-public-petpic .hhp-home-story-pet-row .hhp-petpic-section .hhp-petpic-card,
.hh-family-public-petpic .hhp-home-story-pet-row .hhp-petpic-section .hhp-petpic-size--medium{
    width:100%;
    max-width:285px;
}
@media(max-width:830px){
.hh-family-public-petpic .hhp-home-story-pet-row > .hhp-petpic-section{width:100%;justify-content:center;padding:3px 10px 30px}
}
@media (min-width:831px){
.hh-family-public-petpic .hhp-home-story-pet-row > .hhp-petpic-section{
    align-self:end; justify-content:center;
    padding:0 1px 27px;
    margin:0;
  }
.hh-family-public-petpic .hhp-home-story-pet-row .hhp-petpic-section .hhp-petpic-card,
.hh-family-public-petpic .hhp-home-story-pet-row .hhp-petpic-section .hhp-petpic-size--medium{
    max-width:235px;
  }
}
@media (min-width:831px) and (max-width:1030px){
.hh-family-public-petpic .hhp-home-story-pet-row .hhp-petpic-section .hhp-petpic-card,
.hh-family-public-petpic .hhp-home-story-pet-row .hhp-petpic-section .hhp-petpic-size--medium{max-width:205px}
}
.hh-family-public-petpic .hhp-home .hhp-petpic-section .hhp-petpic-heading{transform:translateY(-25px)}
.hh-family-public-petpic .hhp-home .hhp-petpic-section .hhp-petpic-polaroid{position:relative;overflow:visible}
.hh-family-public-petpic .hhp-home .hhp-petpic-section .hhp-petpic-date{
  position:absolute!important;inset:-2px -22px auto auto!important;
  margin:0!important;transform:rotate(-2deg)!important;
}
@media (max-width:830px){
.hh-family-public-petpic .hhp-home .hhp-petpic-section .hhp-petpic-heading{
    transform:translateY(-13px);
  }
}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open{
  display:block;
  width:100%;
  appearance:none;
  -webkit-appearance:none;
  padding:0;
  margin:0;
  border:1px solid #ddd;
  border-radius:5px;
  background:#edf8fd;
  color:inherit;
  cursor:zoom-in;
  font:inherit;
  text-align:inherit;
  touch-action:manipulation;
}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open:focus-visible{
  outline:3px solid #1878ae;
  outline-offset:5px;
}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open img{
  transition:transform .24s ease,filter .24s ease;
}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-hover-hint{
  position:absolute;
  z-index:2;
  right:9px;
  bottom:9px;
  padding:7px 11px;
  border-radius:999px;
  color:#29242e;
  background:rgba(255,255,255,.96);
  border:1.5px solid #29242e;
  box-shadow:2px 3px 0 rgba(41,36,46,.25);
  font-family:'Quicksand',Arial,sans-serif;
  font-size:.76rem;
  font-weight:800;
  white-space:nowrap;
  line-height:1.2;
  opacity:0;
  transform:translateY(7px);
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease;
}
@media(hover:hover){
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-polaroid{
    transition:translate .24s ease,box-shadow .24s ease;
  }
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-polaroid:hover{translate:0 -4px}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open:hover img{
    transform:scale(calc(var(--petpic-zoom,1) * 1.055));
    filter:brightness(1.04);
  }
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open:hover .hhp-petpic-hover-hint{opacity:1;transform:none}
}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open:focus-visible .hhp-petpic-hover-hint{opacity:1;transform:none}
.hh-family-petpic-lightbox[hidden]{display:none!important}
.hh-family-petpic-lightbox{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(16px,4vw,44px);
  background:rgba(26,22,30,.86);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-dialog{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  max-width:min(94vw,1050px);
  max-height:calc(100dvh - 40px);
  min-width:0;
  gap:11px;
}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-photo{
  display:block;
  max-width:100%;
  max-height:calc(100dvh - 115px);
  width:auto;
  height:auto;
  object-fit:contain;
  border:clamp(5px,1vw,10px) solid #fff;
  border-radius:9px;
  background:#fff;
  box-shadow:0 12px 45px rgba(0,0,0,.25);
}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-caption{
  max-width:min(94vw,780px);
  text-align:center;
  font-family:'Coming Soon','Quicksand',sans-serif;
  font-size:clamp(.9rem,2vw,1.15rem);
  line-height:1.4;
  color:white;
}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-close{
  position:absolute;
  z-index:1;
  right:-12px;
  top:-12px;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:2px solid #29242e;
  border-radius:50%;
  background:#fff0a4;
  box-shadow:2px 3px 0 #ff8cba;
  color:#29242e;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-close:focus-visible{outline:3px solid #90ecff;outline-offset:3px}
@media(max-width:600px){
.hh-family-petpic-lightbox{padding:14px}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-dialog{max-width:94vw}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-photo{max-height:calc(100dvh - 92px)}
.hh-family-petpic-lightbox .hh-family-petpic-lightbox-close{right:-8px;top:-8px}
}
@media(prefers-reduced-motion:reduce){
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-open img,
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-hover-hint,
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-polaroid{transition:none!important}
}
@media(min-width:831px){
.hh-family-public-petpic .hhp-home-story-pet-row > .hhp-petpic-section{
    align-self:center;
    padding:0 1px 0;
  }
}
@media(max-width:830px){
.hh-family-public-petpic .hhp-home-story-pet-row > .hhp-petpic-section{padding:2px 10px 30px}
}
/* Override only the family heading font, never the public page. */
.hh-fresh-body :is(.hh-fresh-main,.hh-site-content) .hh-family-public-petpic .hhp-petpic-heading{font-family:'DynaPuff','Quicksand',sans-serif!important}
.hh-family-petpic-lightbox,.hh-family-petpic-lightbox *{box-sizing:border-box}
body.hh-family-petpic-open{overflow:hidden}

/* Shared public Polaroid, with a little more room on Family Home and Pets (#620/#627). */
.hh-family-public-petpic .hhp-home-story-pet-row{max-width:280px!important}
.hh-family-public-petpic .hhp-home .hhp-petpic-section{padding:8px 16px 28px!important}
.hh-family-public-petpic .hhp-petpic-section .hhp-petpic-card{max-width:100%;min-width:0}
@media(max-width:830px){.hh-family-public-petpic .hhp-home-story-pet-row{max-width:340px!important}}
