/* features.html — feature sections and scroll-in animation */
.fp-feature{padding:4.5rem 0;background:var(--color-surface);border-top:1px solid var(--color-border);}
.fp-feature:first-of-type{padding-top:5rem;}
.fp-feature--alt{background:var(--color-bg);}
.fp-feature-inner{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;max-width:1100px;margin:0 auto;padding:0 1.5rem;}
.fp-feature--alt .fp-feature-inner{direction:rtl;}
.fp-feature--alt .fp-feature-inner > *{direction:ltr;}
.fp-feature-visual{display:flex;align-items:center;justify-content:center;min-height:280px;}
.fp-feature-icon-wrap{display:flex;align-items:center;justify-content:center;width:12rem;height:12rem;border-radius:2rem;background:var(--color-accent-soft);color:var(--color-accent);}
.fp-feature-icon-wrap svg{width:5rem;height:5rem;}
.fp-feature-img{width:100%;max-width:100%;height:auto;min-height:240px;border-radius:var(--radius-lg);background:var(--color-border);object-fit:cover;}
.fp-feature-placeholder{width:100%;min-height:240px;border-radius:var(--radius-lg);background:var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:0.875rem;}
.fp-feature-content{padding:0 0.5rem;}
.fp-feature-title{font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700;color:var(--color-text);margin:0 0 1rem;}
.fp-feature-lead{font-size:1.0625rem;color:var(--color-text-muted);line-height:1.65;margin:0 0 1.5rem;}
.fp-feature-list{list-style:none;margin:0 0 1.5rem;padding:0;}
.fp-feature-list li{position:relative;padding-left:1.5rem;margin-bottom:0.6rem;font-size:1rem;color:var(--color-text);}
.fp-feature-list li::before{content:"";position:absolute;left:0;top:0.5em;width:6px;height:6px;border-radius:50%;background:var(--color-accent);}
.fp-feature-cta{display:inline-block;font-size:1rem;font-weight:600;color:var(--color-accent);}
.fp-feature-cta:hover{color:var(--color-accent-hover);}
.fp-animate{opacity:0;transform:translateY(28px);transition:opacity 0.6s ease-out, transform 0.6s ease-out;}
.fp-animate.is-visible{opacity:1;transform:translateY(0);}
@media (max-width:768px){
  .fp-feature-inner,.fp-feature--alt .fp-feature-inner{grid-template-columns:1fr;gap:2rem;direction:ltr;}
  .fp-feature-content{text-align:center;}
}
