/* A quiet green search demonstration; all product data is server-rendered. */
.fit-hero__discovery { max-width: 880px; margin-bottom: 16px; }
.fit-hero__discovery .fit-hero__search { margin-bottom: 0; }
.fit-hero__search .fit-hero-search-field { position: relative; min-width: 0; }
.fit-hero__search .fit-hero-search-field input { min-height: 56px; padding-left: 48px; background: #fff; color: var(--fit-ink); }
.fit-hero__discovery .fit-hero__search > button { min-height: 56px; padding-inline: 24px; }
.fit-search-lens { position: absolute; z-index: 1; left: 16px; top: 18px; width: 20px; height: 20px; color: #55715e; pointer-events: none; }
.fit-search-beam { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; overflow: visible; opacity: 0; pointer-events: none; }
.fit-search-beam rect { width: calc(100% - 2px); height: calc(100% - 2px); stroke: #c4e493; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 16 84; filter: drop-shadow(0 0 3px #c4e49360); }
.fit-search-typing { position: absolute; z-index: 1; inset: 0 14px 0 48px; display: flex; align-items: center; gap: .35em; overflow: hidden; color: #55715e; white-space: nowrap; pointer-events: none; }
.fit-search-typing [data-fit-typing-text] { overflow: hidden; text-overflow: ellipsis; color: var(--fit-ink); }
.fit-search-caret { flex: 0 0 2px; height: 1em; background: #55715e; }
.fit-search-demo { margin-top: 4px; }
.fit-search-demo__heading { display: flex; align-items: center; justify-content: space-between; min-height: 44px; color: #e5efe7; font-size: .75rem; }
.fit-search-demo__heading > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fit-search-demo__heading strong { font-weight: 600; }
.fit-search-demo__control { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border: 0; border-radius: 8px; background: transparent; color: #e2f0ba; cursor: pointer; }
.fit-search-demo__control:hover { background: #ffffff12; }
.fit-search-play-icon { display: none; }
[data-playing="false"] .fit-search-play-icon { display: block; }
[data-playing="false"] .fit-search-pause-icon { display: none; }
.fit-search-demo__results { position: relative; height: 112px; }
.fit-search-demo__card { position: absolute; inset: 0; display: grid; grid-template-columns: 88px minmax(0, 1fr) auto; align-items: center; gap: 16px; box-sizing: border-box; padding: 12px 16px 12px 12px; border: 1px solid #dce4da; border-radius: 10px; background: #fafbf8; color: var(--fit-ink); text-decoration: none; }
.fit-search-demo__card:hover { background: #fff; color: var(--fit-ink); }
.fit-search-demo__media { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; height: 88px; }
.fit-search-demo__media picture { display: block; width: 72px; height: 72px; }
.fit-search-demo__media img { width: 100%; height: 100%; object-fit: contain; }
.fit-search-demo__media .fit-image-attribution { max-width: 88px; color: var(--fit-ink-muted); opacity: 1; font-size: .625rem; line-height: 1.2; text-align: center; }
.fit-search-demo__media :is(.fit-card-image--placeholder, .fit-deal-thumb--placeholder) { width: 72px; height: 72px; min-height: 0; font-size: .75rem; background: transparent; }
.fit-search-demo__product { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.fit-search-demo__product strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: .9375rem; line-height: 1.35; }
.fit-search-demo__product > span { color: var(--fit-ink-muted); font-size: .75rem; line-height: 1.4; }
.fit-search-demo__price { color: var(--fit-color-price); font-size: 1.375rem; font-weight: 750; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.fit-search-demo__price small { font-size: .6875rem; font-weight: 400; }
.fit-search-demo__price small:last-child { display: block; color: var(--fit-ink-muted); }
.fit-hero__discovery [hidden] { display: none !important; }
.is-motion-running .fit-search-beam { opacity: 1; }
.is-motion-running .fit-search-beam rect { animation: fit-search-orbit 5s linear infinite; }
.is-motion-running .fit-search-lens { animation: fit-search-look 4s ease-in-out infinite; }
.is-typing #fit-hero-q::placeholder { color: transparent; }
.is-revealing .fit-search-demo__card:not([hidden]) { animation: fit-search-reveal .45s cubic-bezier(.2,.7,.2,1) both; }
.fit-hero-search-field:focus-within .fit-search-typing { display: none; }
.fit-hero-search-field:focus-within #fit-hero-q::placeholder { color: #55715e; }
.fit-hero-search-field:focus-within .fit-search-beam { opacity: 0; }
@keyframes fit-search-orbit { to { stroke-dashoffset: -100; } }
@keyframes fit-search-look { 0%, 15%, 85%, 100% { transform: rotate(0); } 35% { transform: translate(2px, -1px) rotate(-12deg); } 60% { transform: translate(-1px, 1px) rotate(8deg); } }
@keyframes fit-search-reveal { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 600px) {
    .fit-hero__discovery .fit-hero__search { gap: 6px; }
    .fit-hero__discovery .fit-hero__search > button { padding-inline: 12px; }
    .fit-search-demo__results { height: 132px; }
    .fit-search-demo__card { grid-template-columns: 64px minmax(0, 1fr); gap: 4px 12px; padding: 12px; }
    .fit-search-demo__media { grid-row: 1 / span 2; height: 100%; }
    .fit-search-demo__media picture { width: 56px; height: 64px; }
    .fit-search-demo__media .fit-image-attribution { max-width: 64px; }
    .fit-search-demo__media :is(.fit-card-image--placeholder, .fit-deal-thumb--placeholder) { width: 56px; height: 64px; }
    .fit-search-demo__product { gap: 4px; }
    .fit-search-demo__product strong { font-size: .8125rem; }
    .fit-search-demo__product > span { font-size: .6875rem; }
    .fit-search-demo__price { grid-column: 2; font-size: 1.125rem; text-align: left; }
    .fit-search-demo__price small:last-child { display: inline; margin-left: 6px; }
}
@media (prefers-reduced-motion: reduce) {
    .fit-hero__discovery .fit-search-beam, .fit-hero__discovery .fit-search-typing { display: none; }
    .fit-hero__discovery .fit-search-lens, .fit-hero__discovery .fit-search-demo__card { animation: none; }
    .fit-hero__discovery #fit-hero-q::placeholder { color: #55715e; }
}
