/* HAIQ — shared site styles for index, blog, article pages */

*, *::before { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #000; overflow-x: hidden; }

/* ── Keyframes ── */
@keyframes haiqSpiral {
  0%   { transform: rotateX(60deg) rotateY(0deg) rotateZ(0deg); }
  100% { transform: rotateX(60deg) rotateY(0deg) rotateZ(360deg); }
}
@keyframes haiqPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50%      { transform: scale(1.4); opacity: 0.4; }
}
@keyframes haiqNodeFloat {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-5px); }
}
@keyframes haiqArrowBounce {
  0%, 100% { transform: translateY(0); opacity: 0.4; }
  50%      { transform: translateY(5px); opacity: 0.7; }
}
@keyframes haiqRobotFloat {
  0%, 100% { transform: translateY(0px); }
  50%      { transform: translateY(-14px); }
}
@keyframes haiqRobotPulseGlow {
  0%, 100% { opacity: 1; }
  50%      { opacity: 0.42; }
}
@keyframes haiqRobotIdleTilt {
  0%, 100% { transform: rotate(0deg); }
  30%      { transform: rotate(-1.5deg); }
  70%      { transform: rotate(1.5deg); }
}
@keyframes haiqRobotParticleDrift {
  0%   { transform: translateY(0);     opacity: 0;    }
  12%  { opacity: 0.75; }
  88%  { opacity: 0.45; }
  100% { transform: translateY(-52px); opacity: 0;    }
}
@keyframes haiqRobotStatusScan {
  0%   { transform: translateX(-110%); }
  100% { transform: translateX(210%); }
}
@keyframes haiqChatPulse {
  0%   { transform: scale(1); opacity: 0.7; }
  100% { transform: scale(1.6); opacity: 0; }
}
@keyframes haiqChatIn {
  0%   { transform: scale(0.85) translateY(12px); opacity: 0; }
  100% { transform: scale(1) translateY(0); opacity: 1; }
}
@keyframes haiqMsgIn {
  0%   { transform: translateY(8px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}
@keyframes haiqDot {
  0%, 60%, 100% { transform: translateY(0); opacity: 0.4; }
  30%           { transform: translateY(-4px); opacity: 1; }
}

/* ── Base ── */
::selection { background: rgba(255,255,255,0.2); color: #fff; }

a.btn-pill, button.btn-pill { text-decoration: none; }
a:focus-visible, button:focus-visible {
  outline: 1px solid rgba(255,255,255,0.4); outline-offset: 3px;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
  .hero-grid { grid-template-columns: 1fr !important; }
  .haiq-grid-3, .haiq-grid-2 { grid-template-columns: 1fr !important; }
  .haiq-about-grid { grid-template-columns: 1fr !important; }
  .haiq-process-line { display: none !important; }
  .haiq-stat { border-left: none !important; }
  .haiq-blog-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 720px) {
  section, header, footer, nav {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}
