/* ==========================================================================
   faq.php — page stylesheet
   Everything that used to be written inside the page (<style> blocks and
   style="" attributes) lives here, in the original cascade order:
     1. Page styles — formerly the <style> block in <head>
     2. DD-INDEX-HEADER-FOOTER (<style id="dd-index-header-footer">)
     3. DD-RESPONSIVE-FIX (<style id="dd-responsive-fix">)
     4. DD-LOC-MENU (<style id="dd-loc-menu">)
     5. Components — formerly inline style="" attributes and style-changing hover/focus handlers
     6. Fixes — deliberate corrections of pre-existing bugs (listed there)
   ========================================================================== */

/* ==========================================================================
   1. Page styles — formerly the <style> block in <head>
   ========================================================================== */
/* ═══════════════════════════════════════════
   FAQ PAGE — HERO BANNER  (themed: blue-purple)
═══════════════════════════════════════════ */
.faq-page-hero {
  position: relative;
  background: linear-gradient(135deg, #2e2aff 0%, #2e2aff 60%, #2e2aff 100%);
  padding: 160px 24px 90px;
  overflow: hidden;
  text-align: center;
}
.faq-page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 50% at 50% 0%, rgba(200,255,0,.12) 0%, transparent 70%),
    radial-gradient(ellipse 40% 30% at 80% 80%, rgba(151,125,255,.15) 0%, transparent 60%);
  pointer-events: none;
}
.faq-page-hero-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}
.faq-page-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(200,255,0,.12);
  border: 1px solid rgba(200,255,0,.3);
  border-radius: 100px;
  padding: 6px 18px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #C8FF00;
  margin-bottom: 24px;
}
.faq-page-hero-eyebrow-dot {
  width: 6px; height: 6px;
  background: #C8FF00;
  border-radius: 50%;
  animation: heroEyebrowPulse 2s ease-in-out infinite;
}
@keyframes heroEyebrowPulse {
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.5;transform:scale(.7)}
}
.faq-page-hero-title {
  font-size: clamp(42px, 7vw, 80px);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -.03em;
  color: #fff;
  margin-bottom: 20px;
}
.faq-page-hero-title span { color: #C8FF00; }
.faq-page-hero-sub {
  max-width: 560px;
  margin: 0 auto 40px;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.7;
  color: rgba(255,255,255,.68);
}
.faq-page-hero-stats {
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}
.faq-page-hero-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.faq-page-hero-stat-val {
  font-size: 28px;
  font-weight: 900;
  color: #fff;
  letter-spacing: -.02em;
}
.faq-page-hero-stat-val span { color: #C8FF00; }
.faq-page-hero-stat-lbl {
  font-size: 12px;
  font-weight: 600;
  color: rgba(255,255,255,.5);
  text-transform: uppercase;
  letter-spacing: .08em;
}

/* breadcrumb */
.faq-breadcrumb {
  position: absolute;
  top: 110px; left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 500;
  color: rgba(255,255,255,.45);
  white-space: nowrap;
  z-index: 2;
}
.faq-breadcrumb a { color: rgba(255,255,255,.55); text-decoration: none; transition: color .2s; }
.faq-breadcrumb a:hover { color: #C8FF00; }
.faq-breadcrumb-sep { opacity: .4; }
.faq-breadcrumb-current { color: #C8FF00; font-weight: 700; }

/* ═══════════════════════════════════════════
   FAQ SECTION — override dark theme to light
═══════════════════════════════════════════ */
.faq-section {
  background: #ffffff !important;
}
.faq-orb-l, .faq-orb-r {
  background: radial-gradient(circle, rgba(0,51,255,.06) 0%, transparent 70%) !important;
}

/* Category tabs */
.faq-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 40px;
}
.faq-tab {
  padding: 8px 22px;
  background: #F2E6EE;
  border: 1px solid rgba(151,125,255,.2);
  border-radius: 100px;
  color: rgba(30,41,59,.6);
  font-size: 13px;
  font-weight: 700;
  font-family: 'Manrope', sans-serif;
  cursor: pointer;
  transition: all .25s;
}
.faq-tab:hover {
  border-color: rgba(0,51,255,.35);
  color: #0033FF;
  background: rgba(0,51,255,.06);
}
.faq-tab.active {
  background: linear-gradient(135deg, #0033FF 0%, #0B00AB 100%);
  border-color: #0033FF;
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(0,51,255,.25);
}

/* FAQ Item */
.faq-item {
  background: #ffffff !important;
  border: 1px solid rgba(151,125,255,.15) !important;
  border-radius: 16px !important;
  margin-bottom: 12px !important;
  overflow: hidden;
  transition: border-color .25s, box-shadow .25s !important;
  box-shadow: 0 2px 10px rgba(0,51,255,.04) !important;
}
.faq-item:hover {
  border-color: rgba(0,51,255,.25) !important;
  box-shadow: 0 6px 24px rgba(0,51,255,.09) !important;
}
.faq-item.open {
  border-color: rgba(0,51,255,.3) !important;
  box-shadow: 0 8px 32px rgba(0,51,255,.12) !important;
}

/* Question row */
.faq-question {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 22px 28px !important;
  cursor: pointer !important;
  background: transparent !important;
  border: none !important;
  width: 100% !important;
}
.faq-question:hover { background: rgba(0,51,255,.02) !important; }

.faq-q-num {
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #0033FF !important;
  letter-spacing: .1em !important;
  flex-shrink: 0 !important;
  opacity: .7;
}
.faq-q-text {
  flex: 1 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  line-height: 1.4 !important;
  text-align: left !important;
}
.faq-q-icon {
  width: 28px; height: 28px;
  flex-shrink: 0;
  border-radius: 50%;
  background: rgba(0,51,255,.08);
  border: 1px solid rgba(0,51,255,.15);
  display: flex; align-items: center; justify-content: center;
}
.faq-q-icon svg {
  width: 14px; height: 14px;
  stroke: #0033FF; stroke-width: 2.5;
  fill: none;
  transition: transform .3s;
}

/* Answer */
.faq-answer-wrap {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height .4s cubic-bezier(.4,0,.2,1), opacity .3s ease;
}
.faq-answer {
  padding: 0 28px 24px 28px;
  color: rgba(30,41,59,.7) !important;
  font-size: 14.5px;
  line-height: 1.75;
}
.faq-answer p { color: rgba(30,41,59,.7) !important; margin-bottom: 10px; }
.faq-answer strong { color: #1e293b !important; }
.faq-answer em { color: rgba(30,41,59,.8) !important; }

/* Highlighted text */
.faq-hl {
  color: #0033FF !important;
  font-weight: 700 !important;
  background: rgba(0,51,255,.06) !important;
  padding: 1px 6px !important;
  border-radius: 4px !important;
}

/* Bullet list */
.faq-bullets {
  padding-left: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
.faq-bullets li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: rgba(30,41,59,.7) !important;
  padding-left: 0 !important;
}
.faq-bullets li::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #0033FF;
  flex-shrink: 0;
  margin-top: 7px;
}

/* Answer divider */
.faq-answer-divider {
  height: 1px;
  background: rgba(151,125,255,.1);
  margin: 16px 0;
}

/* Bottom CTA in FAQ */
.faq-bottom {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 16px !important;
  margin-top: 48px !important;
  padding: 36px !important;
  background: rgba(0,51,255,.04) !important;
  border: 1px solid rgba(0,51,255,.12) !important;
  border-radius: 16px !important;
}
.faq-bottom-text {
  font-size: 15px !important;
  color: rgba(30,41,59,.65) !important;
  text-align: center !important;
}
.faq-contact-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 12px 28px !important;
  background: linear-gradient(135deg, #0033FF 0%, #0B00AB 100%) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  border-radius: 100px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  transition: all .3s !important;
  box-shadow: 0 4px 16px rgba(0,51,255,.3) !important;
}
.faq-contact-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(0,51,255,.4) !important;
}
.faq-contact-btn svg {
  width: 14px; height: 14px;
  stroke: #ffffff !important; stroke-width: 2.5; fill: none;
}

/* ═══════════════════════════════════════════
   CONTACT CTA BAND  (themed: blue gradient)
═══════════════════════════════════════════ */
.faq-cta-band {
  background: linear-gradient(135deg, #2e2aff 0%, #2e2aff 60%, #2e2aff 100%);
  border-top: none;
  padding: 80px 24px;
}
.faq-cta-band-inner {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  flex-wrap: wrap;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 24px;
  padding: 48px 52px;
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(10px);
}
.faq-cta-band-inner::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(200,255,0,.5), transparent);
}
.faq-cta-band-glow {
  position: absolute;
  top: -60px; right: -60px;
  width: 220px; height: 220px;
  background: radial-gradient(circle, rgba(200,255,0,.15) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}
.faq-cta-band-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(200,255,0,.12);
  border: 1px solid rgba(200,255,0,.3);
  border-radius: 100px;
  padding: 4px 14px;
  font-size: 11px;
  font-weight: 700;
  color: #C8FF00;
  letter-spacing: .07em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.faq-cta-band-dot {
  width: 5px; height: 5px;
  background: #C8FF00;
  border-radius: 50%;
}
.faq-cta-band-heading {
  font-size: 26px;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -.02em;
  line-height: 1.2;
  margin-bottom: 8px;
}
.faq-cta-band-sub {
  font-size: 14px;
  color: rgba(255,255,255,.6);
  font-weight: 500;
  line-height: 1.6;
}
.faq-cta-band-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  flex-shrink: 0;
}
.faq-cta-band-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #C8FF00;
  color: #030303;
  font-family: inherit;
  font-size: 14px;
  font-weight: 800;
  padding: 14px 28px;
  border-radius: 100px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: transform .2s, box-shadow .2s;
}
.faq-cta-band-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(200,255,0,.35);
}
.faq-cta-band-btn svg { width: 14px; height: 14px; stroke: #030303; stroke-width: 2.5; fill: none; }
.faq-cta-band-note {
  font-size: 12px;
  color: rgba(255,255,255,.45);
  font-weight: 500;
}

/* Utility overrides */
.faq-see-all-wall { display: none !important; }
.faq-item-hidden { display: block !important; }
.faq-item-blur .faq-blur-overlay,
.faq-item-blur .faq-blur-frost,
.faq-item-special .faq-blur-overlay,
.faq-item-special .faq-blur-frost { display: none !important; }
.faq-item-blur .faq-answer-clamp,
.faq-item-special .faq-answer-clamp {
  max-height: none !important;
  overflow: visible !important;
}
.faq-see-more-wrap { display: none !important; }

@media (max-width: 640px) {
  .faq-page-hero { padding: 140px 20px 60px; }
  .faq-page-hero-stats { gap: 24px; }
  .faq-cta-band-inner { padding: 36px 28px; flex-direction: column; align-items: flex-start; }
  .faq-cta-band-actions { align-items: flex-start; }
  .faq-breadcrumb { top: 88px; font-size: 12px; }
  .faq-question { padding: 18px 20px !important; }
  .faq-answer { padding: 0 20px 20px !important; }
}
.nav-links a{
  background:rgb(255 255 255 / 25%);
}

/* ==========================================================================
   2. DD-INDEX-HEADER-FOOTER:START — nav, drawer, mega dropdown and footer styled like index.php
   4 of 949 declarations are not !important.
   ========================================================================== */
/* ══════════════════════════════════════════════════════════
   HEADER & FOOTER — MATCHED TO index.php
   Nav, mobile drawer, mega dropdown and footer styling copied
   from the homepage so every page shares one header and footer.
   Delete this block to restore the page-specific styling.
   ══════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════
   HEADER — MATCHED TO index.php  (nav + mobile drawer)
   Values taken from the computed styles of index.php so the
   header looks identical on both pages.
   ══════════════════════════════════════════════════════════ */
:root {
  --nav-h: 69px !important;
}

html body nav {
  height: auto !important;
  padding: 15px 52px !important;
  z-index: 2000 !important;
  background: rgba(46,42,255,.49) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(0,51,255,.08) !important;
  box-shadow: none !important;
}
html body nav .logo {
  font-size: 20px !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
}
html body nav .logo img {
  width: 200px !important;
  height: 35px !important;
}
html body .nav-links {
  gap: 5px !important;
}
html body .nav-links > li {
  position: relative !important;
}
html body .nav-links li a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 7px 17px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(30,41,59,.15) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  background: rgba(255,255,255,.2) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  transition: background .2s, color .2s, border-color .2s !important;
}
html body .nav-links li a:hover {
  background: rgba(0,51,255,.1) !important;
  color: #C8FF00 !important;
}
html body .nav-links li a.active-page {
  color: #C8FF00 !important;
  border-color: rgba(200,255,0,.45) !important;
}
html body .nav-links > li.mega-open > a {
  background: rgba(0,51,255,.1) !important;
  border-color: #C8FF00 !important;
  color: #C8FF00 !important;
}
html body .nav-chevron {
  width: 13px !important;
  height: 13px !important;
  transition: transform .3s cubic-bezier(.22,.68,0,1.2) !important;
}
html body .mega-open .nav-chevron {
  transform: rotate(180deg) !important;
}

html body .nav-right {
  gap: 12px !important;
}
html body .nav-cta {
  padding: 9px 26px !important;
  border-radius: 999px !important;
  border: 1.5px solid #C8FF00 !important;
  background: linear-gradient(135deg, #C8FF00 0%, #9FCC00 100%) !important;
  color: #030303 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  box-shadow: 0 4px 16px rgba(0,51,255,.25) !important;
  transition: all .3s cubic-bezier(.22,.68,0,1.2) !important;
}
html body .nav-cta:hover {
  background: linear-gradient(135deg, #C8FF00 0%, #9FCC00 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(0,51,255,.3) !important;
}

html body .nav-hamburger {
  width: 44px !important;
  height: 44px !important;
  gap: 5px !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0,51,255,.06) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 12px !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 2100 !important;
  transition: background .2s, border-color .2s !important;
}
html body .nav-hamburger:hover {
  background: rgba(151,125,255,.1) !important;
  border-color: rgba(151,125,255,.35) !important;
}
html body .nav-hamburger span {
  width: 20px !important;
  height: 2px !important;
  background: rgba(255,255,255,.85) !important;
  border-radius: 2px !important;
}
html body .nav-hamburger.active span:nth-child(1) {
  transform: translateY(7px) rotate(45deg) !important;
  background: #2E2AFF !important;
}
html body .nav-hamburger.active span:nth-child(2) {
  opacity: 0 !important;
  width: 0 !important;
  transform: none !important;
}
html body .nav-hamburger.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg) !important;
  background: #2E2AFF !important;
}

/* Mobile drawer — index look */
html body .mobile-drawer {
  display: block !important;
  z-index: 2050 !important;
  visibility: hidden !important;
}
html body .mobile-drawer.open {
  visibility: visible !important;
}
html body .mobile-drawer-bg {
  background: rgba(15,23,42,.7) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}
html body .mobile-drawer-content {
  width: min(360px, 88vw) !important;
  background: rgba(0,51,255,.19) !important;
  backdrop-filter: blur(28px) !important;
  -webkit-backdrop-filter: blur(28px) !important;
  border-left: 1px solid rgba(0,51,255,.15) !important;
  padding: 80px 24px 36px !important;
  gap: 0 !important;
  box-shadow: none !important;
}
html body .mn-close-btn {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  width: 38px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 10px !important;
  color: rgba(255,255,255,.8) !important;
  cursor: pointer !important;
  z-index: 10 !important;
  transition: background .2s, border-color .2s, color .2s, transform .2s !important;
}
html body .mn-close-btn:hover {
  background: rgba(200,255,0,.12) !important;
  border-color: rgba(200,255,0,.35) !important;
  color: #C8FF00 !important;
  transform: rotate(90deg) !important;
}

html body .mobile-nav-links {
  gap: 4px !important;
  margin-bottom: 8px !important;
  position: relative !important;
  z-index: 1 !important;
}
html body .mobile-nav-links li a, html body .mobile-nav-links .mn-link-row {
  gap: 12px !important;
  padding: 14px 16px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.07) !important;
  background: #fafbff !important;
  color: #1e293b !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}
html body .mobile-nav-links .mn-link-row {
  color: #000000 !important;
}
html body .mobile-nav-links li a:hover, html body .mobile-nav-links .mn-link-row:hover {
  background: #ffffff !important;
  border-color: rgba(151,125,255,.28) !important;
  color: #2E2AFF !important;
}
html body .mn-icon {
  font-size: 17px !important;
  flex-shrink: 0 !important;
}
html body .mn-arr {
  width: 14px !important;
  height: 14px !important;
  margin-left: auto !important;
  opacity: .28 !important;
  transition: opacity .2s, transform .2s !important;
}
html body .mobile-nav-links li a:hover .mn-arr {
  opacity: 1 !important;
  transform: translateX(3px) !important;
}
html body .mn-chev {
  width: 14px !important;
  height: 14px !important;
  margin-left: auto !important;
  opacity: .4 !important;
}
html body .mn-sub {
  margin: 0 !important;
  padding: 8px 0 4px 0 !important;
  gap: 4px !important;
}

html body .mn-cat-item {
  border-radius: 10px !important;
}
html body .mn-cat-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 11px 14px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(46,42,255,.09) !important;
  background: #ffffff !important;
  cursor: pointer !important;
  width: 100% !important;
  user-select: none !important;
  transition: background .18s, border-color .18s !important;
}
html body .mn-cat-row:hover {
  background: rgba(46,42,255,.04) !important;
  border-color: rgba(46,42,255,.22) !important;
}
html body .mn-cat-item.mn-cat-open .mn-cat-row {
  background: rgba(255,255,255,.78) !important;
  border-color: rgba(46,42,255,.2) !important;
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
html body .mn-cat-icon {
  font-size: 15px !important;
  flex-shrink: 0 !important;
}
html body .mn-cat-label {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  flex: 1 !important;
}
html body .mn-cat-chev {
  width: 13px !important;
  height: 13px !important;
  opacity: .38 !important;
  flex-shrink: 0 !important;
  stroke: #2E2AFF !important;
  transition: transform .28s cubic-bezier(.22,.68,0,1.2), opacity .2s !important;
}
html body .mn-cat-item.mn-cat-open .mn-cat-chev {
  transform: rotate(180deg) !important;
  opacity: .9 !important;
}
html body .mn-cat-pages {
  list-style: none !important;
  display: none !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 4px 0 6px 0 !important;
  border: 1px solid rgba(46,42,255,.12) !important;
  border-top: none !important;
  border-radius: 0 0 10px 10px !important;
  background: rgba(248,249,255,.95) !important;
}
html body .mn-cat-item.mn-cat-open .mn-cat-pages {
  display: flex !important;
}
html body .mn-cat-pages li a {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 9px 16px !important;
  color: #1e293b !important;
  background: transparent !important;
  border-bottom: 1px solid rgba(46,42,255,.05) !important;
  transition: background .15s, color .15s, padding-left .15s !important;
}
html body .mn-cat-pages li:last-child a {
  border-bottom: none !important;
}
html body .mn-cat-pages li a::before {
  content: "" !important;
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: #2E2AFF !important;
  opacity: .28 !important;
  flex-shrink: 0 !important;
  transition: opacity .15s !important;
}
html body .mn-cat-pages li a:hover {
  background: rgba(46,42,255,.05) !important;
  color: #2E2AFF !important;
  padding-left: 20px !important;
}
html body .mn-cat-pages li a:hover::before {
  opacity: 1 !important;
}
html body .mn-cat-pages li.mn-viewpage a {
  color: #2E2AFF !important;
  font-weight: 700 !important;
  font-size: 12.5px !important;
  background: rgba(46,42,255,.05) !important;
  border-top: 1px solid rgba(46,42,255,.1) !important;
  border-bottom: none !important;
  margin-top: 2px !important;
}
html body .mn-cat-pages li.mn-viewpage a::before {
  display: none !important;
}
html body .mn-cat-pages li.mn-viewpage a:hover {
  background: #2E2AFF !important;
  color: #ffffff !important;
  padding-left: 16px !important;
}

html body .mn-divider {
  height: 1px !important;
  background: rgba(0,51,255,.07) !important;
  margin: 16px 0 !important;
  flex-shrink: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}
html body .mn-cta {
  width: 100% !important;
  padding: 14px 14px 14px 24px !important;
  border-radius: 999px !important;
  background: #2E2AFF !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  justify-content: space-between !important;
  flex-shrink: 0 !important;
  position: relative !important;
  z-index: 1 !important;
  transition: background .2s, transform .2s !important;
}
html body .mn-cta:hover {
  background: #0B00AB !important;
  transform: scale(1.02) !important;
}
html body .mn-cta-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  background: rgba(0,0,0,.18) !important;
}
html body .mn-footer {
  margin-top: auto !important;
  padding-top: 24px !important;
  position: relative !important;
  z-index: 1 !important;
  flex-shrink: 0 !important;
}
html body .mn-status-dot {
  width: 7px !important;
  height: 7px !important;
  background: #C8FF00 !important;
}
html body .mn-status-text {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.28) !important;
}

/* Base layout (was provided by each page before) */
html body nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
html body nav .logo {
  display: inline-block !important;
  text-decoration: none !important;
}
html body .nav-links {
  display: flex !important;
  align-items: center !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .nav-right {
  display: flex !important;
  align-items: center !important;
}
html body .nav-hamburger {
  display: none !important;
  flex-direction: column !important;
}
html body .nav-hamburger span {
  display: block !important;
}
html body .mobile-drawer-content {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow-y: auto !important;
  transform: translateX(100%) !important;
  transition: transform .38s cubic-bezier(.22,.68,0,1.2) !important;
}
html body .mobile-drawer.open .mobile-drawer-content {
  transform: translateX(0) !important;
}
html body .mobile-drawer-bg {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  transition: opacity .38s cubic-bezier(.22,.68,0,1.2) !important;
}
html body .mobile-drawer.open .mobile-drawer-bg {
  opacity: 1 !important;
}
html body .mobile-drawer {
  position: fixed !important;
  inset: 0 !important;
  pointer-events: none !important;
}
html body .mobile-drawer.open {
  pointer-events: all !important;
}
/* ── MEGA DROPDOWN — matched to index.php ── */
html body .view-page-btn {
  padding:25px 15px !important;
}
html body .mega-overlay {
  position:fixed !important;
  inset:0 !important;
  z-index:1990 !important;
  background:rgba(100,116,139,.2) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transition:opacity .3s,visibility .3s !important;
}
html body .mega-overlay.open {
  opacity:1 !important;
  visibility:visible !important;
}
/* Mega panel */
html body .mega-panel {
  position:fixed !important;
  top:50px !important;
  left:0 !important;
  right:0 !important;
  z-index:1995 !important;
  background:#f2f3ff !important;
  backdrop-filter:blur(28px) !important;
  border-bottom:1px solid rgba(151,125,255,.1) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(-10px) !important;
  transition:opacity .3s cubic-bezier(.22,.68,0,1.2),transform .3s cubic-bezier(.22,.68,0,1.2),visibility .3s !important;
}
html body .mega-panel.open {
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:all !important;
  transform:translateY(0) !important;
}
html body .mega-wrap {
  max-width:1260px !important;
  margin:0 auto !important;
  display:flex !important;
}
/* Tabs */
html body .mega-tabs {
  width:210px !important;
  flex-shrink:0 !important;
  border-right:1px solid rgba(151,125,255,.08) !important;
  padding:24px 0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}
html body .mega-tab {
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  padding:10px 22px !important;
  cursor:pointer !important;
  border-left:2px solid transparent !important;
  transition:all .2s !important;
}
html body .mega-tab:hover {
  background:rgba(0,51,255,.04) !important;
}
html body .mega-tab.active {
  background:rgba(151,125,255,.07) !important;
  border-left-color:#2E2AFF !important;
}
html body .mega-tab-icon {
  width:32px !important;
  height:32px !important;
  border-radius:9px !important;
  flex-shrink:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:15px !important;
  background:rgba(0,51,255,.07) !important;
  border:1px solid rgba(0,51,255,.14) !important;
  transition:background .2s,border-color .2s !important;
}
html body .mega-tab.active .mega-tab-icon {
  background:rgba(151,125,255,.12) !important;
  border-color:rgba(151,125,255,.25) !important;
}
html body .mega-tab-label {
  font-size:12.5px !important;
  font-weight:700 !important;
  color:rgba(30,41,59,.6) !important;
  transition:color .2s !important;
}
html body .mega-tab.active .mega-tab-label {
  color:#1e293b !important;
}
html body .mega-tab-count {
  margin-left:auto !important;
  font-size:10px !important;
  font-weight:800 !important;
  background:rgba(151,125,255,.12) !important;
  color:#2E2AFF !important;
  border:1px solid rgba(151,125,255,.2) !important;
  border-radius:999px !important;
  padding:2px 7px !important;
}
/* Content */
html body .mega-content {
  flex:1 !important;
  padding:24px 32px !important;
  overflow:hidden !important;
}
html body .mega-pane {
  display:none !important;
  animation:megaFadeIn .22s ease !important;
}
html body .mega-pane.active {
  display:grid !important;
  grid-template-columns:1fr 240px !important;
  gap:24px !important;
}
@keyframes megaFadeIn { from{opacity:0;transform:translateX(6px)} to{opacity:1;transform:translateX(0)} }
html body .mega-pane-heading {
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  color:#0033FF !important;
  margin-bottom:5px !important;
  margin-top:10px !important;
}
html body .mega-links-grid {
  display:grid !important;
  grid-template-columns:repeat(2,1fr) !important;
  gap:5px !important;
}
html body .mega-link {
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:10px 13px !important;
  border-radius:11px !important;
  border:1px solid transparent !important;
  text-decoration:none !important;
  transition:all .2s !important;
}
html body .mega-link:hover {
  background:rgba(151,125,255,.05) !important;
  border-color:rgba(151,125,255,.22) !important;
}
html body .mega-link-dot {
  width:5px !important;
  height:5px !important;
  border-radius:50% !important;
  background:rgba(151,125,255,.35) !important;
  flex-shrink:0 !important;
  margin-top:6px !important;
  transition:background .2s !important;
}
html body .mega-link:hover .mega-link-dot {
  background:#2E2AFF !important;
}
html body .mega-link-name {
  font-size:12.5px !important;
  font-weight:700 !important;
  color:rgba(30,41,59,.8) !important;
  line-height:1 !important;
  margin-bottom:3px !important;
  transition:color .2s !important;
}
html body .mega-link:hover .mega-link-name {
  color:#1e293b !important;
}
html body .mega-link-desc {
  font-size:11px !important;
  color:rgba(30,41,59,.35) !important;
  line-height:1.4 !important;
}
/* Sidebar */
html body .mega-pane-right {
  border-left:1px solid rgba(0,51,255,.1) !important;
  padding-left:22px !important;
}
html body .mega-featured-card {
  border-radius:14px !important;
  padding:18px !important;
  background:linear-gradient(145deg,rgba(151,125,255,.1) 0%,rgba(151,125,255,.04) 60%,transparent 100%) !important;
  border:1px solid rgba(151,125,255,.2) !important;
  margin-bottom:14px !important;
}
html body .mega-featured-label {
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:#2E2AFF !important;
  margin-bottom:8px !important;
}
html body .mega-featured-name {
  font-size:14px !important;
  font-weight:900 !important;
  color:#1e293b !important;
  margin-bottom:5px !important;
}
html body .mega-featured-sub {
  font-size:11.5px !important;
  color:rgba(30,41,59,.48) !important;
  line-height:1.55 !important;
  margin-bottom:12px !important;
}
html body .mega-featured-btn {
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  background:#C8FF00 !important;
  color:#000 !important;
  font-size:12px !important;
  font-weight:800 !important;
  padding:6px 15px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  transition:all .3s cubic-bezier(.22,.68,0,1.2) !important;
}
html body .mega-featured-btn:hover {
  background:#C8FF00 !important;
  transform:scale(1.05) translateY(-1px) !important;
  box-shadow: 0 4px 18px rgba(151,125,255,.35) !important;
}
html body .mega-quick-links {
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}
html body .mega-quick-link {
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:7px 9px !important;
  border-radius:9px !important;
  text-decoration:none !important;
  transition:background .2s !important;
}
html body .mega-quick-link:hover {
  background:rgba(0,51,255,.055) !important;
}
html body .mega-quick-icon {
  font-size:13px !important;
  width:24px !important;
  text-align:center !important;
}
html body .mega-quick-text {
  font-size:12px !important;
  font-weight:600 !important;
  color:rgba(30,41,59,.6) !important;
  transition:color .2s !important;
}
html body .mega-quick-link:hover .mega-quick-text {
  color:#1e293b !important;
}
html body .mega-quick-arr {
  margin-left:auto !important;
  font-size:10px !important;
  color:rgba(151,125,255,.4) !important;
}
/* Bottom bar */
html body .mega-bottom {
  border-top:1px solid rgba(151,125,255,.07) !important;
  background:rgba(151,125,255,.05) !important;
}
html body .mega-bottom-inner {
  max-width:1260px !important;
  margin:0 auto !important;
  padding:12px 32px 12px 242px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
html body .mega-bottom-tags {
  display:flex !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}
html body .mega-bottom-tag {
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  font-size:11px !important;
  font-weight:600 !important;
  color:rgba(30,41,59,.4) !important;
  padding:4px 11px !important;
  border-radius:999px !important;
  border:1px solid rgba(0,51,255,.14) !important;
  background:rgba(0,51,255,.035) !important;
}
html body .mega-bottom-tag b {
  color:#2E2AFF !important;
  font-weight:800 !important;
}
html body .mega-bottom-cta {
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:8px 20px !important;
  border-radius:999px !important;
  background:#C8FF00 !important;
  color:#000 !important;
  font-size:12.5px !important;
  font-weight:800 !important;
  text-decoration:none !important;
  transition:all .3s cubic-bezier(.22,.68,0,1.2) !important;
  white-space:nowrap !important;
}
html body .mega-bottom-cta:hover {
  background:#C8FF00 !important;
  transform:scale(1.05) translateY(-1px) !important;
  box-shadow: 0 4px 18px rgba(151,125,255,.35) !important;
}

/* neutralise the services-page dropdown rules that outrank the copied ones */
html body .mega-panel {
  box-shadow: none !important;
}
html body .mega-wrap {
  max-width: 1260px !important;
  padding: 0 !important;
  gap: normal !important;
}
html body .mega-tabs {
  min-width: 0 !important;
  width: 210px !important;
  padding: 24px 0 !important;
  border-right: 1px solid rgba(151,125,255,.08) !important;
}
html body .mega-tab {
  border-radius: 0 !important;
  color: #000000 !important;
  padding: 10px 22px !important;
  gap: 11px !important;
}
html body .mega-tab:hover {
  background: rgba(0,51,255,.04) !important;
}
html body .mega-tab.active {
  background: rgba(151,125,255,.07) !important;
  color: #000000 !important;
}
html body .mega-tab-icon {
  width: 32px !important;
  height: 32px !important;
  font-size: 15px !important;
}
html body .mega-tab-label {
  flex: none !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
}
html body .mega-tab-count {
  font-size: 10px !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
}
html body .mega-tab.active .mega-tab-count {
  background: rgba(151,125,255,.12) !important;
  color: #2E2AFF !important;
  border: 1px solid rgba(151,125,255,.2) !important;
}
html body .mega-content {
  padding: 24px 32px !important;
}
html body .mega-links-grid {
  margin-bottom: 0 !important;
  gap: 5px !important;
}
html body .mega-link {
  padding: 10px 13px !important;
  border-radius: 11px !important;
}
html body .mega-link-name {
  font-size: 12.5px !important;
}
html body .mega-link-desc {
  font-size: 11px !important;
}
html body .mega-featured-card {
  border-radius: 14px !important;
  padding: 18px !important;
  margin-bottom: 14px !important;
}
html body .mega-featured-label {
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
}
html body .mega-featured-name {
  font-size: 14px !important;
  font-weight: 900 !important;
}
html body .mega-featured-sub {
  font-size: 11.5px !important;
  margin-bottom: 12px !important;
}
html body .mega-quick-link {
  border: none !important;
  border-radius: 9px !important;
  padding: 7px 9px !important;
  gap: 8px !important;
}
html body .mega-quick-icon {
  font-size: 13px !important;
}
html body .mega-quick-text {
  font-size: 12px !important;
}
html body .mega-bottom-cta {
  border: none !important;
}

/* Header breakpoints — same as index.php */
@media (max-width: 1200px) { html body nav {
  padding: 14px 36px !important;
} }
@media (max-width: 1024px) { html body nav {
  padding: 14px 28px !important;
} }
@media (min-width: 769px) and (max-width: 900px) {
  html body nav .nav-links {
  display: flex !important;
}
  html body nav .nav-cta {
  display: inline-flex !important;
}
  html body nav .nav-hamburger {
  display: none !important;
}
}
@media (max-width: 768px) {
  html body nav {
  padding: 13px 20px !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}
  html body nav .logo {
  font-size: 15px !important;
}
  html body nav .nav-links, html body nav .nav-cta {
  display: none !important;
}
  html body nav .nav-hamburger {
  display: flex !important;
}
  html body .mega-panel, html body .mega-overlay {
  display: none !important;
}
}
@media (max-width: 480px) { html body nav {
  padding: 12px 16px !important;
} }

/* ── FOOTER (from assets/style.css) ── */
html body .ft {
  position: relative !important;
  overflow: hidden !important;
  background: #2E2AFF !important;
  border-top: 1px solid rgba(151, 125, 255, .1) !important;
}
html body .ft::before {
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E") !important;
  opacity:.08 !important;
}
html body .ft-grid {
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:linear-gradient(rgba(170,255,0,.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(170,255,0,.015) 1px, transparent 1px) !important;
  background-size:72px 72px !important;
}
html body .ft-orb-l {
  position:absolute !important;
  z-index:0 !important;
  pointer-events:none !important;
  width:600px !important;
  height:600px !important;
  border-radius:50% !important;
  top:-200px !important;
  left:-180px !important;
  background:radial-gradient(circle, rgba(151,125,255,.08) 0%, transparent 60%) !important;
}
html body .ft-orb-r {
  position:absolute !important;
  z-index:0 !important;
  pointer-events:none !important;
  width:460px !important;
  height:460px !important;
  border-radius:50% !important;
  bottom:-100px !important;
  right:-100px !important;
  background:radial-gradient(circle, rgba(151,125,255,.06) 0%, transparent 60%) !important;
}
html body .ft-cta-banner {
  position:relative !important;
  z-index:2 !important;
  border-bottom:1px solid rgb(255 255 255 / 29%) !important;
  padding:72px 52px !important;
}
html body .ft-cta-inner {
  max-width:1180px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:center !important;
  gap:48px !important;
}
html body .ft-cta-left { }
html body .ft-cta-tag {
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:#2E2AFF !important;
  background:#C8FF00 !important;
  border:1px solid rgba(151,125,255,.25) !important;
  padding:5px 14px !important;
  border-radius:999px !important;
  margin-bottom:20px !important;
}
html body .ft-cta-tag-dot {
  width:5px !important;
  height:5px !important;
  border-radius:50% !important;
  background:#2E2AFF !important;
  animation:pulse 2s ease-in-out infinite !important;
}
html body .ft-cta-heading {
  font-size:clamp(32px,4.2vw,56px) !important;
  font-weight:900 !important;
  color:#ffffff !important;
  letter-spacing:-.035em !important;
  line-height:1.06 !important;
  margin-bottom:14px !important;
}
html body .ft-cta-heading span {
  color:#C8FF00 !important;
}
html body .ft-cta-sub {
  font-size:15px !important;
  color:#ffffff !important;
  line-height:1.65 !important;
  max-width:440px !important;
}
html body .ft-cta-right {
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  align-items:flex-end !important;
}
html body .ft-cta-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 16px 36px !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  background: linear-gradient(135deg, #C8FF00 0%, #C8FF00 100%) !important;
  color: #000 !important;
  border: none !important;
  box-shadow: 0 8px 32px rgba(0, 51, 255, .3) !important;
  transition: all .3s cubic-bezier(.22, .68, 0, 1.2) !important;
  white-space: nowrap !important;
}
html body .ft-cta-btn:hover {
  transform: scale(1.05) translateY(-2px) !important;
  box-shadow: 0 14px 48px #C8FF00 !important;
  color: #2E2AFF !important;
  background: linear-gradient(135deg, #C8FF00 0%, #C8FF00 100%) !important;
}
html body .ft-cta-btn svg {
  width:16px !important;
  height:16px !important;
  fill:none !important;
  stroke:#2E2AFF !important;
  stroke-width:2.5 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body .ft-cta-note {
  font-size:12px !important;
  color:#C8FF00 !important;
  font-weight:600 !important;
}
html body .ft-body {
  position:relative !important;
  z-index:2 !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:72px 52px 56px !important;
  border-bottom:1px solid rgb(255 255 255 / 29%) !important;
}
html body .ft-body-grid {
  display:grid !important;
  grid-template-columns:1.8fr 1fr 1fr 1fr 1fr !important;
  gap:52px !important;
}
html body .ft-brand { }
html body .ft-logo {
  font-size:19px !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  color:#C8FF00 !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  display:inline-block !important;
  margin-bottom:20px !important;
}
html body .ft-brand-desc {
  font-size:13.5px !important;
  color:#ffffff !important;
  line-height:1.75 !important;
  margin-bottom:28px !important;
  max-width:240px !important;
}
html body .ft-socials {
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-bottom:32px !important;
}
html body .ft-social {
  width:38px !important;
  height:38px !important;
  border-radius:12px !important;
  flex-shrink:0 !important;
  background:#ffffff1f !important;
  border:1px solid rgba(255,255,255,.09) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
  font-size:15px !important;
  transition:background .28s, border-color .28s, transform .28s !important;
}
html body .ft-social:hover {
  background:rgba(151,125,255,.14) !important;
  border-color:rgba(151,125,255,.35) !important;
  transform:translateY(-3px) scale(1.08) !important;
}
html body .ft-badges {
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
}
html body .ft-badge-item {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:10px 14px !important;
  border-radius:14px !important;
  background:#f2f3ff45 !important;
  border:1px solid rgba(0,51,255,.1) !important;
  transition:background .3s, border-color .3s !important;
}
html body .ft-badge-item:hover {
  background:rgba(151,125,255,.05) !important;
  border-color:rgba(151,125,255,.15) !important;
}
html body .ft-badge-icon {
  font-size:18px !important;
  flex-shrink:0 !important;
}
html body .ft-badge-text {
  font-size:11.5px !important;
  color:#ffffff !important;
  font-weight:700 !important;
  line-height:1.3 !important;
}
html body .ft-badge-text strong {
  display:block !important;
  color:#ffffff !important;
  font-size:12.5px !important;
}
html body .ft-col { }
html body .ft-col-heading {
  font-size:14px !important;
  font-weight:900 !important;
  letter-spacing:.2em !important;
  text-transform:uppercase !important;
  color:#ffffff !important;
  margin-bottom:20px !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}
html body .ft-col-heading::after {
  content:'' !important;
  flex:1 !important;
  height:1px !important;
  background:linear-gradient(90deg, rgba(255,255,255,.07), transparent) !important;
}
html body .ft-col-links {
  list-style:none !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
}
html body .ft-col-link {
  font-size:13.5px !important;
  color:#ffffff !important;
  font-weight:600 !important;
  text-decoration:none !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  transition:color .25s, gap .25s !important;
  position:relative !important;
}
html body .ft-col-link::before {
  content:'' !important;
  width:4px !important;
  height:4px !important;
  border-radius:50% !important;
  background:#2E2AFF !important;
  opacity:0 !important;
  flex-shrink:0 !important;
  transition:opacity .25s, transform .25s !important;
  transform:scale(0) !important;
}
html body .ft-col-link:hover {
  color:#ffffff !important;
  gap:10px !important;
}
html body .ft-col-link:hover::before {
  opacity:1 !important;
  transform:scale(1) !important;
}
html body .ft-col-link-new {
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  padding:2px 7px !important;
  border-radius:999px !important;
  background:rgb(0 3 61 / 32%) !important;
  border:1px solid rgba(151,125,255,.25) !important;
  color:#C8FF00 !important;
  flex-shrink:0 !important;
}
html body .ft-newsletter {
  position:relative !important;
  z-index:2 !important;
  border-top:1px solid rgba(0,51,255,.1) !important;
  padding:40px 52px !important;
}
html body .ft-newsletter-inner {
  max-width:1180px !important;
  margin:0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:32px !important;
  flex-wrap:wrap !important;
}
html body .ft-nl-left { }
html body .ft-nl-label {
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.2em !important;
  text-transform:uppercase !important;
  color:white !important;
  margin-bottom:6px !important;
}
html body .ft-nl-heading {
  font-size:18px !important;
  font-weight:900 !important;
  color:#ffffff !important;
  letter-spacing:-.02em !important;
}
html body .ft-nl-form {
  display:flex !important;
  gap:0 !important;
  align-items:center !important;
  background:#ffffff !important;
  border:1px solid rgba(0,51,255,.18) !important;
  border-radius:999px !important;
  padding:5px 5px 5px 22px !important;
  transition:border-color .3s !important;
  min-width:360px !important;
}
html body .ft-nl-form:focus-within {
  border-color:rgba(151,125,255,.4) !important;
}
html body .ft-nl-input {
  flex:1 !important;
  background:none !important;
  border:none !important;
  outline:none !important;
  font-family:'Manrope',sans-serif !important;
  font-size:13.5px !important;
  color:black !important;
  font-weight:500 !important;
}
html body .ft-nl-input::placeholder {
  color:rgba(30,41,59,.25) !important;
}
html body .ft-nl-btn {
  padding:10px 22px !important;
  border-radius:999px !important;
  cursor:pointer !important;
  font-family:'Manrope',sans-serif !important;
  font-size:13px !important;
  font-weight:800 !important;
  background:linear-gradient(135deg, #3B82F6 0%, #0B00AB 100%) !important;
  color:#ffffff !important;
  border:none !important;
  flex-shrink:0 !important;
  transition:all .3s cubic-bezier(.22,.68,0,1.2) !important;
  box-shadow: 0 2px 12px rgba(0,51,255,.25) !important;
}
html body .ft-nl-btn:hover {
  transform:scale(1.04) translateY(-1px) !important;
  box-shadow:0 4px 18px rgba(151,125,255,.35) !important;
  background:linear-gradient(135deg,  #C8FF00 0%, #C8FF00 100%) !important;
  color:#2E2AFF !important;
}
html body .ft-wordmark-wrap {
  position:relative !important;
  z-index:2 !important;
  padding:0 52px !important;
  overflow:hidden !important;
  border-top:1px solid rgba(255,255,255,.04) !important;
}
html body .ft-wordmark {
  font-size: clamp(72px, 14vw, 180px) !important;
  font-weight: 900 !important;
  color: #00000010 !important;
  letter-spacing: -.04em !important;
  line-height: .88 !important;
  -webkit-text-stroke: 3px rgba(170, 255, 0, 58%) !important;
  text-transform: uppercase !important;
  pointer-events: none !important;
  user-select: none !important;
  transition: -webkit-text-stroke pulse .5s !important;
  white-space: nowrap !important;
}
html body .ft-wordmark-wrap:hover .ft-wordmark {
  -webkit-text-stroke:1px rgba(151,125,255,.22) !important;
  color:#C8FF00 !important;
}
html body .ft-bottom {
  position:relative !important;
  z-index:2 !important;
  border-top:1px solid rgba(0,51,255,.1) !important;
  padding:22px 52px !important;
}
html body .ft-bottom-inner {
  max-width:1180px !important;
  margin:0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  flex-wrap:wrap !important;
}
html body .ft-copyright {
  font-size:12px !important;
  color:#ffffff !important;
  font-weight:600 !important;
  line-height:1.6 !important;
}
html body .ft-copyright span {
  color:#C8FF00 !important;
}
html body .ft-legal-links {
  display:flex !important;
  gap:20px !important;
  flex-wrap:wrap !important;
}
html body .ft-legal-link {
  font-size:12px !important;
  color:rgba(30,41,59,.25) !important;
  font-weight:600 !important;
  text-decoration:none !important;
  transition:color .25s !important;
}
html body .ft-legal-link:hover {
  color:rgba(30,41,59,.7) !important;
}
html body .ft-bottom-right {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}
html body .ft-status-dot {
  width:7px !important;
  height:7px !important;
  border-radius:50% !important;
  background:#2E2AFF !important;
  animation:pulse 2.2s ease-in-out infinite !important;
  flex-shrink:0 !important;
}
html body .ft-status-text {
  font-size:11.5px !important;
  color:#ffffff !important;
  font-weight:600 !important;
}
@media(max-width:1060px) {
html body .ft-body-grid {
  grid-template-columns:1.5fr 1fr 1fr !important;
  gap:40px !important;
}
html body .ft-col:nth-child(4), html body .ft-col:nth-child(5) {
  display:none !important;
}
}
@media(max-width:720px) {
html body .ft-cta-banner {
  padding:52px 24px !important;
}
html body .ft-cta-inner {
  grid-template-columns:1fr !important;
}
html body .ft-cta-right {
  align-items:flex-start !important;
}
html body .ft-body {
  padding:52px 24px 40px !important;
}
html body .ft-body-grid {
  grid-template-columns:1fr 1fr !important;
  gap:32px !important;
}
html body .ft-newsletter {
  padding:32px 24px !important;
}
html body .ft-nl-form {
  min-width:0 !important;
  width:100% !important;
}
html body .ft-newsletter-inner {
  flex-direction:column !important;
  align-items:flex-start !important;
}
html body .ft-wordmark-wrap {
  padding:0 24px !important;
}
html body .ft-bottom {
  padding:20px 24px !important;
}
html body .ft-bottom-inner {
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:12px !important;
}
}
@media(max-width:480px) {
html body .ft-body-grid {
  grid-template-columns:1fr !important;
}
}
@media (max-width: 768px) {
html body .ft-cta-banner {
  padding: 48px 20px !important;
}
html body .ft-cta-inner {
  grid-template-columns: 1fr !important;
  gap: 28px !important;
}
html body .ft-cta-right {
  align-items: flex-start !important;
}
html body .ft-body {
  padding: 48px 20px 36px !important;
}
html body .ft-body-grid {
  grid-template-columns: 1fr 1fr !important;
  gap: 28px !important;
}
html body .ft-wordmark-wrap {
  padding: 0 20px !important;
}
html body .ft-bottom {
  padding: 18px 20px !important;
}
html body .ft-newsletter {
  padding: 28px 20px !important;
}
html body .ft-newsletter-inner {
  flex-direction: column !important;
  align-items: flex-start !important;
}
html body .ft-nl-form {
  min-width: 0 !important;
  width: 100% !important;
}
html body .ft-wordmark {
  font-size: 50px !important;
}
}
@media (max-width: 480px) {
html body .ft-body-grid {
  grid-template-columns: 1fr !important;
  gap: 24px !important;
}
html body .ft-cta-heading {
  font-size: clamp(24px,7vw,36px) !important;
}
html body .ft-bottom-inner {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
}
}

/* ==========================================================================
   3. DD-RESPONSIVE-FIX:START — mobile/tablet only (max-width: 900px); desktop layout is untouched
   Every declaration is !important.
   ========================================================================== */
/* Readability: minimum text sizes */
@media (max-width: 600px) {
  html body div.mega-featured-label,
  html body div.ft-cta-tag,
  html body span.ft-col-link-new,
  html body div.ft-nl-label { font-size: 11px !important; }
  html body div.mega-featured-sub,
  html body div.ft-badge-text { font-size: 13px !important; }
  html body div.mega-link-desc,
  html body span.mega-bottom-tag,
  html body span.mega-bottom-tag > b { font-size: 11.5px !important; }
}
@media (min-width: 601px) and (max-width: 900px) {
  html body div.mega-featured-label,
  html body div.ft-cta-tag,
  html body span.ft-col-link-new,
  html body div.ft-nl-label { font-size: 11px !important; }
  html body div.mega-featured-sub,
  html body div.ft-badge-text { font-size: 13px !important; }
  html body div.mega-link-desc,
  html body span.mega-bottom-tag,
  html body span.mega-bottom-tag > b { font-size: 11.5px !important; }
}

/* ==========================================================================
   4. DD-LOC-MENU:START
   Every declaration is !important.
   ========================================================================== */
html body .ddloc-trigger { position: relative !important; }
html body .ddloc-chev { width: 13px !important; height: 13px !important; flex-shrink: 0 !important; margin-left: 4px !important;
  transition: transform .25s cubic-bezier(.22,.68,0,1.2) !important; }
html body .ddloc-trigger[aria-expanded="true"] .ddloc-chev { transform: rotate(180deg) !important; }

/* ── Desktop panel ── */
html body .ddloc-panel {
  position: fixed !important; z-index: 2100 !important; width: 640px !important; max-width: calc(100vw - 24px) !important;
  background: #f2f3ff !important; border: 1px solid rgba(151,125,255,.22) !important; border-radius: 18px !important;
  box-shadow: 0 24px 60px rgba(15,23,42,.18), 0 2px 8px rgba(15,23,42,.06) !important;
  padding: 18px !important; opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;
  transform: translateY(-8px) !important;
  transition: opacity .25s cubic-bezier(.22,.68,0,1.2), transform .25s cubic-bezier(.22,.68,0,1.2), visibility .25s !important;
}
html body .ddloc-panel.ddloc-open { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; transform: translateY(0) !important; }
html body .ddloc-panel * { box-sizing: border-box !important; }
html body .ddloc-group + .ddloc-group { margin-top: 14px !important; }
html body .ddloc-group-label {
  display: block !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: .14em !important;
  text-transform: uppercase !important; color: #2E2AFF !important; margin: 0 0 8px 4px !important; font-family: inherit !important;
}
html body .ddloc-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 4px !important;
  list-style: none !important; margin: 0 !important; padding: 0 !important; }
html body .ddloc-grid.ddloc-grid-2 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
html body .ddloc-grid li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body .ddloc-link {
  display: flex !important; align-items: flex-start !important; gap: 9px !important; padding: 9px 11px !important;
  border-radius: 11px !important; border: 1px solid transparent !important; text-decoration: none !important;
  background: transparent !important; transition: background .2s, border-color .2s !important; width: 100% !important;
}
html body .ddloc-link:hover, html body .ddloc-link:focus-visible {
  background: rgba(151,125,255,.07) !important; border-color: rgba(151,125,255,.24) !important; outline: none !important;
}
html body svg.ddloc-flag { width: 18px !important; height: 13px !important; flex-shrink: 0 !important; margin-top: 1px !important;
  border-radius: 2px !important; box-shadow: 0 0 0 1px rgba(15,23,42,.10) !important; overflow: hidden !important; display: block !important; }
html body .ddloc-acc svg.ddloc-flag { box-shadow: 0 0 0 1px rgba(15,23,42,.12) !important; margin-top: 0 !important; }
html body .ddloc-text { min-width: 0 !important; }
html body .ddloc-name { display: block !important; font-size: 12.5px !important; font-weight: 700 !important; color: rgba(30,41,59,.82) !important;
  line-height: 1.15 !important; margin-bottom: 3px !important; transition: color .2s !important; }
html body .ddloc-link:hover .ddloc-name { color: #1e293b !important; }
html body .ddloc-desc { display: block !important; font-size: 11px !important; font-weight: 400 !important; color: rgba(30,41,59,.42) !important;
  line-height: 1.35 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
html body .ddloc-foot { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important;
  margin-top: 14px !important; padding-top: 12px !important; border-top: 1px solid rgba(151,125,255,.18) !important; }
html body .ddloc-foot-note { font-size: 11px !important; color: rgba(30,41,59,.45) !important; }
html body .ddloc-foot-link { font-size: 11.5px !important; font-weight: 700 !important; color: #2E2AFF !important; text-decoration: none !important; white-space: nowrap !important; }
html body .ddloc-foot-link:hover { text-decoration: underline !important; }

/* ── Mobile / drawer accordion — matches .mn-cat-pages ── */
html body .ddloc-acc {
  list-style: none !important; margin: 6px 0 2px !important; padding: 4px 0 6px !important; display: none !important;
  flex-direction: column !important; gap: 0 !important;
  background: rgba(248,249,255,.97) !important; border: 1px solid rgba(46,42,255,.12) !important;
  border-radius: 10px !important; overflow: hidden !important;
}
html body .ddloc-acc.ddloc-open { display: flex !important; }
html body .ddloc-acc li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body .ddloc-acc .ddloc-link {
  padding: 9px 14px !important; border-radius: 0 !important; border: none !important;
  border-bottom: 1px solid rgba(46,42,255,.05) !important; align-items: center !important; background: transparent !important;
}
html body .ddloc-acc li:last-child .ddloc-link { border-bottom: none !important; }
html body .ddloc-acc .ddloc-name { font-size: 13px !important; font-weight: 600 !important; color: #475569 !important; margin-bottom: 0 !important; }
html body .ddloc-acc .ddloc-desc { display: none !important; }
html body .ddloc-acc .ddloc-link:hover, html body .ddloc-acc .ddloc-link:focus-visible {
  background: rgba(46,42,255,.06) !important; color: #2E2AFF !important;
}
html body .ddloc-acc .ddloc-link:hover .ddloc-name { color: #2E2AFF !important; }

/* ── Narrow screens: the panel becomes a sheet under the header ── */
@media (max-width: 760px) {
  html body .ddloc-panel { width: calc(100vw - 20px) !important; padding: 14px !important; border-radius: 16px !important;
    max-height: calc(100vh - 90px) !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; }
  html body .ddloc-grid, html body .ddloc-grid.ddloc-grid-2 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  html body .ddloc-desc { display: none !important; }
  html body .ddloc-foot { flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; }
}
@media (max-width: 420px) {
  html body .ddloc-grid, html body .ddloc-grid.ddloc-grid-2 { grid-template-columns: 1fr !important; }
}
@media (prefers-reduced-motion: reduce) {
  html body .ddloc-panel, html body .ddloc-chev { transition: none !important; }
}

/* ==========================================================================
   5. COMPONENTS — formerly inline style="" attributes (and hover/focus
   handlers that changed styles), grouped by page section. Kept last so they
   win exactly where the inline styles did; the extra ids/classes in some
   selectors match the specificity of the page rules they have to beat.
   ========================================================================== */

/* ── Page-level ── */
.page-section{min-height:unset;padding-bottom:0;background:linear-gradient(135deg,#0033FF 0%,#0B00AB 100%)}
.page-section-2{padding-top:60px;background:#ffffff !important}

/* ── #hero ── */
.hero-label{color:rgba(51,118,170,.6);border-color:rgba(51,118,170,.2)}

/* ── #faq ── */
.mt-14{margin-top:14px}
.mt-12{margin-top:12px}

/* ── #footer ── */
.ft-col-link.text-c8ff00{color:#C8FF00}

/* ── #sp-form ── */
.sp-form-label{opacity:.5;font-weight:400}
.sp-form-box{display:none;color:#ff6b6b;font-size:13px;margin-bottom:8px;text-align:center}

/* ── #spsuccess ── */
.spsuccess-btn{max-width:200px;margin:0 auto}

/* ==========================================================================
   6. FIXES — deliberate corrections of pre-existing bugs
   ========================================================================== */
/* Footer wordmark (phones narrower than 374px only): "DROW DIGITAL" at 50px is 334px wide, so below 374px its last letter was cut off. It now scales down just enough to fit; 374px and wider are unchanged. */
@media (max-width: 373px) {
  html body .ft-wordmark { font-size: min(50px, calc((100vw - 40px) / 6.7)) !important; }
}

/* DD-ICONS page colours — icons that replaced emojis */
.ft-social { color: #fff; }
.pol-hero-meta-item .dd-ico { color: #C8FF00; }
