/* Homepage layout, partner strip and section entrances. */
body.home-current.pure-black-home .homepage-hero.study-impression {
  height: auto !important;
  min-height: calc(100svh - var(--ticker-height)) !important;
}
body.home-current .home-ui-scene {
  padding: 16px 26px 116px 6px;
  perspective: 1400px;
}
body.home-current .home-ui-window {
  min-height: 0;
  transform: rotateY(-8deg) rotateX(3deg) rotateZ(-2deg) !important;
  transform-origin: 50% 60%;
  border-color: #fffaf4;
  box-shadow: 12px 25px 0 -13px #c7bbaa, 0 32px 65px #684a352b;
}
body.home-current .home-ui-phone {
  top: 28%;
  bottom: auto;
  right: 0;
  width: 22%;
  min-width: 72px;
  transform: rotate(7deg);
}
body.home-current .home-ui-status {
  inset: auto 2% 42px 2%;
  padding: 12px 16px;
  transform: rotate(-1deg);
  pointer-events: auto;
  background: linear-gradient(120deg, #fffdf7f5, #f0f3e9f5);
}
body.home-current .home-ui-status > span { background: #d9edc4; }
body.home-current .hero-dashboard-slide {
  opacity: 0;
  transform: translateX(6%) scale(.985);
  transition: opacity .55s ease, transform .72s cubic-bezier(.16,1,.3,1);
}
body.home-current .hero-dashboard-slide.is-before { transform: translateX(-6%) scale(.985); }
body.home-current .hero-dashboard-slide.is-active { opacity: 1; transform: none; }
body.home-current .hero-dashboard-tabs {
  right: 0;
  bottom: 0;
  align-items: center;
  gap: 3px;
  flex-wrap: wrap;
  min-height: 30px;
}
body.home-current .hero-dashboard-tabs button { min-height: 30px; padding: 4px 9px; font-size: 10px; }
body.home-current .hero-dashboard-tabs button:focus-visible,
body.home-current .home-ui-status:focus-visible { outline: 2px solid #171719; outline-offset: 3px; }

body.home-current .tools-scroller { background: #a5f252; color: #171719; }
body.home-current .tools-scroller-heading h2 span,
body.home-current .tools-scroller-group a,
body.home-current .tools-scroller-toggle { color: #171719; }
body.home-current .tools-scroller-group img,
body.home-current .tools-scroller-group a:is(:hover,:focus-visible) img { filter: brightness(0); }
body.home-current .tools-scroller-group a:is(:hover,:focus-visible) { background: #ffffff65; }
body.home-current .setup-claim[hidden] { display: none; }

@media (max-width:1100px) {
  body.home-current .homepage-hero .study-shell {
    grid-template-columns: 1fr;
    gap: 36px;
    width: calc(100% - 44px);
  }
  body.home-current .home-product-copy { max-width: 640px; }
  body.home-current .home-ui-scene { max-width: 660px; }
  body.home-current .homepage-hero .study-title { font-size: clamp(48px, 7.2vw, 72px); }
}
@media (max-width:600px) {
  body.home-current .home-ui-scene { padding: 12px 10px 119px 0; }
  body.home-current .home-ui-window { transform: rotateY(-6deg) rotateZ(-2deg) !important; }
  body.home-current .home-ui-phone { top: 24%; right: 0; width: 22%; min-width: 64px; }
  body.home-current .home-ui-status { inset: auto 0 42px; padding: 12px 14px; }
  body.home-current .hero-dashboard-tabs { gap: 2px; }
  body.home-current .hero-dashboard-tabs button { padding-inline: 7px; font-size: 10px; }
  body.home-current .homepage-hero .study-title { font-size: clamp(46px, 11.8vw, 66px); }
}

/* Each card enters when the card itself is visible, including the bottom rows. */
body.home-current #how-it-works .lm-how-card.home-enter-item,
body.home-current .lm-footer .lm-footer-card.home-enter-item {
  opacity: 1;
  transform: none;
  transition: opacity .6s ease, transform .75s cubic-bezier(.16,1,.3,1), box-shadow .3s ease, border-color .3s ease;
  transition-delay: 0s;
}
body.home-current.home-section-motion #how-it-works .lm-how-card.home-enter-item:not(.home-has-entered),
body.home-current.home-section-motion .lm-footer .lm-footer-card.home-enter-item:not(.home-has-entered) {
  opacity: 0;
  transform: translate3d(0,28px,0);
}
body.home-current #how-it-works .lm-how-card.home-enter-item::before,
body.home-current #how-it-works .lm-how-card.home-enter-item .lm-card-icon svg {
  animation: none;
  stroke-dashoffset: 0;
}
body.home-current.home-section-motion #how-it-works .lm-how-card.home-has-entered::before {
  animation: home-card-sheen 1.1s .15s cubic-bezier(.16,1,.3,1) both;
}
body.home-current.home-section-motion #how-it-works .lm-how-card.home-has-entered .lm-card-icon svg {
  stroke-dasharray: 80;
  animation: home-icon-draw 1s .15s cubic-bezier(.16,1,.3,1) both;
}
@keyframes home-card-sheen { from { transform: translateX(-115%); } to { transform: translateX(115%); } }
@keyframes home-icon-draw { from { stroke-dashoffset: 80; } to { stroke-dashoffset: 0; } }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  body.home-current #how-it-works .lm-how-card.home-has-entered:hover,
  body.home-current .lm-footer .lm-footer-card.home-has-entered:hover { transform: translateY(-6px); }
}
@media (prefers-reduced-motion:reduce) {
  body.home-current #how-it-works .lm-how-card.home-enter-item,
  body.home-current .lm-footer .lm-footer-card.home-enter-item { opacity: 1; transform: none; transition: none; }
  body.home-current #how-it-works .lm-how-card.home-enter-item::before,
  body.home-current #how-it-works .lm-how-card.home-enter-item .lm-card-icon svg { animation: none; stroke-dashoffset: 0; }
}
@media (prefers-reduced-motion:reduce) {
  body.home-current .home-ui-window { transform: none !important; }
  body.home-current .hero-dashboard-slide { transition: none; }
}
