/* Camera imagery is illustrative; actual streams belong in the authenticated app. */
.farm-camera-board { margin-top: 28px; border: 1px solid #ffffff18; border-radius: 16px; overflow: hidden; background: #0b0f15; }
.farm-camera-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 14px 16px; border-bottom: 1px solid #ffffff12; font-size: 12px; color: #d4d4d8; }
.farm-camera-toolbar > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.farm-camera-toolbar > span:last-child { color: #93c5fd; font-size: 10px; }
.farm-camera-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 8px; }
.farm-camera { position: relative; margin: 0; overflow: hidden; border-radius: 10px; aspect-ratio: 3/2; background: #1c2631; }
.farm-camera img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s cubic-bezier(.2,.8,.2,1), filter .6s; }
.farm-camera figcaption { position: absolute; inset: auto 0 0; padding: 26px 12px 10px; display: flex; align-items: center; justify-content: space-between; gap: 6px; background: linear-gradient(transparent,#000c); color: white; font-size: 12px; }
.farm-camera figcaption > span:last-child { font-family: ui-monospace, monospace; font-size: 9px; color: #dbeafe; }
.farm-camera-scan { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 48%, #93c5fd70 50%, transparent 52%); animation: farm-camera-scan 7s ease-in-out infinite; animation-play-state: paused; opacity: 0; }
.farm-camera:nth-child(2) .farm-camera-scan { animation-delay: -1.75s; }
.farm-camera:nth-child(3) .farm-camera-scan { animation-delay: -3.5s; }
.farm-camera:nth-child(4) .farm-camera-scan { animation-delay: -5.25s; }
.farm-camera-board.is-visible .farm-camera-scan { animation-play-state: running; }
.farm-preview-note { margin-top: 12px; font-size: 11px; line-height: 1.6; color: #a3a3a3; }
.farm-camera-compact .farm-camera figcaption { font-size: 10px; padding-inline: 8px; }
.farm-camera-compact .farm-camera figcaption > span:last-child { display: none; }
.farm-evidence .ff-shot img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; }
#ask-your-cameras .ff-chat-te .ff-thumb span { background: url('/assets/rooster-camera-night.webp') center / cover; }
#solutions #s-deploy > div { padding: 28px; background: linear-gradient(145deg,#111822,#080a0e); }
#s-deploy h3 { max-width: 520px; font-size: clamp(24px,3vw,32px); }
#s-deploy p.text-lg { font-size: 15px; line-height: 1.7; max-width: 560px; }
#s-deploy .w-12 { margin-bottom: 20px; }
#features .soft-card { border-color: #ffffff16; transition: border-color .3s, background .3s; }
#features .soft-card:hover { border-color: #93c5fd55; background: #10151d; }
#live-video { background: linear-gradient(145deg,#141c28,#090b0f); border-color: #93c5fd30; }
@media (hover:hover) { .farm-camera:hover img { transform: scale(1.06); filter: brightness(1.08); } }
@keyframes farm-camera-scan { 0%,100% { transform: translateY(-65%); opacity: 0; } 15%,75% { opacity: .6; } 90% { transform: translateY(65%); opacity: 0; } }
@media (max-width: 600px) { #solutions #s-deploy > div { padding: 20px; } .farm-camera-grid { gap: 6px; padding: 6px; } .farm-camera figcaption { font-size: 10px; padding-inline: 8px; } .farm-camera figcaption > span:last-child { display: none; } .farm-camera-toolbar { padding: 12px; } }
@media (prefers-reduced-motion:reduce) { .farm-camera img { transition: none; } .farm-camera-scan { display: none; } .farm-camera:hover img { transform: none; } }

/* Section rhythm and product panel geometry, scoped to the features page. */
main > section { scroll-margin-top: 96px; }
#home { padding-bottom: 72px; }
#features, #solutions, #workflow { padding-top: 96px; padding-bottom: 96px; }
#company { padding-top: 64px; padding-bottom: 64px; }
#pricing { padding-top: 104px; padding-bottom: 104px; }
#spotlight-controls { justify-content: flex-start; align-self: start; }
.product-tabs { display: grid; gap: 8px; }
.spotlight-display { display: grid; }
.spotlight-display .spotlight-panel { grid-area: 1 / 1; position: relative; inset: auto; min-width: 0; }
.spotlight-tab:focus-visible, .spotlight-panel:focus-visible { outline: 2px solid #93c5fd; outline-offset: 4px; }
#pricing .reveal-clip { clip-path: none; }
@media (min-width: 1024px) { #spotlight-controls { position: sticky; top: 112px; } }
@media (max-width: 1023px) {
  #home { padding-bottom: 48px; }
  #features, #solutions, #workflow { padding-top: 64px; padding-bottom: 64px; }
  #company { padding-top: 48px; padding-bottom: 48px; }
  #pricing { padding-top: 72px; padding-bottom: 72px; }
  #solutions > .grid { row-gap: 28px; }
  #spotlight-controls > .mb-8 { margin-bottom: 16px; }
  .product-tabs { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
  .product-tabs .spotlight-tab { padding: 14px 8px; justify-content: center; text-align: center; min-width: 0; }
  .product-tabs .spotlight-tab span.block, .product-tabs .spotlight-tab > iconify-icon { display: none; }
  .product-tabs .spotlight-tab .text-lg { font-size: 13px; line-height: 1.35; }
  .spotlight-display { min-height: 0; }
}
@media (max-width: 600px) {
  #features .soft-card { padding: 24px; }
  #site-intelligence .ff-module { padding-block: 40px; gap: 24px; }
  #site-intelligence .ff-panel { padding: 20px; }
  #home h1 { font-size: clamp(36px, 10vw, 48px); line-height: 1.08; }
}
@media (prefers-reduced-motion:reduce) {
  .reveal-clip { clip-path: none !important; }
  .spotlight-panel.active { transform: none !important; opacity: 1 !important; }
}
