/* Shared design tokens (from the homepage :root) */
:root {
      --pink: #E8176A;
  --cyan: #00D4FF;
  --cyan-faint: rgba(0,212,255,0.08);
  --cyan-border: rgba(0,212,255,0.25);
      --pink-glow: rgba(232,23,106,0.35);
      --pink-faint: rgba(232,23,106,0.08);
      --ink: #0A0A0A;
      --ink2: #111111;
      --chalk: #F8F6F3;
      --text: #1A1A1A;
      --text-muted: #4A4A4A;
      --border: #E2E2E2;
    }


*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:#fff;color:#0A0A0A;overflow-x:hidden;cursor:none}

/* CURSOR */
#cur{width:10px;height:10px;background:#E8176A;border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .15s,height .15s}
#cur-r{width:34px;height:34px;border:1.5px solid rgba(232,23,106,.5);border-radius:50%;position:fixed;pointer-events:none;z-index:9998;transform:translate(-50%,-50%)}

/* SCROLL PROGRESS */
#read-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#E8176A,#ff6ba8);z-index:9999;width:0%;transition:width .08s linear;pointer-events:none}

/* SCROLLBAR */
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:#000}::-webkit-scrollbar-thumb{background:#E8176A}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 56px;background:rgba(0,0,0,.96);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.07);transition:transform .3s}
.nlogo{font-family:Raleway,sans-serif;font-size:11px;font-weight:800;letter-spacing:10px;text-transform:uppercase;color:#fff;text-decoration:none;display:flex;align-items:center;gap:10px}
.nlogo-sq{width:30px;height:30px;background:#E8176A;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nlinks{display:flex;align-items:center;gap:28px}
.nlinks a{font-family:Raleway,sans-serif;font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.6);text-decoration:none;transition:color .2s}
.nlinks a:hover,.nlinks a.active{color:#E8176A}
.ncta{background:#E8176A;color:#fff!important;padding:11px 22px}
.ncta:hover{background:#c4125a!important}

/* TAGS */
.tag{font-family:Raleway,sans-serif;font-size:9px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;padding:6px 14px;display:inline-block}
.tag-brand{color:#fff;background:#00D4FF}
.tag-ai{color:#fff;background:#7c5cbf}
.tag-saas{color:#fff;background:#16a34a}
.tag-leadership{color:#fff;background:#d97706}
.tag-systems{color:#fff;background:#ea580c}
.tag-strategy{color:#fff;background:#E8176A}

/* HERO */
.hero-bg{background:#07080A;background-image:radial-gradient(circle,rgba(255,255,255,.04) 1px,transparent 1px);background-size:32px 32px}

/* ARTICLE BODY TYPOGRAPHY */
.article-body p{font-family:'DM Sans',sans-serif;font-size:1.1rem;color:#07080A;line-height:2;margin-bottom:1.6em}
.article-body h3{font-family:Raleway,sans-serif;font-size:1.25rem;font-weight:900;color:#07080A;margin:2.4em 0 .7em;padding-left:16px;border-left:3px solid #E8176A}
.article-body strong{color:#07080A;font-weight:600}
.article-body em{font-style:italic;color:rgba(10,10,10,.65)}
.article-body br{display:block;margin-bottom:.4em}

/* PULLQUOTE */
.pullquote{border-left:4px solid #E8176A;margin:2.5em 0;padding:20px 28px;background:rgba(232,23,106,.04)}
.pullquote p{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-style:italic;color:#07080A;line-height:1.65;margin:0}

/* RELATED CARD */
.rel-card{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid rgba(10,10,10,.08);cursor:pointer;text-decoration:none;transition:all .2s}
.rel-card:last-child{border-bottom:none}
.rel-card:hover{padding-left:6px}
.rel-vis{width:72px;height:72px;flex-shrink:0;background:#f0f0f0;overflow:hidden;position:relative}
.rel-title{font-family:Raleway,sans-serif;font-size:.98rem;font-weight:800;color:#07080A;line-height:1.35;margin-bottom:5px}
.rel-meta{font-family:'DM Sans',sans-serif;font-size:.82rem;color:rgba(10,10,10,.72)}

/* SHARE ROW */
.share-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;font-family:Raleway,sans-serif;font-size:9px;font-weight:800;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .2s;text-decoration:none;border:none}
.share-btn:hover{opacity:.88;transform:translateY(-1px)}

/* STICKY TOC */
.toc-item{display:flex;align-items:center;gap:10px;padding:10px 0;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:.88rem;color:rgba(10,10,10,.45);border-bottom:1px solid rgba(10,10,10,.06);transition:all .2s}
.toc-item:last-child{border-bottom:none}
.toc-item:hover,.toc-item.active{color:#E8176A}
.toc-num{font-family:Raleway,sans-serif;font-size:9px;font-weight:700;color:rgba(232,23,106,.4);flex-shrink:0;width:18px}

/* BACK TO BLOG */
.back-link{display:inline-flex;align-items:center;gap:8px;font-family:Raleway,sans-serif;font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45);text-decoration:none;transition:color .2s;margin-bottom:36px}
.back-link:hover{color:#E8176A}
.back-link svg{transform:rotate(180deg)}

@keyframes fadeUp{from{transform:translateY(16px)}to{transform:translateY(0)}}
.au{opacity:1;animation:fadeUp .5s cubic-bezier(.22,1,.36,1) forwards}
.au-1{animation-delay:.04s}.au-2{animation-delay:.12s}.au-3{animation-delay:.22s}.au-4{animation-delay:.32s}

@media(max-width:1100px){.layout-cols{grid-template-columns:1fr!important}.sidebar-col{display:none}}
@media(max-width:640px){nav{padding:0 20px}.nlinks{display:none}.hero-pad{padding:120px 24px 56px!important}.body-pad{padding:40px 24px!important}}

/* ══ GLOBAL RESPONSIVE ═════════════════════════════════════════════ */
@media (max-width: 900px) {
  .nav-links { display: none !important; }
  .nav-hamburger { display: flex !important; }
  .nav-inner { padding: 0 24px; }
}
@media (max-width: 640px) {
  .nav-logo-text { display: none; }
}

/* ══ FOOTER ════════════════════════════════════════════════════════ */
.site-footer { background: #070707; border-top: 1px solid rgba(255,255,255,.05); padding: 64px 48px 36px; }
.footer-inner { max-width: 1200px; margin: 0 auto; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
.footer-brand { font-family: 'Raleway',sans-serif; font-size: 12px; font-weight: 800; letter-spacing: 8px; text-transform: uppercase; color: #fff; text-decoration: none; display: block; margin-bottom: 14px; }
.footer-tagline { font-size: 14px; color: rgba(255,255,255,.38); line-height: 1.75; max-width: 280px; margin-bottom: 22px; }
.footer-socials { display: flex; gap: 10px; }
.social-ico{ width: 36px; height: 36px; background: rgba(255,255,255,.07); color:#fff;display:flex; align-items: center; justify-content: center; transition: background .2s; }
.social-ico:hover { background: #E8176A; }
.footer-col-label { font-family: 'Raleway',sans-serif; font-size: 9px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: #E8176A; margin-bottom: 18px; }
.footer-links { display: flex; flex-direction: column; gap: 11px; }
.footer-links a { font-size: 14px; color: rgba(255,255,255,.38); text-decoration: none; transition: color .2s; }
.footer-links a:hover { color: #fff; }
.footer-avail { display: flex; flex-direction: column; gap: 11px; }
.avail-row { display: flex; align-items: center; gap: 8px; font-size: 13px; color: rgba(255,255,255,.45); }
.avail-dot { width: 7px; height: 7px; background: #22c55e; border-radius: 50%; flex-shrink: 0; animation: pulse-g 2s ease-in-out infinite; }
@keyframes pulse-g { 0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.5)} 50%{box-shadow:0 0 0 5px rgba(34,197,94,0)} }
.footer-email { font-size: 12px; color: rgba(255,255,255,.2); margin-top: 6px; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.05); padding-top: 22px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; }
.footer-bottom p { font-size: 12px; color: rgba(255,255,255,.2); }
@media(max-width:768px) {
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .site-footer { padding: 48px 24px 28px; }
}
@media(max-width:480px) {
  .footer-grid { grid-template-columns: 1fr; }
}


/* ══ FLOATING SHARE BAR ═══════════════════════════════════════ */
#float-share{position:fixed;left:16px;top:50%;transform:translateY(-50%);z-index:100;display:flex;flex-direction:column;align-items:center;gap:6px;opacity:1;background:#fff;border:1px solid rgba(10,10,10,.08);padding:12px 8px;box-shadow:0 4px 24px rgba(0,0,0,.1)}
#float-share.show{opacity:1}
@media(max-width:900px){#float-share{display:none}}
.fshare-btn{width:38px;height:38px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s,opacity .2s;border-radius:0}
.fshare-btn:hover{transform:scale(1.08);opacity:.9}
#float-nlm{width:40px;height:40px;border:1.5px solid rgba(10,10,10,.15);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;border-radius:0}
#float-nlm:hover{border-color:#4285F4;transform:scale(1.1)}

/* ══ INLINE TOC ════════════════════════════════════════════════ */
#inline-toc{background:#F8F6F3;border:1px solid rgba(10,10,10,.08);border-left:4px solid #E8176A;padding:22px 28px;margin-bottom:36px}
#inline-toc .toc-title{font-family:Raleway,sans-serif;font-size:9px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:#E8176A;margin-bottom:12px}
#inline-toc .toc-item{display:flex;align-items:center;gap:10px;padding:7px 0;cursor:pointer;font-family:DM Sans,sans-serif;font-size:.93rem;color:rgba(10,10,10,.85);border-bottom:1px solid rgba(10,10,10,.06);transition:color .2s}
#inline-toc .toc-item:last-child{border-bottom:none}
#inline-toc .toc-item:hover{color:#E8176A}
#inline-toc .toc-num{font-family:Raleway,sans-serif;font-size:9px;font-weight:700;color:rgba(232,23,106,.5);width:20px;flex-shrink:0}

/* ══ AUDIO PLAYER — PODCAST STYLE ══════════════════════════════ */
#audio-player{background:transparent;padding:0;margin-bottom:32px;display:block;position:relative}
/* gradient moved to inner bar */
#audio-player.show{display:block}/* always visible */
.ap-play{flex-shrink:0}
.ap-skip{transition:opacity .2s}
.ap-skip:hover{opacity:.7}
.ap-label{white-space:nowrap;font-family:Raleway,sans-serif;font-size:8px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(10,10,10,.45);display:flex;align-items:center;gap:8px}
.ap-label #ap-pulse{width:7px;height:7px;background:#E8176A;border-radius:50%;display:inline-block;animation:pulse-p 1.5s ease-in-out infinite}
@keyframes pulse-p{0%,100%{opacity:1}50%{opacity:.3}}
.ap-label #ap-pulse.paused{animation:none;opacity:.3}

/* ══ MID-ARTICLE BANNER ════════════════════════════════════════ */
.mid-banner{margin:3em 0;padding:36px 40px;background:#07080A;position:relative;overflow:hidden}
.mid-banner::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#E8176A,#00D4FF,transparent)}

/* ══ CRITICAL: key elements always visible ══ */
#h-title,#h-excerpt,#h-tags,#h-date,#h-read,#h-tag,#article-body{opacity:1!important;visibility:visible!important;transform:none!important}

/* ══ BLOG SINGLE — IMPROVED ARTICLE TYPOGRAPHY ══════════════════ */
html { font-size: 17px; }
.article-body { font-size: 1.12rem; }
.article-body p {
  font-size: 1.12rem !important;
  line-height: 2.0 !important;
  margin-bottom: 1.7em !important;
  color:#07080A!important;
}
.article-body h3 {
  font-size: 1.35rem !important;
  font-weight: 900 !important;
  margin: 2.6em 0 .8em !important;
  letter-spacing: -.3px !important;
}
.pullquote p { font-size: 1.45rem !important; line-height: 1.7 !important; }
#h-title { font-size: clamp(2.2rem,5vw,4rem) !important; }
#h-excerpt { font-size: 1.12rem !important; line-height: 1.95 !important; }

/* Responsive article layout */
@media(max-width:1100px) {
  .layout-cols { grid-template-columns: 1fr !important; }
  .sidebar-col { display: none !important; }
}
@media(max-width:768px) {
  .hero-pad { padding: 110px 24px 52px !important; }
  .body-pad { padding: 32px 24px !important; }
  .layout-cols { padding: 36px 0 56px !important; }
  [style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
  [style*="display:grid;grid-template-columns:repeat(3"] { grid-template-columns: 1fr !important; }
  .article-body p { font-size: 1.05rem !important; }
  .article-body h3 { font-size: 1.2rem !important; }
}
@media(max-width:480px) {
  [style*="grid-template-columns:1fr 1fr;gap:24px"] { grid-template-columns: 1fr !important; }
}


/* ══ PREMIUM FLOATING NAVBAR ══════════════════════════════════════════ */
#site-nav.nav-premium {
  position: fixed;
  top: 20px;
  left: 0; right: 0;
  z-index: 1000;
  display: flex;
  justify-content: center;
  pointer-events: none;
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.nav-premium .nav-inner {
  pointer-events: auto;
  background: rgba(10,12,16,0.75);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow: 0 8px 40px rgba(0,0,0,0.3), 0 0 0 1px rgba(232,23,106,0.08);
  border-radius: 100px;
  padding: 7px 10px 7px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  width: 92%;
  max-width: 1020px;
}
.nav-text-brand {
  font-family: 'Raleway', sans-serif;
  font-size: 15px;
  font-weight: 900;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.5px;
  display: inline-flex;
  align-items: baseline;
  flex-shrink: 0;
  white-space: nowrap;
}
.brand-accent {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  color: #E8176A;
  font-weight: 700;
  margin-left: 3px;
  font-size: 19px;
  line-height: 1;
}
.nav-desktop-links {
  display: flex;
  align-items: center;
  gap: 28px;
  flex: 1;
  justify-content: center;
}
.nav-nlink {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,0.6);
  text-decoration: none;
  transition: color 0.25s;
  position: relative;
  padding: 5px 0;
  white-space: nowrap;
}
.nav-nlink::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: #E8176A;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease;
}
.nav-nlink:hover { color: #fff; }
.nav-nlink:hover::after, .nav-nlink.active::after { transform: scaleX(1); transform-origin: left; }
.nav-nlink.active { color: #fff; }
.nav-actions { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.nav-prm-cta {
  background: linear-gradient(135deg, #E8176A 0%, #c41259 100%);
  color: #fff !important;
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 700;
  padding: 10px 22px;
  border-radius: 100px;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  transition: transform 0.25s, box-shadow 0.25s, opacity 0.25s;
  white-space: nowrap;
}
.nav-prm-cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(232,23,106,0.4);
  opacity: 0.95;
}
.nav-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 38px; height: 38px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 50%;
  cursor: pointer;
  pointer-events: auto;
  transition: background 0.2s;
}
.nav-hamburger:hover { background: rgba(232,23,106,0.15); }
.nav-hamburger span {
  display: block;
  width: 14px; height: 1.5px;
  background: #fff;
  border-radius: 2px;
  transition: all 0.3s cubic-bezier(0.4,0,0.2,1);
}
.nav-hamburger.open span:nth-child(1) { transform: translateY(3.25px) rotate(45deg); }
.nav-hamburger.open span:nth-child(2) { transform: translateY(-3.25px) rotate(-45deg); }
/* Mobile full-screen overlay */
.nav-mobile-overlay {
  position: fixed;
  inset: 0;
  background: rgba(5,6,10,0.97);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  z-index: 999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}
.nav-mobile-overlay.open {
  opacity: 1;
  pointer-events: auto;
}
.mob-menu-inner {
  display: flex;
  flex-direction: column;
  gap: 28px;
  text-align: center;
  transform: translateY(24px);
  transition: transform 0.4s cubic-bezier(0.22,1,0.36,1);
}
.nav-mobile-overlay.open .mob-menu-inner { transform: translateY(0); }
.mob-nlink {
  font-family: 'Raleway', sans-serif;
  font-size: 28px;
  font-weight: 900;
  color: rgba(255,255,255,0.45);
  text-decoration: none;
  transition: color 0.25s, transform 0.25s;
  display: block;
}
.mob-nlink:hover, .mob-nlink.active {
  color: #fff;
  transform: scale(1.04);
}
@media (max-width: 900px) {
  .nav-desktop-links, .nav-prm-cta { display: none !important; }
  .nav-hamburger { display: flex !important; }
  .nav-premium .nav-inner { padding: 6px 14px 6px 22px; gap: 12px; }
}
/* ═══════════════════════════════════════════════════════════════════════ */

/* Navbar + mega menu + mobile menu (from the blog-single page) */




/* ══ NAV V2 ══ */
/* ══ SCROLL PROGRESS ══ */
#scroll-progress{position:fixed;top:0;left:0;height:2px;background:var(--pink);z-index:9999;width:0%;pointer-events:none;transition:width .1s linear;}

/* ══════════════════════════════════════
   NAV PILL
══════════════════════════════════════ */
#site-nav{position:fixed;top:20px;left:0;right:0;z-index:1000;display:flex;justify-content:center;pointer-events:none;transition:transform .4s cubic-bezier(.22,1,.36,1);}
#site-nav.nav-hidden{transform:translateY(-150%);}

.nav-inner{
  pointer-events:auto;
  background:rgba(8,9,14,0.84);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid rgba(255,255,255,0.09);
  box-shadow:0 8px 40px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05);
  border-radius:100px;
  padding:6px 8px 6px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:0;
  width:92%;max-width:1080px;position:relative;
}
.nav-inner::after{content:'';position:absolute;inset:-1px;border-radius:100px;background:linear-gradient(135deg,rgba(232,23,106,.12),transparent 55%);opacity:0;transition:opacity .4s;pointer-events:none;}
.nav-inner:hover::after{opacity:1;}

/* Logo */
.nav-logo{font-family:'Raleway',sans-serif;font-size:15px;font-weight:900;color:#fff;text-decoration:none;letter-spacing:.5px;display:inline-flex;align-items:baseline;flex-shrink:0;white-space:nowrap;margin-right:32px;}
.nav-logo .logo-accent{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--pink);font-weight:700;margin-left:2px;font-size:20px;line-height:1;}

/* Desktop links container */
.nav-links{display:flex;align-items:center;gap:2px;flex:1;}

/* Individual nav item wrapper */
.nav-item{position:relative;}

/* Nav link / button base */
.nav-link{display:inline-flex;align-items:center;gap:5px;font-family:'DM Sans',sans-serif!important;font-size:13px;font-weight:600;color:rgba(255,255,255,.58);text-decoration:none;padding:8px 13px;border-radius:100px;transition:color .2s,background .2s;white-space:nowrap;cursor:pointer;background:transparent;border:none;letter-spacing:0!important;text-transform:none!important;}
.nav-link:hover{color:#fff;background:rgba(255,255,255,.07);}
.nav-link.active{color:#fff;}
/* Active indicator dot */
.nav-item.is-active .nav-link{color:#fff;}
.nav-item.is-active .nav-link::after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:var(--pink);border-radius:50%;}
/* Chevron */
.nav-chevron{width:12px;height:12px;flex-shrink:0;transition:transform .3s cubic-bezier(.22,1,.36,1);opacity:.45;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;}
.nav-item.open .nav-link .nav-chevron{transform:rotate(180deg);opacity:1;}
.nav-item.open > .nav-link{color:#fff;background:rgba(232,23,106,.1);}

/* CTA pill button */
.nav-cta{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--pink) 0%,#c41259 100%);color:#fff;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;padding:10px 22px;border-radius:100px;text-decoration:none;transition:transform .2s,box-shadow .2s;white-space:nowrap;flex-shrink:0;margin-left:14px;}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(232,23,106,.45);}

/* Hamburger */
.nav-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:50%;cursor:pointer;pointer-events:auto;transition:background .2s;margin-left:8px;flex-shrink:0;}
.nav-hamburger:hover{background:rgba(232,23,106,.15);}
.nav-hamburger span{display:block;width:14px;height:1.5px;background:#fff;border-radius:2px;transition:all .3s cubic-bezier(.4,0,.2,1);}
.nav-hamburger.open span:nth-child(1){transform:translateY(3.25px) rotate(45deg);}
.nav-hamburger.open span:nth-child(2){transform:translateY(-3.25px) rotate(-45deg);}

/* ══════════════════════════════════════
   MEGA MENU BASE
══════════════════════════════════════ */
.mega-menu{
  position:fixed;
  left:50%;transform:translateX(-50%);
  background:rgba(7,8,13,0.97);
  backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);
  border:1px solid rgba(255,255,255,.08);
  border-top:none;
  border-radius:0 0 20px 20px;
  box-shadow:0 28px 80px rgba(0,0,0,.65),0 0 0 1px rgba(232,23,106,.06);
  opacity:0;pointer-events:none;
  transition:opacity .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1);
  z-index:999;
  overflow:hidden;
}
.mega-menu.open{opacity:1;pointer-events:auto;}

/* ── Services mega is wide (2-panel layout) ── */
#mega-services{width:min(92vw,960px);padding-top:74px;}
/* ── Resources mega is narrower ── */
#mega-resources{width:min(92vw,760px);padding-top:74px;}

/* Thin pink line at top of open mega */
.mega-menu::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(232,23,106,.5) 40%,rgba(232,23,106,.5) 60%,transparent 100%);opacity:0;transition:opacity .2s;}
.mega-menu.open::before{opacity:1;}

.mega-menu-inner{padding:28px 28px 28px;}

/* ── Section label ── */
.mega-eyebrow{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:5px;text-transform:uppercase;color:var(--pink);margin-bottom:4px;}
.mega-tagline{font-size:13px;color:rgba(255,255,255,.38);margin-bottom:22px;line-height:1.4;}

/* ── Divider within mega ── */
.mega-divider{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.2);margin:20px 0 10px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.05);}

/* ── Grid helpers ── */
.mega-grid{display:grid;gap:8px;}
.mega-grid-2{grid-template-columns:1fr 1fr;}
.mega-grid-3{grid-template-columns:repeat(3,1fr);}
.mega-grid-4{grid-template-columns:repeat(4,1fr);}

/* ── Mega link card ── */
.mega-link{display:flex;align-items:flex-start;gap:13px;padding:14px 14px;text-decoration:none;border:1px solid rgba(255,255,255,.05);border-radius:12px;transition:background .15s,border-color .15s,transform .15s;position:relative;overflow:hidden;}
.mega-link:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);transform:translateY(-1px);}
/* Top shimmer on hover */
.mega-link::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(232,23,106,.5),transparent);opacity:0;transition:opacity .2s;}
.mega-link:hover::after{opacity:1;}

/* featured = pink wash */
.mega-link.featured{background:rgba(232,23,106,.08);border-color:rgba(232,23,106,.18);}
.mega-link.featured:hover{background:rgba(232,23,106,.13);border-color:rgba(232,23,106,.3);}
/* cyan accent */
.mega-link.accent-cyan{background:rgba(0,212,255,.05);border-color:rgba(0,212,255,.13);}
.mega-link.accent-cyan:hover{background:rgba(0,212,255,.09);border-color:rgba(0,212,255,.25);}

/* Icon box */
.mega-ico{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.mega-ico.pink{background:rgba(232,23,106,.16);}
.mega-ico.cyan{background:rgba(0,212,255,.12);}
.mega-ico.slate{background:rgba(255,255,255,.07);}
.mega-ico.amber{background:rgba(251,191,36,.1);}
.mega-ico.green{background:rgba(34,197,94,.1);}

/* Link text */
.mega-link-title{font-family:'Raleway',sans-serif;font-size:13px;font-weight:700;color:rgba(255,255,255,.88);margin-bottom:3px;line-height:1.3;}
.mega-link.featured .mega-link-title{color:#fff;}
.mega-link-desc{font-size:12px;color:rgba(255,255,255,.38);line-height:1.55;}

/* Badge chips */
.chip{display:inline-block;font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:2px 8px;border-radius:100px;margin-top:6px;}
.chip-pink{background:rgba(232,23,106,.2);color:var(--pink);}
.chip-cyan{background:rgba(0,212,255,.12);color:var(--cyan);}
.chip-green{background:rgba(34,197,94,.15);color:#22c55e;}
.chip-amber{background:rgba(251,191,36,.12);color:#fbbf24;}
.chip-white{background:rgba(255,255,255,.08);color:rgba(255,255,255,.5);}

/* ══ SERVICES MEGA — special 2-column layout ══ */
.svc-layout{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:start;}
@media(max-width:960px){.svc-layout{grid-template-columns:1fr;}}

/* Left: service cards */
.svc-left{}

/* Right: diagnosis CTA panel */
.svc-right{
  background:linear-gradient(160deg,rgba(232,23,106,.13) 0%,rgba(232,23,106,.04) 100%);
  border:1px solid rgba(232,23,106,.22);
  border-radius:14px;
  padding:24px 22px;
  display:flex;flex-direction:column;gap:0;
  position:relative;overflow:hidden;
}
.svc-right::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--pink),transparent);}

.svc-right-eyebrow{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:var(--pink);margin-bottom:12px;}
.svc-right-heading{font-family:'Raleway',sans-serif;font-weight:900;font-size:17px;color:#fff;line-height:1.25;margin-bottom:8px;}
.svc-right-heading em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--pink);font-weight:600;font-size:1.15em;}
.svc-right-body{font-size:13px;color:rgba(255,255,255,.5);line-height:1.65;margin-bottom:18px;}

/* Bullets inside CTA panel */
.svc-right-bullets{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:20px;}
.svc-right-bullets li{font-size:12px;color:rgba(255,255,255,.6);display:flex;align-items:flex-start;gap:8px;line-height:1.5;}
.svc-right-bullets li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--pink);flex-shrink:0;margin-top:5px;}

/* CTA button inside panel */
.svc-cta-btn{display:flex;align-items:center;justify-content:space-between;background:var(--pink);color:#fff;padding:12px 16px;text-decoration:none;transition:background .2s,box-shadow .2s;margin-bottom:10px;}
.svc-cta-btn:hover{background:#c9125c;box-shadow:0 6px 20px rgba(232,23,106,.4);}
.svc-cta-btn-label{font-family:'Raleway',sans-serif;font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;}
.svc-cta-btn-sub{font-size:11px;color:rgba(255,255,255,.65);margin-top:2px;font-family:'DM Sans',sans-serif;}

/* Ghost secondary link */
.svc-cta-ghost{display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.1);padding:10px 14px;text-decoration:none;transition:border-color .2s,background .2s;}
.svc-cta-ghost:hover{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.04);}
.svc-cta-ghost-label{font-family:'Raleway',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.55);}

/* Stat row inside CTA panel */
.svc-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.06);margin:18px 0 20px;}
.svc-stat{background:rgba(7,8,13,.5);padding:12px 14px;}
.svc-stat-num{font-family:'Raleway',sans-serif;font-weight:900;font-size:20px;color:#fff;line-height:1;}
.svc-stat-num span{color:var(--pink);}
.svc-stat-label{font-size:10px;color:rgba(255,255,255,.3);margin-top:3px;line-height:1.3;}

/* Availability badge */
.avail-row{display:flex;align-items:center;gap:7px;font-size:11px;color:rgba(255,255,255,.3);margin-top:10px;}
.avail-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:pulse-g 2s ease-in-out infinite;flex-shrink:0;}
@keyframes pulse-g{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.5);}50%{box-shadow:0 0 0 5px rgba(34,197,94,0);}}

/* ── Mega footer row ── */
.mega-footer{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.mega-footer-link{display:inline-flex;align-items:center;gap:7px;font-family:'Raleway',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--pink);text-decoration:none;transition:gap .2s;}
.mega-footer-link:hover{gap:11px;}
.mega-footer-note{font-size:11px;color:rgba(255,255,255,.22);}

/* ══ RESOURCES MEGA ══ */
/* Top strip with resource type tabs feel */
.res-type-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px;}
.res-type-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 10px;text-decoration:none;border:1px solid rgba(255,255,255,.07);border-radius:12px;transition:background .15s,border-color .15s,transform .15s;text-align:center;}
.res-type-card:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.13);transform:translateY(-2px);}
.res-type-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;}
.res-type-label{font-family:'Raleway',sans-serif;font-size:12px;font-weight:800;color:rgba(255,255,255,.8);}
.res-type-sub{font-size:11px;color:rgba(255,255,255,.32);line-height:1.4;}

/* featured resource type (Blog) */
.res-type-card.res-featured{background:rgba(232,23,106,.07);border-color:rgba(232,23,106,.18);}
.res-type-card.res-featured:hover{background:rgba(232,23,106,.12);border-color:rgba(232,23,106,.28);}
.res-type-card.res-featured .res-type-label{color:#fff;}

/* Latest articles strip */
.res-latest{margin-top:4px;}
.res-latest-label{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.22);margin-bottom:10px;}
.res-article-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.res-article{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;text-decoration:none;border:1px solid rgba(255,255,255,.05);border-radius:10px;transition:background .15s,border-color .15s;}
.res-article:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);}
.res-article-cat{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:4px;}
.res-article-cat.pink{color:var(--pink);}
.res-article-cat.cyan{color:var(--cyan);}
.res-article-cat.amber{color:#fbbf24;}
.res-article-title{font-size:12px;font-weight:500;color:rgba(255,255,255,.75);line-height:1.45;}

/* ══════════════════════════════════════
   MOBILE OVERLAY
══════════════════════════════════════ */
.mob-overlay{position:fixed;inset:0;background:rgba(5,6,10,.98);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);z-index:998;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .35s ease;overflow-y:auto;}
.mob-overlay.open{opacity:1;pointer-events:auto;}
.mob-inner{max-width:480px;margin:0 auto;padding:96px 28px 52px;width:100%;transform:translateY(20px);transition:transform .4s cubic-bezier(.22,1,.36,1);}
.mob-overlay.open .mob-inner{transform:translateY(0);}

.mob-section{margin-bottom:32px;}
.mob-section-lbl{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:5px;text-transform:uppercase;color:var(--pink);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.06);}

.mob-link{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.05);text-decoration:none;transition:padding-left .2s;}
.mob-link:hover{padding-left:6px;}
.mob-link-l{display:flex;flex-direction:column;}
.mob-link-name{font-family:'Raleway',sans-serif;font-size:16px;font-weight:800;color:rgba(255,255,255,.78);margin-bottom:2px;transition:color .2s;}
.mob-link:hover .mob-link-name{color:#fff;}
.mob-link-sub{font-size:11px;color:rgba(255,255,255,.28);}
.mob-arrow{color:rgba(255,255,255,.18);transition:color .2s,transform .2s;flex-shrink:0;}
.mob-link:hover .mob-arrow{color:var(--pink);transform:translateX(4px);}

/* Diagnosis CTA block in mobile */
.mob-diagnosis{background:rgba(232,23,106,.1);border:1px solid rgba(232,23,106,.2);padding:18px;margin:24px 0;position:relative;}
.mob-diagnosis::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--pink);}
.mob-diagnosis-lbl{font-family:'Raleway',sans-serif;font-size:8px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--pink);margin-bottom:8px;}
.mob-diagnosis-h{font-family:'Raleway',sans-serif;font-weight:900;font-size:15px;color:#fff;margin-bottom:6px;line-height:1.3;}
.mob-diagnosis-p{font-size:12px;color:rgba(255,255,255,.45);margin-bottom:14px;line-height:1.55;}
.mob-diagnosis-btn{display:flex;align-items:center;justify-content:space-between;background:var(--pink);color:#fff;padding:11px 14px;text-decoration:none;}
.mob-diagnosis-btn span{font-family:'Raleway',sans-serif;font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;}

.mob-cta-row{display:flex;gap:10px;flex-wrap:wrap;padding-top:24px;border-top:1px solid rgba(255,255,255,.06);}
.mob-btn-primary{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--pink);color:#fff;font-family:'Raleway',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:14px;text-decoration:none;transition:background .2s;}
.mob-btn-primary:hover{background:#c9125c;}
.mob-btn-ghost{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.5);font-family:'Raleway',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:14px 18px;text-decoration:none;transition:border-color .2s,color .2s;}
.mob-btn-ghost:hover{border-color:var(--pink);color:var(--pink);}

/* ══ RESPONSIVE ══ */
@media(max-width:900px){
  .nav-links,.nav-cta{display:none!important;}
  .nav-hamburger{display:flex!important;}
  .nav-inner{padding:6px 12px 6px 22px;gap:8px;}
}
@media(max-width:700px){
  .svc-layout{grid-template-columns:1fr;}
  .res-type-row{grid-template-columns:1fr 1fr;}
  .res-article-row{grid-template-columns:1fr;}
  .mega-grid-3{grid-template-columns:1fr 1fr;}
}

/* ══ DEMO PAGE ══ */
