/* Home sections reveal the same continuous page canvas. */
.page-home :is(.trust-strip,.hbx-section,.hb-unbox-section,.hb-birthday-section,.hb-how,.hb-snack,.home-info,.hb-family,.cta-final) {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:transparent;
}
.page-home :is(.trust-strip,.hbx-section,.hb-unbox-section,.hb-birthday-section,.hb-how,.hb-snack,.home-info,.hb-family,.cta-final)::before {content:none}
.page-home :is(.trust-strip,.hbx-section,.hb-unbox-section,.hb-birthday-section,.hb-how,.hb-snack,.home-info,.hb-family,.cta-final)>.wrap,
.page-home .hb-moments-wrap {position:relative;z-index:1}
.page-home .ticker {border:0;padding-block:14px}
.page-home .trust-strip {border-bottom:0}
/* The intro's colours dissolve into the first reading surface. */
.page-home .hero-splashes {
  -webkit-mask-image:linear-gradient(180deg,#000 0 76%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0 76%,transparent 100%);
}
.page-home .hero-splashes::after {content:none}
.page-home footer::before {content:none}
/* Adjacent sections share the breathing space instead of each adding a large gap. */
.page-home .hbx-section {padding:64px 0 56px}
.page-home .hb-unbox-section {padding:56px 0 52px}
.page-home .hb-birthday-section {padding:52px 0 56px}
.page-home .hb-how {padding:64px 0 52px}
.page-home .hb-snack {padding:28px 0 56px}
.page-home .home-info {padding:48px 0 52px}
.page-home .hb-family {padding:64px 0}
.page-home .cta-final {padding:44px 0}
.page-home .home-info>.wrap,
.page-home .hb-family>.wrap {width:min(100% - 48px,1240px)}
.page-home .cta-final>.wrap {padding-top:8px}
.page-home .hb-moments-finish {
  max-width:760px;
  margin:36px auto 0;
  padding:23px 26px;
  border:1px dashed #d3c2a4;
  border-radius:22px;
  background:#fff8e8e6;
}
@media(max-width:820px) {
  .page-home .hb-birthday-section>.wrap,
  .page-home .home-info>.wrap,
  .page-home .hb-family>.wrap {width:calc(100% - 40px)}
}
@media(max-width:760px) {
  .page-home .hbx-section {padding:48px 0 38px}
  .page-home .hb-unbox-section {padding:34px 0}
  .page-home .hb-moments {padding:54px 0 50px}
  .page-home .hb-birthday-section {padding:34px 0 38px}
  .page-home .hb-how {padding:44px 0 38px}
  .page-home .hb-snack {padding:24px 0 38px}
  .page-home .home-info {padding:34px 0 36px}
  .page-home .hb-family {padding:38px 0}
  .page-home .cta-final {padding:30px 0}
  .page-home .hb-moments-finish {padding:20px 18px;border-radius:18px;margin-top:27px}
}
@media(max-width:540px) {
  .page-home .hb-birthday-section>.wrap,
  .page-home .home-info>.wrap,
  .page-home .hb-family>.wrap {width:calc(100% - 32px)}
}
/* A tiny eager nod, only while the treat-catcher is on screen. */
.page-home .hb-snack-art img {height:100%;animation:hb-snack-eager-dog 5.2s ease-in-out infinite;animation-play-state:paused;transform-origin:center bottom}
.page-home .hb-snack-panel[data-hb-running="1"] .hb-snack-art img {animation-play-state:running}
@keyframes hb-snack-eager-dog {0%,75%,100%{translate:0 0;rotate:0deg}32%{translate:0 -4px;rotate:-.7deg}46%{translate:0 -2px;rotate:.3deg}}
@media(prefers-reduced-motion:reduce) {.page-home .hb-snack-art img{animation:none}}
@media(forced-colors:active) {
  .page-home #main,
  .page-home .hb-home-flow,
  .page-home :is(.ticker,.trust-strip,.hbx-section,.hb-unbox-section,.hb-birthday-section,.hb-how,.hb-snack,.home-info,.hb-family,.cta-final) {
    background:Canvas;
    color:CanvasText;
  }
  .page-home :is(.hbx-section,.hb-unbox-section,.hb-birthday-section,.hb-how,.hb-snack,.home-info,.hb-family,.cta-final)::before {display:none}
  .page-home .hero-splashes {-webkit-mask-image:none;mask-image:none}
}
