/* ── SECTION: hero ── */
.hero {
  min-height: 100vh;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.hero-top-line {
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
}
.hero-glow {
  position: absolute; inset: 0; pointer-events: none;
}
.paws-bg {
  position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0;
}
.paw-svg {
  position: absolute; display: block;
  animation: pfloat 10s ease-in-out infinite;
}
.paw-svg:nth-child(1){ top:7%;    left:4%;   width:44px; height:44px; animation-duration:7s; }
.paw-svg:nth-child(2){ top:21%;   right:6%;  width:34px; height:34px; animation-duration:10s; animation-delay:1.8s; }
.paw-svg:nth-child(3){ top:57%;   left:8%;   width:52px; height:52px; animation-duration:13s; animation-delay:3.2s; }
.paw-svg:nth-child(4){ bottom:24%;right:9%;  width:38px; height:38px; animation-duration:8s;  animation-delay:.9s; }
.paw-svg:nth-child(5){ bottom:10%;left:23%;  width:30px; height:30px; animation-duration:11s; animation-delay:2.4s; }
.paw-svg:nth-child(6){ top:38%;   right:25%; width:42px; height:42px; animation-duration:8s;  animation-delay:4.1s; }
@keyframes pfloat {
  0%   { transform: translateY(0px)   rotate(-6deg); }
  50%  { transform: translateY(-22px) rotate(6deg);  }
  100% { transform: translateY(0px)   rotate(-6deg); }
}
.hero-body {
  flex: 1; display: flex; align-items: center;
  max-width: 1300px; margin: 0 auto;
  padding: 48px 2rem 5rem; width: 100%; gap: 4rem;
  position: relative; z-index: 1;
}
.hero-text { flex: 1; }
.hero-badge {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 7px 20px; border-radius: 50px;
  font-size: .70rem; font-weight: 700; letter-spacing: 2.5px;
  text-transform: uppercase; margin-bottom: 2rem;
  animation: fadeUp .7s ease both;
}
.badge-dot {
  width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0;
}
.hero-text h1 {
  font-size: clamp(3.4rem,6.5vw,6rem); font-weight: 700;
  line-height: 1.02; margin-bottom: 1.75rem;
  animation: fadeUp .7s .12s ease both;
}
.hero-text h1 em { font-style: italic; font-weight: 300; }
.hero-text p {
  font-size: 1.05rem; line-height: 1.82;
  max-width: 500px; margin-bottom: 2.5rem;
  animation: fadeUp .7s .25s ease both; font-weight: 500;
}
.hero-btns {
  display: flex; gap: 1rem; flex-wrap: wrap;
  animation: fadeUp .7s .38s ease both;
}
.hero-visual { flex: 0 0 380px; animation: fadeUp .7s .20s ease both; }
.hero-card {
  border-radius: 28px; padding: 1.75rem;
}
.hc-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: .85rem; margin-bottom: .85rem;
}
.mini-stat {
  border-radius: 18px; padding: 1.4rem 1rem;
  text-align: center; transition: all .25s;
}
.mini-stat .stat-icon {
  width: 36px; height: 36px; margin: 0 auto .65rem;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
}
.mini-stat strong {
  display: block;
  font-size: 2.5rem; font-weight: 700;
  line-height: 1;
}
.mini-stat span {
  font-size: .73rem; font-weight: 600;
  display: block; margin-top: 3px;
}
.hc-bottom {
  border-radius: 16px;
  padding: 1.1rem 1.25rem;
  display: flex; align-items: center; gap: 1rem;
}
.hc-bottom-icon {
  width: 40px; height: 40px; flex-shrink: 0;
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
}
.hc-bottom p { font-size: .85rem; line-height: 1.5; margin: 0; font-weight: 500; }

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media(max-width:1024px) {
  .hero-visual { flex: 0 0 320px; }
}
@media(max-width:768px) {
  .hero-body { flex-direction: column; padding-top: 24px; text-align: center; }
  .hero-text p { margin-left: auto; margin-right: auto; }
  .hero-btns { justify-content: center; }
  .hero-visual { flex: none; width: 100%; max-width: 360px; }
}
