/* ============================================================
   Wehrens Webdesign – Extra CSS (animations, cursor, UI)
   ============================================================ */

/* ── CURSOR ── */
body { cursor: none !important; }
#ww-cursor {
  position: fixed;
  width: 10px; height: 10px;
  background: #0ea5e9;
  border-radius: 50%;
  pointer-events: none;
  z-index: 999999;
  transform: translate(-50%, -50%);
  transition: width .2s, height .2s;
  mix-blend-mode: screen;
}
#ww-cursor-ring {
  position: fixed;
  width: 36px; height: 36px;
  border: 1.5px solid rgba(14,165,233,0.5);
  border-radius: 50%;
  pointer-events: none;
  z-index: 999998;
  transform: translate(-50%, -50%);
  transition: width .25s, height .25s;
}
#ww-cursor.ww-cursor-hover  { width: 18px !important; height: 18px !important; }
#ww-cursor-ring.ww-cursor-hover { width: 52px !important; height: 52px !important; }

/* ── TYPED CURSOR BLINK ── */
@keyframes wwBlink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
.ww-typed-cursor { animation: wwBlink .7s infinite !important; }

/* ── STICKY CTA ── */
#ww-sticky-cta {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 9970;
  background: rgba(13,17,23,0.97);
  border-top: 1px solid #2a3045;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 13px 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  transform: translateY(100%);
  transition: transform .4s cubic-bezier(.16,1,.3,1);
}
#ww-sticky-cta.ww-sticky-visible { transform: translateY(0) !important; }
#ww-sticky-cta p { font-size: 14px; color: #8892a4; margin: 0; font-family: 'Inter', sans-serif; }
#ww-sticky-cta strong { color: #ffffff; }
.ww-sticky-btn {
  display: inline-block !important;
  background: #0ea5e9 !important;
  color: #fff !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 10px 22px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  font-family: 'Inter', sans-serif !important;
  transition: background .25s !important;
  white-space: nowrap !important;
}
.ww-sticky-btn:hover { background: #0284c7 !important; color: #fff !important; }

/* ── WHATSAPP BUTTON ── */
#ww-whatsapp {
  position: fixed;
  bottom: 80px; right: 28px;
  z-index: 9960;
  width: 52px; height: 52px;
  background: #0ea5e9;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  box-shadow: 0 6px 24px rgba(14,165,233,0.4);
  text-decoration: none !important;
  transition: all .3s;
  cursor: none !important;
}
#ww-whatsapp:hover {
  transform: scale(1.1) !important;
  box-shadow: 0 8px 32px rgba(14,165,233,0.6) !important;
}

/* ── PARTICLES CANVAS ── */
#ww-particles {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* ── HERO SECTION – fix height & centering ── */
.elementor-section:first-of-type {
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  background: #0d1117 !important;
  position: relative !important;
  overflow: hidden !important;
}
.elementor-section:first-of-type > .elementor-container {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
}

/* ── REMOVE DEFAULT WP ELEMENTS ── */
.site-header,
.site-footer,
.wp-block-template-part,
.elementor-page .entry-header,
.elementor-page .entry-footer { display: none !important; }

/* Push content below admin bar when logged in */
body.admin-bar .elementor-section:first-of-type { padding-top: 32px !important; }

/* ── SECTION BACKGROUNDS ── */
.elementor-section { background-color: #0d1117 !important; }

/* ── NAV SCROLLED ── */
.elementor-location-header.ww-nav-scrolled {
  box-shadow: 0 4px 30px rgba(0,0,0,0.4) !important;
}

/* ── SCROLL REVEAL KEYFRAME ── */
@keyframes wwFadeUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── HERO BADGE ANIMATION ── */
.elementor-section:first-of-type .elementor-widget:nth-child(1) {
  animation: wwFadeUp .6s cubic-bezier(.16,1,.3,1) both;
}
.elementor-section:first-of-type .elementor-widget:nth-child(2) {
  animation: wwFadeUp .7s .1s cubic-bezier(.16,1,.3,1) both;
}
.elementor-section:first-of-type .elementor-widget:nth-child(3) {
  animation: wwFadeUp .7s .25s cubic-bezier(.16,1,.3,1) both;
}
.elementor-section:first-of-type .elementor-widget:nth-child(4) {
  animation: wwFadeUp .7s .4s cubic-bezier(.16,1,.3,1) both;
}

/* ── CARD HOVER EFFECTS ── */
.elementor-widget-text-editor:hover { transition: all .3s !important; }

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
  #ww-sticky-cta { padding: 12px 20px !important; }
  #ww-whatsapp { bottom: 75px !important; right: 16px !important; }
  body { cursor: auto !important; }
  #ww-cursor, #ww-cursor-ring { display: none !important; }
}
