body { margin: 0; background: oklch(0.13 0.006 260); }
* { box-sizing: border-box; }
::selection { background: #a9d4ff; color: #0a1420; }
@keyframes word-appear { 0% { opacity:0; transform:translateY(22px) scale(.97); filter:blur(6px); } 60% { opacity:.85; filter:blur(1px); } 100% { opacity:1; transform:translateY(0) scale(1); filter:blur(0); } }
@keyframes grow-h { from { width:0; } to { width:100%; } }
@keyframes grow-v { from { height:0; } to { height:100%; } }
@keyframes pulse-dot { 0%,100% { opacity:.15; transform:translate(0,0) scale(1); } 30% { opacity:.85; transform:translate(3px,-6px) scale(1.6); } 60% { opacity:.35; transform:translate(-4px,3px) scale(1.1); } }
@keyframes float-particle { 0%,100% { transform:translate(0,0); opacity:.15; } 25% { transform:translate(5px,-10px); opacity:.55; } 50% { transform:translate(-3px,-5px); opacity:.35; } 75% { transform:translate(7px,-15px); opacity:.7; } }
@keyframes ripple-fade { from { transform:translate(-50%,-50%) scale(0); opacity:.5; } to { transform:translate(-50%,-50%) scale(22); opacity:0; } }
@keyframes scroll-x { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@keyframes hero-float { 0%,100% { transform:translateY(0) rotate(0deg); } 50% { transform:translateY(-16px) rotate(-1deg); } }
@keyframes shimmer { from { background-position:0% center; } to { background-position:200% center; } }
@keyframes logo-sheen { 0%,100% { filter:drop-shadow(0 0 0 transparent) brightness(1); } 50% { filter:drop-shadow(0 0 14px #3b6bc0) brightness(1.25); } }
a:hover { color: #3b6bc0; }
.grid-aside { grid-template-columns: 0.7fr 1.3fr; }
.grid-reel { grid-template-columns: 1.4fr 1fr; }
.grid-cta { grid-template-columns: 1.3fr 0.7fr; align-items: end; }
.grid-pain { grid-template-columns: repeat(2,1fr); }
.reel-main-frame { height: 100%; }
.nav-wa-btn { padding: 11px 20px; border-radius: 2px; }
.nav-wa-icon { display: none; }
@media (max-width: 860px) {
  .grid-aside, .grid-reel, .grid-cta, .grid-pain { grid-template-columns: 1fr; }
  .grid-cta { align-items: start; }
  .reel-main-frame { height: auto; aspect-ratio: 4/3; }
  [data-parallax] { transform: none !important; }
  [data-num-col] { display: none !important; }
  .nav-wa-btn { width: 40px; height: 40px; padding: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
  .nav-wa-label { display: none; }
  .nav-wa-icon { display: block; }
}
