/* Content slots only: the landing uses the home page's grids, sections and typography. */
[data-landing] .landing-hero-visual { margin: 0; }
[data-landing] .landing-hero-visual img {
  display: block;
  width: 100%;
  height: clamp(14rem, 22vw, 19rem);
  object-fit: cover;
  border-radius: .8rem;
}
[data-landing] .landing-hero-visual figcaption {
  margin-top: .85rem;
  font-size: .75rem;
  line-height: 1.5;
  color: #c5d4df;
}
[data-landing] .hero-code-card__domain { font-family: inherit; font-size: .78rem; }
[data-landing] .testimonial-stars svg { fill: none; }
[data-landing] .vibe-progress__track { opacity: .3; }
[data-landing] .growth-system__title-accent { white-space: normal; }
[data-landing] .hero-rating {
  grid-template-columns: 1rem minmax(0, 1fr);
  align-items: start;
  column-gap: .55rem;
  min-width: 0;
}
[data-landing] .hero-rating .hero-stars {
  grid-row: 1 / span 2;
  margin-top: .1rem;
}
[data-landing] .hero-rating > span {
  grid-column: 2;
  grid-row: 2;
  line-height: 1.4;
}
@media (prefers-reduced-motion: reduce) {
  [data-landing] .reveal { animation: none !important; transition: none !important; opacity: 1 !important; transform: none !important; }
}

[data-landing] .niche-card__icon img { width: 100%; height: 100%; object-fit: contain; }

/* Real desktop and mobile views share the homepage's existing browser card. */
[data-landing] .landing-site-preview {
  position: relative;
  padding-bottom: 2.75rem;
}
[data-landing] .landing-site-preview .landing-site-preview__desktop {
  height: auto;
  aspect-ratio: 8 / 5;
  border: 1px solid rgba(255, 255, 255, .15);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
}
[data-landing] .landing-site-preview__phone {
  position: absolute;
  right: -.15rem;
  bottom: 0;
  width: 29%;
  padding: 5px;
  border: 1px solid #55636e;
  border-radius: 1.2rem;
  background: #14212b;
  box-shadow: -12px 16px 28px rgba(0, 0, 0, .35);
  transform: rotate(4deg);
}
[data-landing] .landing-site-preview__phone img {
  height: auto;
  width: 100%;
  aspect-ratio: 1 / 2;
  border-radius: .85rem;
}
[data-landing] .landing-site-preview__speaker {
  position: absolute;
  z-index: 1;
  top: 7px;
  left: 35%;
  width: 30%;
  height: 4px;
  border-radius: 0 0 6px 6px;
  background: #14212b;
}
[data-landing] .landing-hero-visual figcaption a {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: .2em;
  text-decoration-color: rgba(197, 212, 223, .4);
}
[data-landing] .landing-hero-visual figcaption a:hover { color: #fff; }
[data-landing] .landing-hero-visual figcaption a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
