/* PointOne Final CTA — all rules scoped to .pointone-cta */
.pointone-cta {
  position: relative;
  overflow: hidden;
  padding: clamp(60px, 9vw, 120px) 20px;
  color: var(--color-text);
  background:
    radial-gradient(45% 50% at 0% 40%, rgba(8, 127, 255, 0.28), transparent 70%),
    radial-gradient(40% 50% at 100% 30%, rgba(134, 101, 255, 0.3), transparent 70%),
    radial-gradient(60% 30% at 50% 100%, rgba(8, 127, 255, 0.22), transparent 70%),
    var(--color-background);
}

.pointone-cta__glow { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(35% 45% at 28% 45%, rgba(50, 197, 255, 0.07), transparent 70%); }
.pointone-cta__arc { position: absolute; width: min(24vw, 320px); height: 70%; pointer-events: none; }
.pointone-cta__arc--left { left: 0; top: 0; }
.pointone-cta__arc--right { right: 0; bottom: 0; height: 40%; }

.pointone-cta__container { position: relative; max-width: var(--container-max-width); margin: 0 auto; }
.pointone-cta__layout { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(32px, 4vw, 64px); align-items: center; }

.pointone-cta__badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 24px;
  padding: 8px 18px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-cyan);
  background: rgba(8, 127, 255, 0.14);
  border: 1px solid rgba(50, 197, 255, 0.35);
  border-radius: 999px;
}
.pointone-cta__badge-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--color-cyan); box-shadow: 0 0 10px var(--color-cyan); }

.pointone-cta__title { margin: 0 0 22px; font-size: clamp(2rem, 1.1rem + 3.4vw, 3.8rem); font-weight: 800; line-height: 1.1; letter-spacing: -0.02em; color: var(--color-text); }
.pointone-cta__gradient {
  background: linear-gradient(90deg, var(--color-cyan), var(--color-primary) 50%, var(--color-violet));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.pointone-cta__description { max-width: 600px; margin: 0 0 34px; font-size: clamp(1rem, 0.95rem + 0.3vw, 1.2rem); line-height: 1.65; color: var(--color-text-muted); }

.pointone-cta__actions { display: flex; flex-wrap: wrap; gap: 16px; }
.pointone-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  padding: 14px 28px;
  font-size: 1.05rem;
  font-weight: 600;
  text-decoration: none;
  color: var(--color-text);
  border-radius: 14px;
  transition: filter 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, transform 0.25s ease;
}
.pointone-cta__button i { font-size: 22px; }
.pointone-cta__button--primary { background: linear-gradient(90deg, #12bfff, var(--color-primary) 45%, var(--color-violet)); box-shadow: 0 0 26px rgba(50, 197, 255, 0.3); }
.pointone-cta__button--primary:hover { color: var(--color-text); filter: brightness(1.1); box-shadow: 0 0 34px rgba(134, 101, 255, 0.5); transform: translateY(-2px); }
.pointone-cta__button--secondary { background: rgba(7, 22, 41, 0.85); border: 1px solid var(--color-cyan); }
.pointone-cta__button--secondary i { color: var(--color-cyan); }
.pointone-cta__button--secondary:hover { color: var(--color-text); background: rgba(50, 197, 255, 0.12); box-shadow: 0 0 22px rgba(50, 197, 255, 0.35); transform: translateY(-2px); }
.pointone-cta__button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

/* Visual */
.pointone-cta__visual { position: relative; width: 100%; max-width: 620px; margin: 0 auto; aspect-ratio: 600 / 460; }
.pointone-cta__orbit { position: absolute; inset: 0; width: 100%; height: 100%; filter: drop-shadow(0 0 12px rgba(134, 101, 255, 0.6)); }

.pointone-cta__browser {
  position: absolute;
  left: 9%;
  top: 14%;
  width: 82%;
  padding: 3.5%;
  background: linear-gradient(160deg, rgba(20, 42, 88, 0.95), rgba(8, 20, 44, 0.96));
  border: 1px solid rgba(50, 197, 255, 0.55);
  border-radius: 18px;
  box-shadow: 0 0 36px rgba(50, 197, 255, 0.25), 0 0 60px rgba(134, 101, 255, 0.2);
  transform: perspective(1200px) rotateY(-10deg) rotateX(4deg) rotateZ(2deg);
}

.pointone-cta__browser-header { display: flex; align-items: center; gap: 6px; padding-bottom: 3%; border-bottom: 1px solid rgba(255, 255, 255, 0.1); margin-bottom: 4%; }
.pointone-cta__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--color-cyan); opacity: 0.8; }
.pointone-cta__nav-lines { display: flex; gap: 8px; margin-left: auto; }
.pointone-cta__nav-lines i { display: block; width: 20px; height: 4px; border-radius: 3px; background: rgba(8, 127, 255, 0.7); }

.pointone-cta__hero-mock { display: grid; grid-template-columns: 1fr 1.15fr; gap: 4%; margin-bottom: 4%; }
.pointone-cta__mock-text { display: flex; flex-direction: column; gap: 8px; }
.pointone-cta__mock-logo { width: 14px; height: 14px; border-radius: 50%; background: var(--color-primary); }
.pointone-cta__mock-title { margin: 0; font-size: clamp(0.9rem, 2.2vw, 1.4rem); font-weight: 700; line-height: 1.15; color: var(--color-text); }
.pointone-cta__line { display: block; height: 5px; border-radius: 3px; background: rgba(120, 160, 255, 0.55); }
.pointone-cta__line--accent { width: 38%; background: var(--color-primary); }
.pointone-cta__line--short { width: 70%; }
.pointone-cta__mock-button { width: 48%; height: 14px; border-radius: 8px; background: linear-gradient(90deg, var(--color-primary), var(--color-violet)); }
.pointone-cta__mock-image { overflow: hidden; border: 1px solid rgba(50, 197, 255, 0.35); border-radius: 10px; }
.pointone-cta__mock-image svg { display: block; width: 100%; height: 100%; }

.pointone-cta__mock-modules { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4%; }
.pointone-cta__mock-modules > span { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; min-height: 48px; padding: 8px; background: rgba(8, 127, 255, 0.12); border: 1px solid rgba(50, 197, 255, 0.3); border-radius: 10px; font-size: 22px; color: var(--color-cyan); }
.pointone-cta__mock-modules .pointone-cta__line { width: 80%; }

.pointone-cta__floating-icon {
  position: absolute;
  z-index: 2;
  display: grid;
  place-items: center;
  width: clamp(36px, 9%, 56px);
  aspect-ratio: 1;
  font-size: clamp(18px, 3.4vw, 28px);
  color: var(--color-cyan);
  background: rgba(10, 24, 52, 0.95);
  border: 1px solid rgba(50, 197, 255, 0.6);
  border-radius: 12px;
  box-shadow: 0 0 18px rgba(50, 197, 255, 0.3);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.pointone-cta__floating-icon:hover { transform: translateY(-3px); box-shadow: 0 0 26px rgba(50, 197, 255, 0.5); }
.pointone-cta__floating-icon--palette { left: 1%; top: 9%; }
.pointone-cta__floating-icon--type { right: 3%; top: 5%; color: var(--color-violet); border-color: rgba(134, 101, 255, 0.7); box-shadow: 0 0 18px rgba(134, 101, 255, 0.35); }
.pointone-cta__floating-icon--code { right: 0; bottom: 14%; }

@media (max-width: 991px) {
  .pointone-cta__layout { grid-template-columns: minmax(0, 1fr); }
  .pointone-cta__visual { max-width: 540px; }
}

@media (max-width: 575px) {
  .pointone-cta { padding-left: 16px; padding-right: 16px; }
  .pointone-cta__button { width: 100%; }
  .pointone-cta__mock-modules > span { min-height: 36px; font-size: 18px; }
  .pointone-cta__mock-text { gap: 5px; }
}

@media (prefers-reduced-motion: reduce) {
  .pointone-cta__button,
  .pointone-cta__floating-icon { transition: none; }
  .pointone-cta__button:hover,
  .pointone-cta__floating-icon:hover { transform: none; }
}
