/* Envestus Capital — custom layer on top of Tailwind CDN */

:root { --navy: #0E1330; --accent: #C6A45C; }

html, body { -webkit-font-smoothing: antialiased; }

/* Reveal-on-scroll */
.reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1); }
.reveal.is-visible { opacity: 1; transform: none; }
.reveal-delay-1 { transition-delay: .08s; }
.reveal-delay-2 { transition-delay: .16s; }
.reveal-delay-3 { transition-delay: .24s; }

/* Hero overlay helper */
.hero-overlay { background: linear-gradient(180deg, rgba(11,14,34,.55) 0%, rgba(11,14,34,.35) 35%, rgba(11,14,34,.78) 100%); }
.section-overlay { background: linear-gradient(90deg, rgba(11,14,34,.92) 0%, rgba(11,14,34,.65) 60%, rgba(11,14,34,.25) 100%); }

/* Subtle Ken-Burns on hero image */
@keyframes kenburns { from { transform: scale(1.03); } to { transform: scale(1.12); } }
.kenburns { animation: kenburns 18s ease-out forwards; }

/* Accordion (sectors) */
.acc-panel { max-height: 0; overflow: hidden; transition: max-height .45s cubic-bezier(.16,1,.3,1); }
.acc-item.open .acc-panel { max-height: 420px; }
.acc-item.open .acc-icon { transform: rotate(45deg); }
.acc-icon { transition: transform .3s ease; }

/* Eyebrow / kicker */
.kicker { letter-spacing: .22em; text-transform: uppercase; font-weight: 600; font-size: .8rem; }

/* Card hover lift */
.lift { transition: transform .4s cubic-bezier(.16,1,.3,1), box-shadow .4s ease; }
.lift:hover { transform: translateY(-6px); box-shadow: 0 24px 50px -20px rgba(14,19,48,.35); }

/* Image zoom inside fixed frame */
.zoom-frame { overflow: hidden; }
.zoom-frame img { transition: transform .7s cubic-bezier(.16,1,.3,1); }
.zoom-frame:hover img { transform: scale(1.06); }

/* Header shadow when scrolled */
#siteHeader.scrolled { box-shadow: 0 10px 30px -18px rgba(14,19,48,.4); }

/* Fancy underline links in prose */
.link-accent { background-image: linear-gradient(currentColor, currentColor); background-size: 0% 1.5px; background-repeat: no-repeat; background-position: 0 100%; transition: background-size .35s ease; }
.link-accent:hover { background-size: 100% 1.5px; }

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1 !important; transform: none !important; }
  .kenburns { animation: none; }
}
