/* ── Custom Font ── */ @font-face { font-family: 'stephentype-webfont.woff2';src: url(/public_html/wp-content/themes/divi-child/fonts/stephentype-webfont.woff2) format('woff2'); font-weight: normal; font-style: normal; font-display: swap; }
/* ═══════════════════════════════════════════
   JUSAYN.COM — global.css
   Location: wp-content/themes/divi-child/css/global.css
═══════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=DM+Sans:wght@300;400;500&family=Share+Tech+Mono&display=swap');

:root {
  --j-indigo:       #636ba2;
  --j-indigo-light: #a8afd6;
  --j-pink:         #e87ea1;
  --j-pink-soft:    #f5b8cc;
  --j-blue:         #6ab4d4;
  --j-green:        #7ec8a0;
  --j-cream:        #fdf6ee;
  --j-dark:         #141220;
  --j-dark2:        #1c1a2e;
  --j-card:         rgba(28,26,46,0.97);
  --j-dim:          rgba(253,246,238,0.55);
  --j-faint:        rgba(253,246,238,0.07);
}

body, #page-container { background:var(--j-dark) !important; color:var(--j-cream) !important; }
body * { cursor:none !important; }
a { color:var(--j-indigo-light); text-decoration:none; }
a:hover { color:var(--j-pink); }

/* ── Cursor ── */
#jcur { width:10px; height:10px; background:var(--j-pink); border-radius:50%; position:fixed; pointer-events:none; z-index:99999; transform:translate(-50%,-50%); mix-blend-mode:screen; }
#jring { width:36px; height:36px; border:1.5px solid rgba(99,107,162,0.7); border-radius:50%; position:fixed; pointer-events:none; z-index:99998; transform:translate(-50%,-50%); }

/* ── Nav bar ── */
#main-header, .et-fixed-header { background:rgba(20,18,32,0.88) !important; backdrop-filter:blur(20px) !important; border-bottom:1px solid rgba(99,107,162,0.2) !important; box-shadow:none !important; }
#top-menu .menu-item a { color:rgba(253,246,238,0.55) !important; font-size:.72rem !important; letter-spacing:.14em !important; text-transform:uppercase !important; font-weight:500 !important; transition:color .25s !important; }
#top-menu .menu-item a:hover { color:var(--j-pink) !important; }

/* ── Back button ── */
.j-back { display:inline-flex; align-items:center; gap:.5rem; color:var(--j-indigo-light); text-decoration:none; font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; padding:.6rem 1.2rem; border:1px solid rgba(99,107,162,0.3); background:rgba(99,107,162,0.08); transition:all .25s; margin-bottom:2rem; cursor:pointer !important; }
.j-back:hover { color:var(--j-pink) !important; border-color:rgba(232,126,161,0.5); background:rgba(232,126,161,0.08); }

/* ── Tags ── */
.j-tag { font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; font-weight:600; padding:.2rem .6rem; display:inline-block; }
.j-tag-pink   { background:rgba(232,126,161,0.15); color:var(--j-pink); }
.j-tag-indigo { background:rgba(99,107,162,0.2);   color:var(--j-indigo-light); }
.j-tag-blue   { background:rgba(106,180,212,0.15); color:var(--j-blue); }
.j-tag-green  { background:rgba(126,200,160,0.15); color:var(--j-green); }
.j-tag-amber  { background:rgba(196,118,42,0.2);   color:#e8a44a; }
.j-tag-neon   { background:rgba(0,255,255,0.1);    color:#00ffff; }

/* ── Cards ── */
.j-card { background:var(--j-card); border:1px solid rgba(99,107,162,0.15); padding:1.75rem; position:relative; overflow:hidden; transition:transform .3s, border-color .3s; }
.j-card:hover { transform:translateY(-4px); border-color:rgba(99,107,162,0.45); }

/* ── Scroll reveal ── */
.j-reveal { opacity:0; transform:translateY(22px); transition:opacity .75s ease, transform .75s ease; }
.j-reveal.j-in { opacity:1; transform:translateY(0); }
.j-d1 { transition-delay:.1s; } .j-d2 { transition-delay:.2s; } .j-d3 { transition-delay:.3s; }

/* ── Filter buttons ── */
.j-filter-btn { padding:.45rem 1.2rem; background:transparent; color:var(--j-dim); border:1px solid rgba(99,107,162,0.3); font-family:'DM Sans',sans-serif; font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; cursor:pointer !important; transition:all .25s; }
.j-filter-btn:hover, .j-filter-btn.active { background:var(--j-indigo); color:var(--j-cream); border-color:var(--j-indigo); }

/* ── Marquee ── */
.j-marquee { overflow:hidden; white-space:nowrap; padding:1.2rem 0; background:rgba(99,107,162,0.12); border-top:1px solid rgba(99,107,162,0.2); border-bottom:1px solid rgba(99,107,162,0.2); }
.j-marquee-inner { display:inline-block; animation:jmq 22s linear infinite; }
.j-marquee-inner span { font-family:'Bebas Neue',cursive; font-size:1.1rem; letter-spacing:.2em; color:rgba(253,246,238,0.35); margin-right:2rem; }
.j-marquee-inner .hi { color:var(--j-pink); }
.j-marquee-inner .dot { color:var(--j-indigo-light); font-size:.7rem; }
@keyframes jmq { from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* ── Audio player ── */
.j-player { position:fixed; bottom:1.5rem; right:1.5rem; z-index:9990; }
.j-play-btn { background:rgba(20,18,32,0.92); border:1px solid rgba(99,107,162,0.4); color:var(--j-indigo-light); padding:.55rem 1.1rem; font-family:'DM Sans',sans-serif; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; backdrop-filter:blur(10px); transition:all .25s; cursor:pointer !important; }
.j-play-btn:hover { border-color:var(--j-pink); color:var(--j-pink); }

/* ══════════════════════════════════════
   MINI UNIVERSE NAV — bottom center
   Larger orbit, always visible
══════════════════════════════════════ */
#j-mini-nav {
  position:fixed;
  bottom:1.75rem;
  left:50%;
  transform:translateX(-50%);
  z-index:9991;
  width:64px; height:64px;
}

/* Toggle — bigger, more presence */
.jmn-toggle {
  position:absolute;
  bottom:0; left:50%;
  transform:translateX(-50%);
  width:64px; height:64px;
  border-radius:50%;
  background:rgba(20,18,32,0.95);
  border:2px solid rgba(99,107,162,0.6);
  color:var(--j-indigo-light);
  font-size:1.4rem;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer !important;
  transition:all .35s;
  backdrop-filter:blur(16px);
  box-shadow:0 0 30px rgba(99,107,162,0.25), 0 4px 20px rgba(0,0,0,0.4);
  z-index:2;
}
.jmn-toggle:hover {
  border-color:var(--j-pink);
  color:var(--j-pink);
  box-shadow:0 0 40px rgba(232,126,161,0.35), 0 4px 20px rgba(0,0,0,0.4);
  transform:translateX(-50%) scale(1.08);
}
#j-mini-nav.jmn-open .jmn-toggle {
  background:linear-gradient(135deg, var(--j-indigo), rgba(99,107,162,0.8));
  border-color:var(--j-indigo-light);
  color:var(--j-cream);
  box-shadow:0 0 50px rgba(99,107,162,0.4), 0 4px 20px rgba(0,0,0,0.5);
  animation:jmn-pulse 2s ease-in-out infinite;
}
@keyframes jmn-pulse {
  0%,100% { box-shadow:0 0 50px rgba(99,107,162,0.4), 0 4px 20px rgba(0,0,0,0.5); }
  50%      { box-shadow:0 0 70px rgba(99,107,162,0.6), 0 4px 20px rgba(0,0,0,0.5); }
}

/* Label under toggle */
.jmn-label {
  position:absolute;
  bottom:-1.4rem; left:50%;
  transform:translateX(-50%);
  font-family:'DM Sans',sans-serif;
  font-size:.5rem; letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(168,175,214,0.5);
  white-space:nowrap;
  transition:color .25s;
}
#j-mini-nav:hover .jmn-label { color:var(--j-indigo-light); }

/* Nodes — start hidden at center */
.jmn-node {
  position:absolute;
  bottom:0; left:50%;
  transform:translateX(-50%) scale(0);
  width:50px; height:50px;
  border-radius:50%;
  background:rgba(20,18,32,0.97);
  border:1.5px solid rgba(99,107,162,0.4);
  display:flex; align-items:center; justify-content:center;
  font-size:1.1rem;
  text-decoration:none !important;
  cursor:pointer !important;
  opacity:0;
  transition:opacity .3s, transform .45s cubic-bezier(.34,1.56,.64,1), border-color .25s, box-shadow .25s;
  backdrop-filter:blur(12px);
  box-shadow:0 2px 12px rgba(0,0,0,0.4);
}
.jmn-node:hover {
  border-color:var(--j-pink) !important;
  box-shadow:0 0 20px rgba(232,126,161,0.45) !important;
  transform:scale(1.2) !important;
}
.jmn-active {
  border-color:var(--j-indigo-light) !important;
  box-shadow:0 0 18px rgba(168,175,214,0.5) !important;
}

/* Tooltip — appears above nodes */
.jmn-node::after {
  content:attr(data-label);
  position:absolute; bottom:115%; left:50%;
  transform:translateX(-50%);
  background:rgba(20,18,32,0.98); color:var(--j-cream);
  font-family:'DM Sans',sans-serif; font-size:.6rem;
  letter-spacing:.12em; text-transform:uppercase;
  padding:.35rem .75rem; white-space:nowrap;
  border:1px solid rgba(99,107,162,0.3);
  opacity:0; pointer-events:none; transition:opacity .2s;
}
.jmn-node:hover::after { opacity:1; }

/* Open — nodes positioned via JS */
#j-mini-nav.jmn-open .jmn-node { opacity:1; }

/* ── WooCommerce ── */
.woocommerce ul.products li.product { background:var(--j-card) !important; border:1px solid rgba(99,107,162,0.15) !important; transition:transform .3s !important; }
.woocommerce ul.products li.product:hover { transform:translateY(-5px) !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family:'Playfair Display',serif !important; color:var(--j-cream) !important; }
.woocommerce ul.products li.product .price { color:var(--j-green) !important; }
.woocommerce a.button, .woocommerce button.button { background:var(--j-indigo) !important; color:var(--j-cream) !important; border-radius:0 !important; font-family:'DM Sans',sans-serif !important; letter-spacing:.1em !important; text-transform:uppercase !important; }
.woocommerce a.button:hover, .woocommerce button.button:hover { background:var(--j-pink) !important; }