/* ==========================================================================
   india.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-BASE (<style id="dd-index-base">)
     3. DD-INDEX-HEADER-FOOTER (<style id="dd-index-header-footer">)
     4. DD-STRATEGY-POPUP (<style id="dd-strategy-popup">)
     5. DD-RESPONSIVE-FIX (<style id="dd-responsive-fix">)
     6. DD-LOC-MENU (<style id="dd-loc-menu">)
     7. Components — formerly inline style="" attributes and style-changing hover/focus handlers
     8. Fixes — deliberate corrections of pre-existing bugs (listed there)
   ========================================================================== */

/* ==========================================================================
   1. Page styles — formerly the <style> block in <head>
   ========================================================================== */
/* ══════════════════════════════════════════════════════════
   INDIA PAGE — page styles
   Header, footer and the strategy popup are styled by the
   shared blocks further down (same as index.php).
   ══════════════════════════════════════════════════════════ */
:root {
  --dd-blue: #2E2AFF;
  --dd-blue-dk: #1d19d6;
  --dd-blue-50: #f3f3ff;
  --dd-blue-100: #e5e4ff;
  --dd-lime: #C8FF00;
  --dd-ink: #0e0f1d;
  --dd-ink-2: #2b2d40;
  --dd-muted: #5c5f77;
  --dd-muted-2: #85889f;
  --dd-bg: #f5f6fc;
  --dd-card: #ffffff;
  --dd-line: rgba(14,15,29,.08);
  --dd-line-2: rgba(14,15,29,.15);
  --dd-danger: #d92d20;
  --dd-ok: #12805c;
  --dd-shadow: 0 1px 2px rgba(14,15,29,.05), 0 24px 56px -24px rgba(38,34,190,.30);
  --dd-shadow-sm: 0 1px 2px rgba(14,15,29,.04), 0 8px 24px -12px rgba(38,34,190,.18);
  --dd-wrap: 1200px;
  --dd-gutter: clamp(16px, 4vw, 40px);
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
/* Base rules match assets/style.css (index.php) so the shared header/footer render identically;
   page typography is scoped to <main>. */
body {
  font-family: 'Manrope', sans-serif;
  color: black;
  background: var(--dd-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
main { font-size: 16px; line-height: 1.6; color: var(--dd-ink); }
main img, main svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; } /* same base rule as assets/style.css (index.php) */
nav .logo img { display: block; } /* index.php renders without a doctype (quirks mode), where the logo has no baseline gap — keeps the header at index's 69px */
main button, main input, main select, main textarea { font: inherit; color: inherit; }
main button { cursor: pointer; }
main :focus-visible { outline: 2px solid var(--dd-blue); outline-offset: 3px; }
[hidden] { display: none !important; }

.dd-wrap { max-width: var(--dd-wrap); margin: 0 auto; padding: 0 var(--dd-gutter); }
.dd-ico { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.dd-kicker { display: inline-block; font-size: 12.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--dd-blue); margin-bottom: 14px; }
.dd-h2 { font-size: clamp(28px, 3.4vw, 42px); font-weight: 800; letter-spacing: -.025em; line-height: 1.12; color: var(--dd-ink); }
.dd-h2 em { font-style: normal; color: var(--dd-blue); }
.dd-lead { font-size: 17px; color: var(--dd-muted); max-width: 640px; margin-top: 14px; }

.dd-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  padding: 7px 7px 7px 24px; min-height: 52px; border-radius: 999px; border: 0;
  font-size: 15px; font-weight: 700; white-space: nowrap;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.dd-btn:hover { transform: translateY(-2px); }
.dd-btn-ico { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; flex-shrink: 0; }
.dd-btn-ico .dd-ico { width: 16px; height: 16px; stroke-width: 2.5; }
.dd-btn--lime { background: var(--dd-lime); color: var(--dd-ink); box-shadow: 0 10px 30px -10px rgba(200,255,0,.7); }
.dd-btn--lime .dd-btn-ico { background: var(--dd-ink); color: var(--dd-lime); }
.dd-btn--blue { background: var(--dd-blue); color: #fff; box-shadow: 0 12px 30px -12px rgba(46,42,255,.8); }
.dd-btn--blue:hover { background: var(--dd-blue-dk); }
.dd-btn--blue .dd-btn-ico { background: var(--dd-lime); color: var(--dd-ink); }
.dd-btn--ghost { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.3); color: #fff; padding: 7px 24px; }
.dd-btn--ghost:hover { background: #fff; color: var(--dd-blue); }

/* ═══ HERO ═══ */
.in-hero {
  position: relative; isolation: isolate; overflow: hidden;
  background: var(--dd-blue); color: #fff;
  padding: calc(69px + clamp(48px, 7vw, 88px)) 0 clamp(64px, 8vw, 104px);
}
.in-hero::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background-image: linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(ellipse 75% 80% at 25% 30%, #000 25%, transparent 75%);
          mask-image: radial-gradient(ellipse 75% 80% at 25% 30%, #000 25%, transparent 75%);
}
.in-hero::after {
  content: ""; position: absolute; z-index: -1; width: 680px; height: 680px; right: -200px; top: -260px; border-radius: 50%;
  background: radial-gradient(circle, rgba(200,255,0,.20), rgba(200,255,0,0) 62%);
}
.in-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 400px); gap: clamp(32px, 6vw, 88px); align-items: center; }
.in-crumbs { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; font-size: 13px; font-weight: 600; color: rgba(255,255,255,.65); margin-bottom: 22px; }
.in-crumbs li + li::before { content: "/"; margin-right: 8px; color: rgba(255,255,255,.35); }
.in-crumbs a { color: rgba(255,255,255,.88); }
.in-crumbs a:hover { color: var(--dd-lime); }
.in-eyebrow {
  display: inline-flex; align-items: center; gap: 9px; padding: 7px 15px; border-radius: 999px;
  background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.22);
  font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
}
.in-flag { width: 22px; height: 14px; border-radius: 3px; overflow: hidden; flex-shrink: 0; box-shadow: 0 0 0 1px rgba(255,255,255,.35); }
.in-title { margin-top: 22px; font-size: clamp(36px, 5.4vw, 64px); font-weight: 800; line-height: 1.04; letter-spacing: -.035em; }
.in-title span { color: var(--dd-lime); }
.in-sub { margin-top: 22px; font-size: clamp(16px, 1.5vw, 18.5px); line-height: 1.7; color: rgba(255,255,255,.82); max-width: 600px; }
.in-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.in-trust { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 30px; list-style: none; font-size: 14px; font-weight: 600; color: rgba(255,255,255,.85); }
.in-trust li { display: inline-flex; align-items: center; gap: 8px; }
.in-trust li::before { content: ""; width: 18px; height: 18px; border-radius: 50%; flex-shrink: 0; background: var(--dd-lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e0f1d' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 11px no-repeat; }

/* UK time card */
.in-time {
  background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.22); border-radius: 24px;
  padding: 26px; -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  box-shadow: 0 30px 60px -30px rgba(10,8,90,.6);
}
.in-time-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.in-status { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; background: rgba(255,255,255,.12); font-size: 13px; font-weight: 700; }
.in-status i { width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,.6); }
.in-status.is-open i { background: var(--dd-lime); animation: inPulse 2s infinite; }
.in-status.is-closed i { background: #ffb4a8; }
@keyframes inPulse { 0% { box-shadow: 0 0 0 0 rgba(200,255,0,.6); } 70% { box-shadow: 0 0 0 8px rgba(200,255,0,0); } 100% { box-shadow: 0 0 0 0 rgba(200,255,0,0); } }
.in-tz { font-size: 12px; font-weight: 700; letter-spacing: .08em; color: rgba(255,255,255,.6); }
.in-clock { margin: 22px 0 4px; font-size: 54px; font-weight: 800; letter-spacing: -.04em; line-height: 1; font-variant-numeric: tabular-nums; }
.in-clock-label { font-size: 14px; color: rgba(255,255,255,.7); }
.in-time-list { margin-top: 22px; border-top: 1px solid rgba(255,255,255,.16); }
.in-time-list div { display: flex; justify-content: space-between; gap: 16px; padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.12); font-size: 14.5px; }
.in-time-list div:last-child { border-bottom: 0; padding-bottom: 0; }
.in-time-list dt { color: rgba(255,255,255,.65); }
.in-time-list dd { font-weight: 700; text-align: right; }

/* ═══ SECTIONS ═══ */
.in-section { padding: clamp(72px, 9vw, 112px) 0 0; }
.in-section-head { max-width: 720px; margin-bottom: clamp(32px, 4vw, 48px); }
.in-section-head.is-center { margin-left: auto; margin-right: auto; text-align: center; }
.in-section-head.is-center .dd-lead { margin-left: auto; margin-right: auto; }

/* Services */
.in-services { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.in-svc {
  position: relative; display: flex; flex-direction: column; gap: 10px; padding: 24px 22px 22px;
  background: var(--dd-card); border: 1px solid var(--dd-line); border-radius: 22px;
  transition: transform .2s, border-color .2s, box-shadow .2s;
}
.in-svc:hover { transform: translateY(-3px); border-color: rgba(46,42,255,.3); box-shadow: var(--dd-shadow); }
.in-svc-ico { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: var(--dd-blue-50); font-size: 23px; line-height: 1; }
.in-svc h3 { margin-top: 6px; font-size: 18px; font-weight: 800; letter-spacing: -.01em; line-height: 1.3; }
.in-svc h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.in-svc p { font-size: 14.5px; color: var(--dd-muted); line-height: 1.65; }
.in-svc-more { margin-top: auto; padding-top: 6px; display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 800; color: var(--dd-blue); }
.in-svc-more .dd-ico { width: 16px; height: 16px; transition: transform .2s; }
.in-svc:hover .in-svc-more .dd-ico { transform: translate(2px, -2px); }
.in-svc:focus-within { outline: 2px solid var(--dd-blue); outline-offset: 3px; }

/* Cities */
.in-cities-band {
  position: relative; overflow: hidden; isolation: isolate;
  display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 64px); align-items: center;
  padding: clamp(28px, 4.5vw, 52px); border-radius: 30px; background: var(--dd-ink); color: #fff;
}
.in-cities-band::after { content: ""; position: absolute; z-index: -1; width: 420px; height: 420px; right: -140px; bottom: -200px; border-radius: 50%; background: radial-gradient(circle, rgba(46,42,255,.95), rgba(46,42,255,0) 70%); }
.in-cities-band .dd-kicker { color: var(--dd-lime); }
.in-cities-band .dd-h2 { color: #fff; }
.in-cities-band .dd-h2 em { color: var(--dd-lime); }
.in-cities-band p { margin-top: 14px; font-size: 16px; line-height: 1.7; color: rgba(255,255,255,.75); }
.in-nations { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; list-style: none; }
.in-nations li { padding: 6px 12px; border-radius: 999px; border: 1px solid rgba(255,255,255,.2); font-size: 13px; font-weight: 700; color: rgba(255,255,255,.85); }
.in-city-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; list-style: none; }
.in-city-list li {
  display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-radius: 16px;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); font-size: 15px; font-weight: 700;
}
.in-city-list li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--dd-lime); box-shadow: 0 0 0 4px rgba(200,255,0,.15); flex-shrink: 0; }

/* Built for the UK */
.in-features { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.in-feature { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; padding: 26px; background: var(--dd-card); border: 1px solid var(--dd-line); border-radius: 22px; }
.in-feature-ico { grid-row: span 2; width: 52px; height: 52px; border-radius: 16px; display: grid; place-items: center; background: var(--dd-blue); color: #fff; }
.in-feature-ico .dd-ico { width: 24px; height: 24px; }
.in-feature h3 { font-size: 18.5px; font-weight: 800; letter-spacing: -.01em; line-height: 1.35; align-self: center; }
.in-feature p { font-size: 15px; color: var(--dd-muted); line-height: 1.7; }
.in-note { margin-top: 16px; font-size: 13.5px; color: var(--dd-muted-2); }

/* Steps */
.in-steps { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.in-step { padding: 26px 24px 28px; background: var(--dd-card); border: 1px solid var(--dd-line); border-radius: 24px; }
.in-step-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 22px; }
.in-step-num { font-size: 13px; font-weight: 800; color: var(--dd-blue); width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--dd-blue-50); }
.in-step:last-child .in-step-num { background: var(--dd-lime); color: var(--dd-ink); }
.in-step-time { font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--dd-muted-2); }
.in-step h3 { font-size: 18.5px; font-weight: 800; letter-spacing: -.01em; line-height: 1.3; }
.in-step p { margin-top: 8px; font-size: 15px; color: var(--dd-muted); }

/* Audit form */
.in-audit { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: clamp(32px, 5vw, 72px); align-items: start; }
.in-audit-list { list-style: none; display: grid; gap: 14px; margin-top: 26px; }
.in-audit-list li { display: flex; gap: 14px; align-items: flex-start; font-size: 15.5px; color: var(--dd-ink-2); }
.in-audit-list li span:first-child { width: 30px; height: 30px; flex-shrink: 0; border-radius: 10px; display: grid; place-items: center; background: var(--dd-blue-50); color: var(--dd-blue); font-weight: 800; font-size: 13px; }
.in-audit-list strong { display: block; color: var(--dd-ink); }
.in-alt { margin-top: 28px; padding: 18px 20px; border-radius: 18px; background: var(--dd-card); border: 1px solid var(--dd-line); font-size: 14.5px; color: var(--dd-muted); }
.in-alt a { color: var(--dd-blue); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }

.in-card { background: var(--dd-card); border: 1px solid var(--dd-line); border-radius: 28px; box-shadow: var(--dd-shadow); padding: clamp(24px, 4vw, 40px); }
.in-form-title { font-size: clamp(22px, 2.4vw, 27px); font-weight: 800; letter-spacing: -.02em; line-height: 1.25; }
.in-form-sub { margin-top: 6px; color: var(--dd-muted); font-size: 15px; }
.in-form { display: grid; gap: 18px; margin-top: 24px; }
.in-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 14px; }
.in-field { display: grid; gap: 8px; align-content: start; min-width: 0; }
.in-label { font-size: 14px; font-weight: 700; color: var(--dd-ink-2); }
.in-label .req { color: var(--dd-blue); }
.in-label .opt { font-weight: 500; color: var(--dd-muted-2); }
.in-input {
  width: 100%; min-height: 52px; padding: 13px 16px; background: #fbfbff;
  border: 1.5px solid var(--dd-line-2); border-radius: 14px; font-size: 16px; color: var(--dd-ink);
  transition: border-color .2s, box-shadow .2s, background-color .2s;
}
.in-input::placeholder { color: #9a9db2; }
.in-input:hover { border-color: rgba(46,42,255,.35); }
.in-input:focus { outline: none; background: #fff; border-color: var(--dd-blue); box-shadow: 0 0 0 4px rgba(46,42,255,.12); }
.in-input[aria-invalid="true"] { border-color: var(--dd-danger); background: #fff8f7; }
select.in-input {
  appearance: none; -webkit-appearance: none; cursor: pointer; padding-right: 44px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E2AFF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 16px center; background-size: 16px;
}
textarea.in-input { min-height: 110px; resize: vertical; line-height: 1.6; }
.in-err { font-size: 13px; font-weight: 600; color: var(--dd-danger); }
.in-err:empty { display: none; }
.in-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.in-alert { padding: 14px 16px; border-radius: 14px; font-size: 14.5px; font-weight: 600; line-height: 1.5; background: #fff4f2; color: #9f1d13; border: 1px solid rgba(217,45,32,.25); }
.in-alert.is-info { background: var(--dd-blue-50); color: #1f1ba8; border-color: rgba(46,42,255,.22); }
.in-alert a { font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.in-form-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.in-privacy { font-size: 13.5px; color: var(--dd-muted); max-width: 300px; }
.in-privacy a { color: var(--dd-blue); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.in-submit[disabled] { opacity: .7; cursor: progress; transform: none; }
.in-spinner { width: 16px; height: 16px; border-radius: 50%; border: 2.5px solid rgba(14,15,29,.25); border-top-color: var(--dd-ink); animation: inSpin .7s linear infinite; }
@keyframes inSpin { to { transform: rotate(360deg); } }
.in-success { text-align: center; padding: 12px 0; }
.in-success:focus { outline: none; }
.in-success-ico { width: 68px; height: 68px; margin: 0 auto 18px; border-radius: 50%; display: grid; place-items: center; background: var(--dd-lime); color: var(--dd-ink); box-shadow: 0 0 0 10px rgba(200,255,0,.18); }
.in-success-ico .dd-ico { width: 30px; height: 30px; stroke-width: 3; }
.in-success h3 { font-size: 24px; font-weight: 800; letter-spacing: -.02em; }
.in-success p { margin: 10px auto 0; max-width: 400px; color: var(--dd-muted); }
.in-success p strong { color: var(--dd-ink); overflow-wrap: anywhere; }

/* FAQ */
.in-faq-grid { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: clamp(32px, 6vw, 80px); align-items: start; }
.in-faq-side { position: sticky; top: 100px; }
.in-faq-list { display: grid; gap: 12px; }
.in-faq { background: var(--dd-card); border: 1px solid var(--dd-line); border-radius: 20px; transition: border-color .2s, box-shadow .2s; }
.in-faq[open] { border-color: rgba(46,42,255,.25); box-shadow: var(--dd-shadow-sm); }
.in-faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 22px; font-size: 16.5px; font-weight: 700; color: var(--dd-ink); }
.in-faq summary::-webkit-details-marker { display: none; }
.in-faq summary:focus-visible { outline-offset: -2px; border-radius: 20px; }
.in-faq-plus { position: relative; width: 30px; height: 30px; border-radius: 50%; background: var(--dd-bg); flex-shrink: 0; transition: background-color .2s; }
.in-faq-plus::before, .in-faq-plus::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; background: var(--dd-ink); border-radius: 2px; }
.in-faq-plus::after { transform: rotate(90deg); transition: transform .25s; }
.in-faq[open] .in-faq-plus { background: var(--dd-blue); }
.in-faq[open] .in-faq-plus::before, .in-faq[open] .in-faq-plus::after { background: #fff; }
.in-faq[open] .in-faq-plus::after { transform: rotate(0deg); }
.in-faq-body { padding: 0 22px 22px; color: var(--dd-muted); font-size: 15.5px; line-height: 1.7; }
.in-faq-note { margin-top: 26px; padding: 22px; border-radius: 20px; background: var(--dd-blue-50); border: 1px solid rgba(46,42,255,.14); }
.in-faq-note p { font-size: 15px; color: var(--dd-ink-2); margin-bottom: 12px; }
.in-faq-note a { font-weight: 800; color: var(--dd-blue); }

.in-more { margin-top: clamp(56px, 7vw, 88px); display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; padding: 22px 26px; border-radius: 20px; border: 1px dashed var(--dd-line-2); font-size: 15px; color: var(--dd-muted); }
.in-more a { font-weight: 800; color: var(--dd-blue); }
.in-spacer { height: clamp(72px, 9vw, 112px); }

/* Footer newsletter feedback line */
html body .dd-ft-nl-msg { flex-basis: 100%; margin: -18px 0 0; font-size: 13.5px; font-weight: 600; color: #C8FF00; text-align: right; }
html body .dd-ft-nl-msg.is-error { color: #ffd0cb; }

/* ═══ RESPONSIVE ═══ */
@media (max-width: 1100px) {
  .in-services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .in-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .in-hero-grid { grid-template-columns: minmax(0, 1fr); }
  .in-time { max-width: 560px; }
  .in-cities-band { grid-template-columns: minmax(0, 1fr); }
  .in-audit { grid-template-columns: minmax(0, 1fr); }
  .in-faq-grid { grid-template-columns: minmax(0, 1fr); }
  .in-faq-side { position: static; }
}
@media (max-width: 680px) {
  .in-ctas .dd-btn { width: 100%; }
  .in-time { padding: 22px; }
  .in-clock { font-size: 42px; margin-top: 16px; }
  .in-services, .in-steps, .in-features { grid-template-columns: minmax(0, 1fr); }
  .in-city-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .in-feature { padding: 22px 20px; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .in-feature-ico { grid-row: auto; margin-bottom: 6px; }
  .in-time-list dd { white-space: nowrap; }
  .in-step { padding: 22px 20px; }
  .in-step-top { margin-bottom: 14px; }
  .in-row { grid-template-columns: minmax(0, 1fr); }
  .in-card { border-radius: 22px; }
  .in-form-foot { flex-direction: column-reverse; align-items: stretch; }
  .in-form-foot .dd-btn { width: 100%; }
  .in-privacy { max-width: none; text-align: center; }
  html body .dd-ft-nl-msg { margin: 0; text-align: left; }
}
@media (max-width: 380px) {
  .in-city-list li { padding: 12px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* ==========================================================================
   2. DD-INDEX-BASE:START — header, drawer, mega menu and footer rules copied from assets/style.css (the file index.php loads)
   990 of 991 declarations are not !important.
   ========================================================================== */
:root {
  --lavender-light: #F2E6EE;
  --lavender: #977DFF;
  --blue-primary: #0033FF;
  --blue-dark: #0B00AB;
  --blue-darkest: #00033D;
  --lime: #2E2AFF;
  --dark: #ffffff;
  --text-muted: rgba(30,41,59,0.65);
}
@keyframes megaFadeIn { from{opacity:0;transform:translateX(6px)} to{opacity:1;transform:translateX(0)} }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.35;transform:scale(1.5)} }
@keyframes mnPulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(1.5)} }
nav { position:fixed; top:0; left:0; right:0; z-index:2000; display:flex; align-items:center; justify-content:space-between; padding:15px 52px; /* background:rgba(10,18,0,0.93); */; backdrop-filter:blur(20px); /* border-bottom:1px solid rgba(151,125,255,0.1); */; }
.view-page-btn { padding:25px 15px; }
.logo { font-size:20px; font-weight:900; letter-spacing:.1em; color:white; text-transform:uppercase; text-decoration:none; }
.nav-links { display:flex; gap:5px; list-style:none; align-items:center; }
.nav-links > li { position:relative; }
.nav-links a { display:inline-flex; align-items:center; gap:5px; padding:7px 17px; border-radius:999px; border:1px solid rgba(30,41,59,.15); color:#ffffff; font-size:13px; font-weight:500; text-decoration:none; background:rgb(255 255 255 / 20%); backdrop-filter:blur(8px); transition:background .2s, color .2s, border-color .2s; }
.nav-links a:hover { background:rgba(0,51,255,.1); color:#C8FF00; }
.nav-links > li.mega-open > a { background:rgba(0,51,255,.1); border-color:#C8FF00; color:#C8FF00; }
.nav-chevron { width:13px; height:13px; transition:transform .3s cubic-bezier(.22,.68,0,1.2); }
.mega-open .nav-chevron { transform:rotate(180deg); }
.nav-cta { padding:9px 26px; border-radius:999px; border:1.5px solid #C8FF00; background:linear-gradient(135deg, #C8FF00 0%, #9FCC00 100%); color:#030303; font-size:13px; font-weight:600; cursor:pointer; font-family:'Manrope',sans-serif; transition:all .3s cubic-bezier(.22,.68,0,1.2); box-shadow: 0 4px 16px rgba(0,51,255,.25); }
.nav-cta:hover { background:linear-gradient(135deg, #C8FF00 0%, #9FCC00 100%); cursor: pointer; transition: all var(--transition-bounce); box-shadow: 0 4px 20px rgba(200, 255, 0, 0.3); }
.mega-overlay { position:fixed; inset:0; z-index:1990; background:rgba(100,116,139,.2); opacity:0; visibility:hidden; transition:opacity .3s,visibility .3s; }
.mega-overlay.open { opacity:1; visibility:visible; }
.mega-panel { position:fixed; top:50px; left:0; right:0; z-index:1995; background:#f2f3ff; backdrop-filter:blur(28px); border-bottom:1px solid rgba(151,125,255,.1); opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-10px); transition:opacity .3s cubic-bezier(.22,.68,0,1.2),transform .3s cubic-bezier(.22,.68,0,1.2),visibility .3s; }
.mega-panel.open { opacity:1; visibility:visible; pointer-events:all; transform:translateY(0); }
.mega-wrap { max-width:1260px; margin:0 auto; display:flex; }
.mega-tabs { width:210px; flex-shrink:0; border-right:1px solid rgba(151,125,255,.08); padding:24px 0; display:flex; flex-direction:column; gap:2px; }
.mega-tab { display:flex; align-items:center; gap:11px; padding:10px 22px; cursor:pointer; border-left:2px solid transparent; transition:all .2s; }
.mega-tab:hover { background:rgba(0,51,255,.04); }
.mega-tab.active { background:rgba(151,125,255,.07); border-left-color:var(--lime); }
.mega-tab-icon { width:32px; height:32px; border-radius:9px; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:15px; background:rgba(0,51,255,.07); border:1px solid rgba(0,51,255,.14); transition:background .2s,border-color .2s; }
.mega-tab.active .mega-tab-icon { background:rgba(151,125,255,.12); border-color:rgba(151,125,255,.25); }
.mega-tab-label { font-size:12.5px; font-weight:700; color:rgba(30,41,59,.6); transition:color .2s; }
.mega-tab.active .mega-tab-label { color:#1e293b; }
.mega-tab-count { margin-left:auto; font-size:10px; font-weight:800; background:rgba(151,125,255,.12); color:var(--lime); border:1px solid rgba(151,125,255,.2); border-radius:999px; padding:2px 7px; }
.mega-content { flex:1; padding:24px 32px; overflow:hidden; }
.mega-pane { display:none; animation:megaFadeIn .22s ease; }
.mega-pane.active { display:grid; grid-template-columns:1fr 240px; gap:24px; }
.mega-pane-heading { font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--blue-primary); margin-bottom:5px; margin-top:10px; }
.mega-links-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:5px; }
.mega-link { display:flex; align-items:flex-start; gap:10px; padding:10px 13px; border-radius:11px; border:1px solid transparent; text-decoration:none; transition:all .2s; }
.mega-link:hover { background:rgba(151,125,255,.05); border-color:rgba(151,125,255,.22); }
.mega-link-dot { width:5px; height:5px; border-radius:50%; background:rgba(151,125,255,.35); flex-shrink:0; margin-top:6px; transition:background .2s; }
.mega-link:hover .mega-link-dot { background:var(--lime); }
.mega-link-name { font-size:12.5px; font-weight:700; color:rgba(30,41,59,.8); line-height:1; margin-bottom:3px; transition:color .2s; }
.mega-link:hover .mega-link-name { color:#1e293b; }
.mega-link-desc { font-size:11px; color:rgba(30,41,59,.35); line-height:1.4; }
.mega-pane-right { border-left:1px solid rgba(0,51,255,.1); padding-left:22px; }
.mega-featured-card { border-radius:14px; padding:18px; background:linear-gradient(145deg,rgba(151,125,255,.1) 0%,rgba(151,125,255,.04) 60%,transparent 100%); border:1px solid rgba(151,125,255,.2); margin-bottom:14px; }
.mega-featured-label { font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:#2E2AFF; margin-bottom:8px; }
.mega-featured-name { font-size:14px; font-weight:900; color:#1e293b; margin-bottom:5px; }
.mega-featured-sub { font-size:11.5px; color:rgba(30,41,59,.48); line-height:1.55; margin-bottom:12px; }
.mega-featured-btn { display:inline-flex; align-items:center; gap:6px; background:#C8FF00; color:#000; font-size:12px; font-weight:800; padding:6px 15px; border-radius:999px; text-decoration:none; transition:all .3s cubic-bezier(.22,.68,0,1.2); }
.mega-featured-btn:hover { background:#C8FF00; transform:scale(1.05) translateY(-1px); box-shadow: 0 4px 18px rgba(151,125,255,.35); }
.mega-quick-links { display:flex; flex-direction:column; gap:3px; }
.mega-quick-link { display:flex; align-items:center; gap:8px; padding:7px 9px; border-radius:9px; text-decoration:none; transition:background .2s; }
.mega-quick-link:hover { background:rgba(0,51,255,.055); }
.mega-quick-icon { font-size:13px; width:24px; text-align:center; }
.mega-quick-text { font-size:12px; font-weight:600; color:rgba(30,41,59,.6); transition:color .2s; }
.mega-quick-link:hover .mega-quick-text { color:#1e293b; }
.mega-quick-arr { margin-left:auto; font-size:10px; color:rgba(151,125,255,.4); }
.mega-bottom { border-top:1px solid rgba(151,125,255,.07); background:rgba(151,125,255,.05); }
.mega-bottom-inner { max-width:1260px; margin:0 auto; padding:12px 32px 12px 242px; display:flex; align-items:center; justify-content:space-between; }
.mega-bottom-tags { display:flex; gap:7px; flex-wrap:wrap; }
.mega-bottom-tag { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:600; color:rgba(30,41,59,.4); padding:4px 11px; border-radius:999px; border:1px solid rgba(0,51,255,.14); background:rgba(0,51,255,.035); }
.mega-bottom-tag b { color:var(--lime); font-weight:800; }
.mega-bottom-cta { display:inline-flex; align-items:center; gap:7px; padding:8px 20px; border-radius:999px; background:#C8FF00; color:#000; font-size:12.5px; font-weight:800; text-decoration:none; transition:all .3s cubic-bezier(.22,.68,0,1.2); white-space:nowrap; }
.mega-bottom-cta:hover { background:#C8FF00; transform:scale(1.05) translateY(-1px); box-shadow: 0 4px 18px rgba(151,125,255,.35); }
.logo-card { flex-shrink:0; display:flex; align-items:center; gap:13px; padding:16px 28px; background:#ffffff26; border:1px solid rgba(0,51,255,.14); border-radius:18px; cursor:default; position:relative; overflow:hidden; transition:background .28s, border-color .28s, transform .28s, box-shadow .28s; }
.logo-card::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(151,125,255,.1),transparent); opacity:0; transition:opacity .3s; }
.logo-card:hover { background:rgba(0,51,255,.08); border-color:rgba(151,125,255,.3); transform:translateY(-4px); box-shadow:0 12px 40px rgba(0,51,255,.12), 0 0 0 1px rgba(151,125,255,.12); }
.logo-card:hover::before { opacity:1; }
.ft { position: relative; overflow: hidden; background: #2E2AFF; border-top: 1px solid rgba(151, 125, 255, .1); }
.ft::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; 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"); opacity:.08; }
.ft-grid { position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(170,255,0,.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(170,255,0,.015) 1px, transparent 1px); background-size:72px 72px; }
.ft-orb-l { position:absolute; z-index:0; pointer-events:none; width:600px; height:600px; border-radius:50%; top:-200px; left:-180px; background:radial-gradient(circle, rgba(151,125,255,.08) 0%, transparent 60%); }
.ft-orb-r { position:absolute; z-index:0; pointer-events:none; width:460px; height:460px; border-radius:50%; bottom:-100px; right:-100px; background:radial-gradient(circle, rgba(151,125,255,.06) 0%, transparent 60%); }
.ft-cta-banner { position:relative; z-index:2; border-bottom:1px solid rgb(255 255 255 / 29%); padding:72px 52px; }
.ft-cta-inner { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1fr auto; align-items:center; gap:48px; }
.ft-cta-left { }
.ft-cta-tag { display:inline-flex; align-items:center; gap:7px; font-size:10px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; color:var(--lime); background:#C8FF00; border:1px solid rgba(151,125,255,.25); padding:5px 14px; border-radius:999px; margin-bottom:20px; }
.ft-cta-tag-dot { width:5px; height:5px; border-radius:50%; background:var(--lime); animation:pulse 2s ease-in-out infinite; }
.ft-cta-heading { font-size:clamp(32px,4.2vw,56px); font-weight:900; color:#ffffff; letter-spacing:-.035em; line-height:1.06; margin-bottom:14px; }
.ft-cta-heading span { color:#C8FF00; }
.ft-cta-sub { font-size:15px; color:#ffffff; line-height:1.65; max-width:440px; }
.ft-cta-right { display:flex; flex-direction:column; gap:12px; align-items:flex-end; }
.ft-cta-btn { display: inline-flex; align-items: center; gap: 12px; padding: 16px 36px; border-radius: 999px; cursor: pointer; text-decoration: none; font-family: 'Manrope', sans-serif; font-size: 15px; font-weight: 800; background: linear-gradient(135deg, #C8FF00 0%, #C8FF00 100%); color: #000; border: none; box-shadow: 0 8px 32px rgba(0, 51, 255, .3); transition: all .3s cubic-bezier(.22, .68, 0, 1.2); white-space: nowrap; }
.ft-cta-btn:hover { transform: scale(1.05) translateY(-2px); box-shadow: 0 14px 48px #C8FF00; color: #2E2AFF; background: linear-gradient(135deg, #C8FF00 0%, #C8FF00 100%); }
.ft-cta-btn svg { width:16px; height:16px; fill:none; stroke:#2E2AFF; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.ft-cta-note { font-size:12px; color:#C8FF00; font-weight:600; }
.ft-body { position:relative; z-index:2; max-width:1180px; margin:0 auto; padding:72px 52px 56px; border-bottom:1px solid rgb(255 255 255 / 29%); }
.ft-body-grid { display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr 1fr; gap:52px; }
.ft-brand { }
.ft-logo { font-size:19px; font-weight:900; letter-spacing:.08em; color:#C8FF00; text-transform:uppercase; text-decoration:none; display:inline-block; margin-bottom:20px; }
.ft-brand-desc { font-size:13.5px; color:#ffffff; line-height:1.75; margin-bottom:28px; max-width:240px; }
.ft-socials { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px; }
.ft-social { width:38px; height:38px; border-radius:12px; flex-shrink:0; background:#ffffff1f; border:1px solid rgba(255,255,255,.09); display:flex; align-items:center; justify-content:center; text-decoration:none; font-size:15px; transition:background .28s, border-color .28s, transform .28s; }
.ft-social:hover { background:rgba(151,125,255,.14); border-color:rgba(151,125,255,.35); transform:translateY(-3px) scale(1.08); }
.ft-badges { display:flex; flex-direction:column; gap:10px; }
.ft-badge-item { display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:14px; background:#f2f3ff45; border:1px solid rgba(0,51,255,.1); transition:background .3s, border-color .3s; }
.ft-badge-item:hover { background:rgba(151,125,255,.05); border-color:rgba(151,125,255,.15); }
.ft-badge-icon { font-size:18px; flex-shrink:0; }
.ft-badge-text { font-size:11.5px; color:#ffffff; font-weight:700; line-height:1.3; }
.ft-badge-text strong { display:block; color:#ffffff; font-size:12.5px; }
.ft-col { }
.ft-col-heading { font-size:14px; font-weight:900; letter-spacing:.2em; text-transform:uppercase; color:#ffffff; margin-bottom:20px; display:flex; align-items:center; gap:8px; }
.ft-col-heading::after { content:''; flex:1; height:1px; background:linear-gradient(90deg, rgba(255,255,255,.07), transparent); }
.ft-col-links { list-style:none; display:flex; flex-direction:column; gap:10px; }
.ft-col-link { font-size:13.5px; color:#ffffff; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:7px; transition:color .25s, gap .25s; position:relative; }
.ft-col-link::before { content:''; width:4px; height:4px; border-radius:50%; background:var(--lime); opacity:0; flex-shrink:0; transition:opacity .25s, transform .25s; transform:scale(0); }
.ft-col-link:hover { color:#ffffff; gap:10px; }
.ft-col-link:hover::before { opacity:1; transform:scale(1); }
.ft-col-link-new { font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; padding:2px 7px; border-radius:999px; background:rgb(0 3 61 / 32%); border:1px solid rgba(151,125,255,.25); color:#C8FF00; flex-shrink:0; }
.ft-newsletter { position:relative; z-index:2; border-top:1px solid rgba(0,51,255,.1); padding:40px 52px; }
.ft-newsletter-inner { max-width:1180px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.ft-nl-left { }
.ft-nl-label { font-size:10px; font-weight:900; letter-spacing:.2em; text-transform:uppercase; color:white; margin-bottom:6px; }
.ft-nl-heading { font-size:18px; font-weight:900; color:#ffffff; letter-spacing:-.02em; }
.ft-nl-form { display:flex; gap:0; align-items:center; background:#ffffff; border:1px solid rgba(0,51,255,.18); border-radius:999px; padding:5px 5px 5px 22px; transition:border-color .3s; min-width:360px; }
.ft-nl-form:focus-within { border-color:rgba(151,125,255,.4); }
.ft-nl-input { flex:1; background:none; border:none; outline:none; font-family:'Manrope',sans-serif; font-size:13.5px; color:black; font-weight:500; }
.ft-nl-input::placeholder { color:rgba(30,41,59,.25); }
.ft-nl-btn { padding:10px 22px; border-radius:999px; cursor:pointer; font-family:'Manrope',sans-serif; font-size:13px; font-weight:800; background:linear-gradient(135deg, #3B82F6 0%, #0B00AB 100%); color:#ffffff; border:none; flex-shrink:0; transition:all .3s cubic-bezier(.22,.68,0,1.2); box-shadow: 0 2px 12px rgba(0,51,255,.25); }
.ft-nl-btn:hover { transform:scale(1.04) translateY(-1px); box-shadow:0 4px 18px rgba(151,125,255,.35); background:linear-gradient(135deg,  #C8FF00 0%, #C8FF00 100%); color:#2E2AFF; }
.ft-wordmark-wrap { position:relative; z-index:2; padding:0 52px; overflow:hidden; border-top:1px solid rgba(255,255,255,.04); }
.ft-wordmark { font-size: clamp(72px, 14vw, 180px); font-weight: 900; color: #00000010; letter-spacing: -.04em; line-height: .88; -webkit-text-stroke: 3px rgba(170, 255, 0, 58%); text-transform: uppercase; pointer-events: none; user-select: none; transition: -webkit-text-stroke pulse .5s; white-space: nowrap; }
.ft-wordmark-wrap:hover .ft-wordmark { -webkit-text-stroke:1px rgba(151,125,255,.22); color:#C8FF00; }
.ft-bottom { position:relative; z-index:2; border-top:1px solid rgba(0,51,255,.1); padding:22px 52px; }
.ft-bottom-inner { max-width:1180px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.ft-copyright { font-size:12px; color:#ffffff; font-weight:600; line-height:1.6; }
.ft-copyright span { color:#C8FF00; }
.ft-legal-links { display:flex; gap:20px; flex-wrap:wrap; }
.ft-legal-link { font-size:12px; color:rgba(30,41,59,.25); font-weight:600; text-decoration:none; transition:color .25s; }
.ft-legal-link:hover { color:rgba(30,41,59,.7); }
.ft-bottom-right { display:flex; align-items:center; gap:10px; }
.ft-status-dot { width:7px; height:7px; border-radius:50%; background:var(--lime); animation:pulse 2.2s ease-in-out infinite; flex-shrink:0; }
.ft-status-text { font-size:11.5px; color:#ffffff; font-weight:600; }
@media (max-width:1060px) {
  .ft-body-grid { grid-template-columns:1.5fr 1fr 1fr; gap:40px; }
  .ft-col:nth-child(4),
  .ft-col:nth-child(5) { display:none; }
}
@media (max-width:720px) {
  .ft-cta-banner { padding:52px 24px; }
  .ft-cta-inner { grid-template-columns:1fr; }
  .ft-cta-right { align-items:flex-start; }
  .ft-body { padding:52px 24px 40px; }
  .ft-body-grid { grid-template-columns:1fr 1fr; gap:32px; }
  .ft-newsletter { padding:32px 24px; }
  .ft-nl-form { min-width:0; width:100%; }
  .ft-newsletter-inner { flex-direction:column; align-items:flex-start; }
  .ft-wordmark-wrap { padding:0 24px; }
  .ft-bottom { padding:20px 24px; }
  .ft-bottom-inner { flex-direction:column; align-items:flex-start; gap:12px; }
}
@media (max-width:480px) {
  .ft-body-grid { grid-template-columns:1fr; }
}
.nav-right { display: flex; align-items: center; gap: 12px; }
.nav-hamburger { display: none; flex-direction: column; justify-content: center; align-items: center; gap: 5px; width: 44px; height: 44px; background: rgba(0,51,255,.06); border: 1px solid rgb(255 255 255 / 35%); border-radius: 12px; cursor: pointer; flex-shrink: 0; transition: background .2s, border-color .2s; position: relative; z-index: 2100; padding: 0; }
.nav-hamburger:hover { background: rgba(151,125,255,.1); border-color: rgba(151,125,255,.35); }
.nav-hamburger span { display: block; width: 20px; height: 2px; background: rgba(255,255,255,.85); border-radius: 2px; transition: transform .35s cubic-bezier(.22,.68,0,1.2), opacity .22s, width .22s; pointer-events: none; }
.nav-hamburger.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); background: var(--lime); }
.nav-hamburger.active span:nth-child(2) { opacity: 0; width: 0; }
.nav-hamburger.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); background: var(--lime); }
.mobile-drawer { position: fixed; inset: 0; z-index: 2050; visibility: hidden; pointer-events: none; }
.mobile-drawer.open { visibility: visible; pointer-events: all; }
.mobile-drawer-bg { position: absolute; inset: 0; background: rgba(15,23,42,.7); backdrop-filter: blur(4px); opacity: 0; transition: opacity .38s cubic-bezier(.22,.68,0,1.2); }
.mobile-drawer.open .mobile-drawer-bg { opacity: 1; }
.mobile-drawer-content { position: absolute; top: 0; right: 0; bottom: 0; width: min(360px, 88vw); background: rgba(6,11,0,.97); backdrop-filter: blur(28px); border-left: 1px solid rgba(151,125,255,.12); padding: 80px 24px 36px; display: flex; flex-direction: column; gap: 0; overflow-y: auto; transform: translateX(100%); transition: transform .38s cubic-bezier(.22,.68,0,1.2); }
.mobile-drawer.open .mobile-drawer-content { transform: translateX(0); }
.mn-close-btn { position: absolute; top: 18px; right: 18px; width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 10px; color: rgba(255,255,255,0.8); cursor: pointer; transition: background .2s, border-color .2s, color .2s, transform .2s; z-index: 10; }
.mn-close-btn:hover { background: rgba(200,255,0,0.12); border-color: rgba(200,255,0,0.35); color: #C8FF00; transform: rotate(90deg); }
.mobile-drawer-content::before { content: ''; position: absolute; inset: 0; pointer-events: none; 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"); opacity: .08; }
.mobile-drawer-content::after { content: ''; position: absolute; top: -120px; right: -120px; pointer-events: none; width: 400px; height: 400px; border-radius: 50%; background: radial-gradient(circle, rgba(151,125,255,.1) 0%, transparent 65%); }
.mobile-nav-links { list-style: none; display: flex; flex-direction: column; gap: 4px; position: relative; z-index: 1; margin-bottom: 8px; }
.mobile-nav-links li a,
.mobile-nav-links .mn-link-row { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 14px; border: 1px solid rgba(255,255,255,.07); color: #000; font-size: 15px; font-weight: 600; text-decoration: none; background: #fafbff; transition: background .2s, border-color .2s, color .2s; cursor: pointer; width: 100%; }
.mobile-nav-links li a:hover,
.mobile-nav-links .mn-link-row:hover,
.mobile-nav-links li a:active { background: white; border-color: rgba(151,125,255,.28); color: var(--lime); }
.mn-icon { font-size: 17px; flex-shrink: 0; }
.mn-arr { width: 14px; height: 14px; margin-left: auto; flex-shrink: 0; opacity: .28; transition: opacity .2s, transform .2s; }
.mobile-nav-links li a:hover .mn-arr { opacity: 1; transform: translateX(3px); }
.mn-chev { width: 14px; height: 14px; margin-left: auto; flex-shrink: 0; opacity: .4; transition: transform .3s cubic-bezier(.22,.68,0,1.2), opacity .2s; }
.mn-has-sub.mn-open .mn-chev { transform: rotate(180deg); opacity: .8; }
.mn-sub { list-style: none; display: none; flex-direction: column; gap: 4px; padding: 8px 0 4px 0; }
.mn-has-sub.mn-open .mn-sub { display: flex; }
.mn-cat-item { border-radius: 10px; overflow: visible; }
.mn-cat-row { display: flex; align-items: center; gap: 10px; padding: 11px 14px; border-radius: 10px; border: 1px solid rgba(46,42,255,.09); background: #fff; cursor: pointer; transition: background .18s, border-color .18s; width: 100%; user-select: none; }
.mn-cat-row:hover,
.mn-cat-row:active { background: rgba(46,42,255,.04); border-color: rgba(46,42,255,.22); }
.mn-cat-item.mn-cat-open .mn-cat-row { background: rgb(255 255 255 / 78%); border-color: rgba(46,42,255,.2); border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.mn-cat-icon { font-size: 15px; flex-shrink: 0; }
.mn-cat-label { font-size: 13.5px; font-weight: 700; color: #1e293b; flex: 1; }
.mn-cat-chev { width: 13px; height: 13px; opacity: .38; flex-shrink: 0; stroke: #2E2AFF; transition: transform .28s cubic-bezier(.22,.68,0,1.2), opacity .2s; }
.mn-cat-item.mn-cat-open .mn-cat-chev { transform: rotate(180deg); opacity: .9; }
.mn-cat-pages { list-style: none; display: none; flex-direction: column; gap: 0px; padding: 4px 0 6px 0; border: 1px solid rgba(46,42,255,.12); border-top: none; border-radius: 0 0 10px 10px; background: rgba(248,249,255,.95); }
.mn-cat-item.mn-cat-open .mn-cat-pages { display: flex; }
.mn-cat-pages li a { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; padding: 9px 16px; color: #475569; background: transparent; text-decoration: none; border-bottom: 1px solid rgba(46,42,255,.05); transition: background .15s, color .15s, padding-left .15s; }
.mn-cat-pages li:last-child a { border-bottom: none; }
.mn-cat-pages li a::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #2E2AFF; opacity: .28; flex-shrink: 0; transition: opacity .15s; }
.mn-cat-pages li a:hover { background: rgba(46,42,255,.05); color: #2E2AFF; padding-left: 20px; }
.mn-cat-pages li a:hover::before { opacity: 1; }
.mn-cat-pages li.mn-viewpage a { color: #2E2AFF; font-weight: 700; font-size: 12.5px; background: rgba(46,42,255,.05); border-top: 1px solid rgba(46,42,255,.1); border-bottom: none; margin-top: 2px; }
.mn-cat-pages li.mn-viewpage a::before { display: none; }
.mn-cat-pages li.mn-viewpage a:hover { background: #2E2AFF; color: #fff; padding-left: 16px; }
.mn-divider { height: 1px; background: rgba(0,51,255,.07); margin: 16px 0; flex-shrink: 0; position: relative; z-index: 1; }
.mn-cta { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 14px 14px 14px 24px; border-radius: 999px; background: var(--lime); color: #ffffff; font-size: 14px; font-weight: 800; border: none; cursor: pointer; font-family: 'Manrope', sans-serif; transition: background .2s, transform .2s; position: relative; z-index: 1; flex-shrink: 0; }
.mn-cta:hover { background: #977DFF; transform: scale(1.02); }
.mn-cta-icon { width: 34px; height: 34px; border-radius: 50%; background: rgba(0,0,0,.18); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.mn-cta-icon svg { width: 14px; height: 14px; }
.mn-footer { margin-top: auto; padding-top: 24px; display: flex; align-items: center; gap: 8px; position: relative; z-index: 1; flex-shrink: 0; }
.mn-status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); animation: mnPulse 2s ease-in-out infinite; flex-shrink: 0; }
.mn-status-text { font-size: 11.5px; color: rgba(255,255,255,.28); font-weight: 600; }
@media (max-width: 1200px) {
  nav { padding: 14px 36px; }
}
@media (max-width: 1024px) {
  nav { padding: 14px 28px; }
}
@media (max-width: 768px) {
  nav { padding: 13px 20px; background: rgba(8,14,0,.94); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(151,125,255,.1); }
  .nav-links { display: none; }
  .nav-cta { display: none; }
  .nav-hamburger { display: flex; }
  .mega-panel,
  .mega-overlay { display: none !important; }
  .ft-cta-banner { padding: 48px 20px; }
  .ft-cta-inner { grid-template-columns: 1fr; gap: 28px; }
  .ft-cta-right { align-items: flex-start; }
  .ft-body { padding: 48px 20px 36px; }
  .ft-body-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
  .ft-wordmark-wrap { padding: 0 20px; }
  .ft-bottom { padding: 18px 20px; }
  .ft-newsletter { padding: 28px 20px; }
  .ft-newsletter-inner { flex-direction: column; align-items: flex-start; }
  .ft-nl-form { min-width: 0; width: 100%; }
  .ft-wordmark { font-size: 50px; }
}
@media (max-width: 480px) {
  nav { padding: 12px 16px; }
  .logo { font-size: 15px; }
  .ft-body-grid { grid-template-columns: 1fr; gap: 24px; }
  .ft-cta-heading { font-size: clamp(24px,7vw,36px); }
  .ft-bottom-inner { flex-direction: column; align-items: flex-start; gap: 10px; }
}
@media (max-width: 360px) {
  nav { padding: 10px 14px; }
  .logo { font-size: 13px; letter-spacing: .06em; }
  .nav-hamburger { width: 38px; height: 38px; }
  .mobile-drawer-content { width: 92vw; padding: 72px 16px 28px; }
  .mn-cta { font-size: 13px; padding: 12px 12px 12px 18px; }
}
.mobile-drawer-content { background: #0033ff30; border-left: 1px solid rgba(0,51,255,.15); }
.mn-link-row,
.mobile-nav-links li a { color: #1e293b; }
.mn-footer { color: rgba(30,41,59,.5); }
.mn-status-dot { background: #22c55e; }
nav { background: #2e2aff7d; border-bottom: 1px solid rgba(0,51,255,.08); }

/* ==========================================================================
   3. 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;
}
}

/* ==========================================================================
   4. DD-STRATEGY-POPUP:START — popup styles copied from assets/style.css (the file index.php loads)
   240 of 240 declarations are not !important.
   ========================================================================== */
@keyframes spPulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(1.4)} }
.sp-overlay {
  position: fixed; inset: 0; z-index: 9999;
  background: rgba(15,23,42,.75);
  backdrop-filter: blur(6px);
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
  opacity: 0; pointer-events: none;
  transition: opacity .35s cubic-bezier(.22,.68,0,1.2);
}
.sp-overlay.open {
  opacity: 1; pointer-events: all;
}
.sp-modal {
  position: relative;
  width: 100%; max-width: 680px;
  background: #F2E6EE;
  border: 1px solid rgba(151,125,255,.22);
  border-radius: 24px;
  padding: 44px 48px;
  overflow: hidden;
  transform: translateY(30px) scale(.97);
  transition: transform .4s cubic-bezier(.22,.68,0,1.2);
  box-shadow: 0 32px 80px rgba(0,0,0,.6), 0 0 0 1px rgba(151,125,255,.08);
  max-height: 90vh; overflow-y: auto;
}
.sp-overlay.open .sp-modal {
  transform: translateY(0) scale(1);
}
.sp-modal::-webkit-scrollbar { width: 4px; }
.sp-modal::-webkit-scrollbar-thumb { background: rgba(151,125,255,.3); border-radius: 99px; }
.sp-glow {
  position: absolute; top: -80px; right: -60px;
  width: 320px; height: 320px; border-radius: 50%;
  background: radial-gradient(circle, rgba(151,125,255,.18) 0%, transparent 70%);
  pointer-events: none;
}
.sp-grid-bg {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(151,125,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(151,125,255,.03) 1px,transparent 1px);
  background-size: 40px 40px;
  pointer-events: none;
}
.sp-close {
  position: absolute; top: 18px; right: 20px;
  background: rgba(0,51,255,.07); border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%; width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; color: #000;
  transition: background .2s, color .2s;
}
.sp-close:hover { background: rgba(30,41,59,.1); color: #1e293b; }
.sp-header { margin-bottom: 32px; }
.sp-badge {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 16px; border-radius: 999px;
  background: rgba(151,125,255,.12); border: 1px solid rgba(151,125,255,.35);
  color: #3B82F6; font-size: 12px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; margin-bottom: 16px;
}
.sp-badge-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: #3B82F6;
  box-shadow: 0 0 6px #3B82F6;
  animation: spPulse 1.6s ease-in-out infinite;
}
@keyframes spPulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(1.4)} }
.sp-title {
  font-family: 'Manrope', sans-serif;
  font-size: clamp(24px,3.5vw,34px); font-weight: 800;
  color: #fff; letter-spacing: -.025em; line-height: 1.1;
  margin-bottom: 10px;
}
.sp-lime { color: #3B82F6; }
.sp-subtitle {
  font-size: 14.5px; color: rgba(255,255,255,.6);
  line-height: 1.6; font-weight: 400;
}
.sp-form { display: flex; flex-direction: column; gap: 18px; }
.sp-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width:520px) {
  .sp-row { grid-template-columns: 1fr; }
}
.sp-field { display: flex; flex-direction: column; gap: 7px; }
.sp-field-full { width: 100%; }
.sp-label {
  font-size: 12.5px; font-weight: 700; color: rgba(255,255,255,.75);
  letter-spacing: .04em; text-transform: uppercase;
}
.sp-input {
  background: rgba(0,51,255,.04);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px; padding: 12px 16px;
  color: #fff; font-size: 14px; font-family: 'Manrope', sans-serif;
  outline: none; transition: border-color .2s, background .2s, box-shadow .2s;
  width: 100%;
}
.sp-input::placeholder { color: rgba(255,255,255,.3); }
.sp-input:focus {
  border-color: rgba(151,125,255,.55);
  background: rgba(151,125,255,.05);
  box-shadow: 0 0 0 3px rgba(151,125,255,.1);
}
.sp-select { appearance: none; cursor: pointer; }
.sp-select option { background: #ffffff; color: #1e293b; }
.sp-textarea { resize: none; height: 88px; line-height: 1.55; }
.sp-datetime { cursor: pointer; color-scheme: dark; }
.sp-datetime::-webkit-calendar-picker-indicator {
  filter: invert(1) brightness(0.6) sepia(1) hue-rotate(50deg) saturate(4);
  cursor: pointer; opacity: 0.7;
}
.sp-datetime::-webkit-calendar-picker-indicator:hover { opacity: 1; }
.sp-goals {
  display: flex; flex-wrap: wrap; gap: 10px;
}
.sp-goal-chip input { display: none; }
.sp-goal-chip span {
  display: inline-block; padding: 9px 18px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,.15); background: rgba(0,51,255,.04);
  color: rgba(255,255,255,.75); font-size: 13.5px; font-weight: 600;
  cursor: pointer; transition: all .2s;
  font-family: 'Manrope', sans-serif;
}
.sp-goal-chip input:checked + span {
  background: rgba(151,125,255,.15);
  border-color: rgba(151,125,255,.6);
  color: #3B82F6;
  box-shadow: 0 0 12px rgba(151,125,255,.15);
}
.sp-goal-chip span:hover {
    border-color: #3B82F6;
    color: #3B82F6;
}
.sp-submit {
  display: flex; align-items: center; justify-content: center; gap: 4px;
  background:linear-gradient(135deg, #3B82F6 0%, #0B00AB 100%); 
  border: none; border-radius: 999px;
  padding: 6px 6px 6px 28px; cursor: pointer;
  font-family: 'Manrope', sans-serif; font-size: 15px; font-weight: 700; color: #ffffff;
  margin-top: 6px;
  transition: all .3s cubic-bezier(.22,.68,0,1.2);
  box-shadow: 0 4px 22px rgba(0,51,255,.25);
}
.sp-submit:hover { 
  transform: scale(1.04) translateY(-2px); 
  box-shadow: 0 8px 32px rgba(151,125,255,.38); 
  background:linear-gradient(135deg, #0B00AB 0%, #00033D 100%);
}
.sp-submit-icon {
  width: 38px; height: 38px; border-radius: 50%; background: rgba(0,0,0,.2);
  display: flex; align-items: center; justify-content: center; margin-left: 12px;
  flex-shrink: 0;
}
.sp-success {
  display: none; text-align: center; padding: 20px 0 10px;
  flex-direction: column; align-items: center; gap: 14px;
}
.sp-success.show { display: flex; }
.sp-success-icon { font-size: 56px; line-height: 1; }
.sp-success-title { font-size: 26px; font-weight: 800; color: #fff; }
.sp-success-msg { font-size: 15px; color: rgba(255,255,255,.65); line-height: 1.65; max-width: 340px; }
@media (max-width: 768px) {
  .sp-modal { padding: 28px 20px 28px; border-radius: 18px; }
  .sp-title  { font-size: clamp(20px,5vw,26px); }
  .sp-row    { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .sp-modal  { margin: 0 4px; padding: 24px 16px; }
  .sp-submit { font-size: 13.5px; padding: 5px 5px 5px 20px; }
  .sp-submit-icon { width: 34px; height: 34px; }
}
.sp-modal { background: #ffffff; border: 1px solid rgba(0,51,255,.15); }
.sp-title { color: #1e293b; }
.sp-subtitle { color: rgba(30,41,59,.6); }
.sp-label { color: rgba(30,41,59,.7); font-size: 12px; font-weight: 600; }
.sp-input { background: #ffffff; border-color: rgba(0,51,255,.2); color: #1e293b; }
.sp-input:focus { background: #f0f6ff; border-color: rgba(0,51,255,.45); }
.sp-input::placeholder { color: rgba(30,41,59,.35); }
.sp-goal-chip span {
  border: 1px solid rgba(0,51,255,.2);
  background: rgba(0,51,255,.04);
  color: rgba(30,41,59,.7);
}
.sp-goal-chip input:checked ~ span {
  background: rgba(0,51,255,.12);
  border-color: rgba(0,51,255,.45);
  color: #2E2AFF;
}
.sp-success { color: #1e293b; }
.sp-success-title { color: #1e293b; }
.sp-success-msg { color: rgba(30,41,59,.7); }

/* ==========================================================================
   5. DD-RESPONSIVE-FIX:START — mobile/tablet only (max-width: 900px); desktop layout is untouched
   Every declaration is !important.
   ========================================================================== */
/* Readability: minimum text sizes (same header/footer rules as the other pages) */
@media (max-width: 900px) {
  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-link-desc,
  html body div.mega-featured-sub,
  html body div.ft-badge-text { font-size: 13px !important; }
}

/* ==========================================================================
   6. 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; }
}

/* ==========================================================================
   7. 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.
   ========================================================================== */

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

/* ── #main ── */
.scroll-margin-top-90{scroll-margin-top:90px}

/* ── #footer ── */
.td-none{text-decoration:none}
.footer-row{display:flex;align-items:center;gap:8px}
.footer-row-2{width:22px;height:22px;background:rgba(51,118,170,0.1);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}
.footer-text{color:#C8FF00;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:0.3px;transition:color .2s}
.footer-text:hover{color:#C8FF00}
.footer-text-2{color:rgb(255, 255, 255);font-size:11px}

/* ── #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 ── */
button.spsuccess-btn{max-width:200px;margin:0 auto}

/* ==========================================================================
   8. 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; }
}
