/*
Theme Name: Virian
Theme URI: https://virian.ai
Author: Virian
Description: Investor landing page for Virian — a gentle AI companion that helps older adults live independently, longer. Recreated pixel-for-pixel from the Claude Design handoff (Virian.dc.html).
Version: 1.1.0
License: GNU General Public License v2 or later
Text Domain: virian
*/

* { box-sizing: border-box; }
body { margin: 0; }

/* ── Keyframes ─────────────────────────────────────────────────────────────── */
@keyframes virFloat  { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-12px);} }
@keyframes virPulse  { 0%,100%{opacity:.5;transform:scale(1);} 50%{opacity:1;transform:scale(1.08);} }
@keyframes virBlob   { 0%{transform:translate(-50%,-50%) scale(1) rotate(0deg);} 33%{transform:translate(-48%,-53%) scale(1.12) rotate(8deg);} 66%{transform:translate(-53%,-47%) scale(.94) rotate(-6deg);} 100%{transform:translate(-50%,-50%) scale(1) rotate(0deg);} }
@keyframes virBlob2  { 0%{transform:translate(0,0) scale(1);} 50%{transform:translate(30px,-26px) scale(1.18);} 100%{transform:translate(0,0) scale(1);} }
@keyframes virRing   { 0%{transform:rotate(0deg);} 100%{transform:rotate(360deg);} }
@keyframes virSheen  { 0%{background-position:-180% 0;} 100%{background-position:180% 0;} }
@keyframes virBadge  { 0%,100%{box-shadow:0 0 0 0 rgba(110,139,106,.5);} 50%{box-shadow:0 0 0 7px rgba(110,139,106,0);} }
@keyframes virGrad   { 0%{background-position:0% 50%;} 50%{background-position:100% 50%;} 100%{background-position:0% 50%;} }
@keyframes virWave   { 0%,100%{transform:scaleY(.4);} 50%{transform:scaleY(1);} }

/* ── Scroll-reveal ─────────────────────────────────────────────────────────── */
.vir-reveal { transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
.vir-armed  { opacity: 0; transform: translateY(30px); }
.vir-armed.vir-in { opacity: 1; transform: none; }

/* ── Hover lift (cards) ────────────────────────────────────────────────────── */
.vir-lift { transition: transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease; }
.vir-lift:hover { transform: translateY(-9px); box-shadow: 0 22px 48px -18px rgba(60,46,32,.42); }

/* ── CTA buttons ───────────────────────────────────────────────────────────── */
.vir-cta { transition: transform .3s cubic-bezier(.2,.7,.2,1), box-shadow .3s ease, filter .3s ease; }
.vir-cta:hover { transform: translateY(-3px) scale(1.02); filter: brightness(1.05); }

/* ── Nav links animated underline ──────────────────────────────────────────── */
.vir-nav-link { position: relative; transition: color .25s ease; }
.vir-nav-link::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -5px; height: 2px; background: #C2674A; border-radius: 2px; transition: right .3s cubic-bezier(.2,.7,.2,1); }
.vir-nav-link:hover { color: #C2674A; }
.vir-nav-link:hover::after { right: 0; }

/* ── Accessibility: respect reduced-motion ─────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .vir-armed { opacity: 1 !important; transform: none !important; }
  * { animation: none !important; }
}

/* ── Responsive breakpoints ────────────────────────────────────────────────── */
@media (max-width: 880px) {
  .vir-hero,
  .vir-problem-grid,
  .vir-product-grid,
  .vir-market-grid { grid-template-columns: 1fr !important; }
  .vir-features  { grid-template-columns: 1fr !important; }
  .vir-stat-grid { grid-template-columns: 1fr !important; }
  .vir-team      { grid-template-columns: repeat(2, 1fr) !important; }
  .vir-nav-links { display: none !important; }
  h1 { font-size: 42px !important; }
  h2 { font-size: 34px !important; }
}
@media (max-width: 520px) {
  .vir-team       { grid-template-columns: 1fr !important; }
  .vir-hero-stats { flex-wrap: wrap; gap: 24px !important; }
}

::selection { background: #E7C9BC; }
