/* Home-only orbital hero. All decorative movement uses transforms. */
#hero.modern-hero {
  min-height: min(900px, 100svh);
  padding: 148px 0 76px;
  background: radial-gradient(ellipse at 85% 35%, #dbeaff 0, transparent 48%),
    radial-gradient(ellipse at 8% 90%, #dff7f4 0, transparent 36%), #f8faff;
  isolation: isolate;
}
#hero::before { width: 680px; height: 680px; right: -360px; top: -340px; background: transparent; border: 1px solid #1455d92b; filter: none; animation: none; }
#hero::after { width: 410px; height: 410px; left: -290px; bottom: -240px; background: transparent; border: 50px solid #10b7d414; filter: none; animation: none; }
#hero h1 { font-size: clamp(40px, 4.7vw, 66px); line-height: 1.08; letter-spacing: -.045em; max-width: 620px; }
.hero-gradient-text { color: #1455d9; background: linear-gradient(110deg, #1455d9 15%, #087f97 95%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.hero-heading-dot { color: #0eabc1; }
#hero .hero-badge { font-size: 13px; letter-spacing: .025em; box-shadow: none; background: #fff9; }
#hero .hero-copy { max-width: 540px; font-size: 17px; }
#hero .hero-highlights { gap: 12px; display: flex; flex-wrap: wrap; }
#hero .hero-highlights span { padding: 0; background: none; box-shadow: none; font-size: 13px; }
#hero .hero-actions a { border-radius: 999px; }
#hero .hero-visual { padding-left: 30px; }
.hero-orbit-scene { position: relative; width: 100%; max-width: 530px; aspect-ratio: 1; margin: auto; isolation: isolate; }
.hero-orbit-grid { position: absolute; inset: 0; border-radius: 50%; background-image: radial-gradient(#1455d935 1px, transparent 1px); background-size: 18px 18px; mask-image: radial-gradient(circle, #000 30%, transparent 70%); }
.hero-orbit-ring { position: absolute; border-radius: 50%; pointer-events: none; border: 1px solid #1455d933; }
.hero-orbit-ring-outer { inset: 4%; animation: hero-orbit-spin 36s linear infinite; }
.hero-orbit-ring-inner { inset: 14%; border-style: dashed; border-color: #10b7d45c; animation: hero-orbit-spin 26s linear infinite reverse; }
.hero-orbit-ring::before, .hero-orbit-ring::after { content: ''; position: absolute; width: 12px; height: 12px; border-radius: 50%; background: #1455d9; top: 50%; left: -6px; box-shadow: 0 0 0 7px #1455d90a; }
.hero-orbit-ring::after { left: auto; right: -6px; background: #10b7d4; }
.hero-orbit-ring-inner::before { background: #f6b84b; width: 9px; height: 9px; left: -4px; }
.hero-orbit-ring-inner::after { display: none; }
.hero-orbit-core { position: absolute; inset: 23%; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #fff; background: radial-gradient(circle at 75% 15%, #245cb4, transparent 60%), linear-gradient(150deg, #122e5b, #081a3d); box-shadow: 0 24px 60px #081a3d29, inset 0 0 0 9px #ffffff07, 0 0 0 12px #ffffff88; }
.hero-core-eyebrow { color: #b9d9f3; font-size: clamp(8px, .8vw, 10px); letter-spacing: .17em; font-weight: 600; }
.hero-orbit-core strong { margin: 12px 0; font-size: clamp(34px, 3.8vw, 52px); line-height: .98; letter-spacing: -.05em; }
.hero-orbit-core strong span { color: #75eddf; }
.hero-core-caption { font-size: 11px; color: #c9def5; }
.hero-core-caption i { margin-left: 5px; color: #75eddf; }
.hero-orbit-chip { position: absolute; display: flex; align-items: center; gap: 10px; padding: 13px 16px; border-radius: 16px; border: 1px solid #fff; background: #ffffffed; box-shadow: 0 12px 32px #14365b12; text-align: left; animation: hero-chip-float 6s ease-in-out infinite; }
.hero-orbit-chip > i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: #eaf1ff; color: #1455d9; font-size: 19px; }
.hero-orbit-chip span { font-size: 10px; color: #617086; line-height: 1.6; }
.hero-orbit-chip strong { display: block; color: #102b50; font-size: 14px; }
.hero-chip-seo { top: 9%; left: 4%; }
.hero-chip-ads { top: 26%; right: 0; animation-delay: -1.5s; }
.hero-chip-ads > i { background: #fff1d8; color: #aa6700; }
.hero-chip-ai { bottom: 8%; right: 5%; animation-delay: -3s; }
.hero-chip-ai > i { background: #e5f8f3; color: #078264; }
.hero-chip-content { bottom: 26%; left: 0; animation-delay: -4.5s; }
.hero-chip-content > i { background: #f1ecff; color: #7953bd; }
.hero-orbit-spark { position: absolute; right: 17%; top: 6%; font-size: 35px; color: #0c9caf; animation: hero-orbit-spin 20s linear infinite; }
.hero-orbit-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; max-width: 530px; margin: 6px auto 0; }
.hero-orbit-label { display: flex; align-items: center; gap: 8px; font-size: 11px; color: #526074; }
.hero-orbit-label > span { width: 6px; height: 6px; border-radius: 50%; background: #159778; }
.hero-motion-toggle { display: inline-flex; align-items: center; gap: 4px; border: 1px solid #d5e1f0; border-radius: 999px; background: #fff9; color: #526074; min-height: 44px; padding: 8px 12px; font: inherit; font-size: 11px; }
.hero-motion-toggle[hidden] { display: none; }
.hero-motion-toggle:hover { background: #fff; color: #1455d9; }
.hero-motion-toggle:focus-visible { outline: 3px solid #1455d9; outline-offset: 3px; }
#hero .metric-strip { max-width: 530px; margin: 18px auto 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid #1455d921; }
#hero .metric { background: transparent; padding: 20px 5px 0; }
#hero .metric strong { font-size: 23px; margin-bottom: 7px; }
#hero .metric small { font-size: 11px; }
#hero.is-motion-paused .hero-orbit-scene * { animation-play-state: paused; }
@keyframes hero-orbit-spin { to { transform: rotate(360deg); } }
@keyframes hero-chip-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }
@media (max-width: 991px) {
  #hero.modern-hero { min-height: auto; padding: 120px 0 56px; }
  #hero h1 { margin-left: auto; margin-right: auto; }
  #hero .hero-highlights { justify-content: center; }
  #hero .hero-visual { padding-left: 12px; margin-top: 30px; }
  .hero-orbit-core strong { font-size: clamp(34px, 7vw, 52px); }
  .hero-core-eyebrow { font-size: 9px; }
}
@media (max-width: 480px) {
  #hero h1 { font-size: clamp(35px, 10vw, 46px); }
  #hero .hero-badge { font-size: 11px; padding: 9px 12px; }
  .hero-orbit-chip { padding: 9px 10px; gap: 7px; border-radius: 12px; }
  .hero-orbit-chip > i { width: 28px; height: 28px; font-size: 15px; border-radius: 9px; }
  .hero-orbit-chip span { font-size: 0; }
  .hero-orbit-chip strong { font-size: 11px; }
  .hero-chip-seo { top: 3%; }
  .hero-chip-ads { top: 16%; }
  .hero-chip-content { bottom: 16%; }
  .hero-chip-ai { bottom: 3%; }
  .hero-orbit-core strong { font-size: clamp(29px, 9vw, 40px); margin: 8px 0; }
  .hero-core-eyebrow { font-size: 6px; }
  .hero-core-caption { font-size: 8px; }
  .hero-orbit-label { font-size: 9px; }
  .hero-motion-toggle { font-size: 10px; padding: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  #hero .hero-orbit-scene * { animation: none !important; }
  #hero [data-aos] { opacity: 1 !important; transform: none !important; }
}
