/* ============================================================
   DATA ANALYST CAREER ACCELERATOR — landing page (standalone)
   Served at /data-analyst (this is the live bootcamp page; the previous
   version is backed up at /data-analyst-original). Standalone — only
   reuses the shared /assets/css/fd-shell.css header/footer shell.

   Only the shared .fdnav header + mobile hamburger come from
   /assets/css/fd-shell.css. Everything below is page-owned and
   prefixed `da-` so it never collides with the shell.

   Design language: Apple × Notion × Stripe × modern EdTech —
   warm light theme, glassmorphism, generous whitespace, calm
   motion. Brand palette mirrors the site (defined once here).
   ============================================================ */

.danew{
  /* palette (mirrors the site's brand variables) */
  --paper:#fffaf4; --paper-2:#fff3e9; --white:#ffffff;
  --ink:#18222f; --ink-2:#44515f; --muted:#6c7785;
  --line:rgba(24,34,47,.10); --line-soft:rgba(24,34,47,.06);
  --brand:#0a96c7; --brand-deep:#0a7ba6; --brand-soft:#e4f4fb;
  --coral:#ff7a59; --coral-soft:#fff0eb;
  --amber:#f5a623; --amber-soft:#fff5e1;
  --mint:#18a37b; --mint-soft:#e6f7f0;
  --violet:#7c5cff; --violet-soft:#efeaff;
  --navy:#101820; --navy-2:#15212c;

  --shadow-sm:0 4px 14px -6px rgba(15,42,64,.16);
  --shadow:0 22px 48px -22px rgba(15,42,64,.28);
  --shadow-lg:0 48px 90px -34px rgba(15,42,64,.40);
  --radius:24px; --radius-sm:16px; --maxw:1180px;

  background:var(--paper);
  color:var(--ink-2);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  font-size:17px; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
.danew *{ box-sizing:border-box; }
.danew h1,.danew h2,.danew h3,.danew h4{
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  color:var(--ink); line-height:1.12; margin:0 0 .5em;
  font-weight:800; letter-spacing:-.025em;
}
.danew p{ margin:0 0 1em; }
.danew a{ color:var(--brand-deep); text-decoration:none; }
.danew img{ max-width:100%; display:block; }
.danew ::selection{ background:rgba(10,150,199,.18); }

/* ── layout helpers ───────────────────────────────────────── */
.da-wrap{ max-width:var(--maxw); margin:0 auto; padding:0 22px; position:relative; z-index:1; }
.da-narrow{ max-width:760px; margin-left:auto; margin-right:auto; }
.da-section{ padding:clamp(56px,7.5vw,116px) 0; position:relative; }
.da-center{ text-align:center; }
.da-tint{ background:linear-gradient(180deg,var(--paper-2),var(--paper)); }
.da-white{ background:var(--white); }

.da-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700;
  font-size:12.5px; letter-spacing:.07em; text-transform:uppercase;
  /* high-contrast: dark text on a light tint (was blue-on-blue, hard to read) */
  color:#05506e; background:#d3edf8;
  padding:8px 16px; border-radius:99px; margin-bottom:20px;
}
.da-eyebrow.coral{ color:#b23a17; background:#ffe1d6; }
.da-eyebrow.mint{ color:#0a6a4e; background:#d3f1e6; }
.da-eyebrow.amber{ color:#855100; background:#ffecc0; }
.da-eyebrow.violet{ color:#4a2fc4; background:#e6e0ff; }

.da-h2{ font-size:clamp(27px,4vw,44px); margin-bottom:14px; }
.da-h3{ font-size:clamp(20px,2.4vw,26px); }
.da-lede{ font-size:clamp(16px,2vw,19.5px); color:var(--ink-2); }
.da-shead{ max-width:720px; margin:0 auto clamp(36px,5vw,60px); }
.da-shead.left{ margin-left:0; }

/* ── buttons ──────────────────────────────────────────────── */
.da-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:16px;
  padding:15px 28px; border-radius:14px; cursor:pointer;
  border:1.5px solid transparent; min-height:54px; white-space:nowrap;
  transition:transform .16s ease, box-shadow .16s ease, background .16s, color .16s, border-color .16s;
}
.da-btn-primary{ background:linear-gradient(135deg,var(--brand),var(--brand-deep)); color:#fff; box-shadow:0 14px 30px -12px rgba(10,150,199,.65); }
.da-btn-primary:hover{ transform:translateY(-2px); box-shadow:0 20px 38px -12px rgba(10,150,199,.75); color:#fff; }
.da-btn-warm{ background:linear-gradient(135deg,#ff8a63,var(--coral)); color:#fff; box-shadow:0 14px 30px -12px rgba(255,122,89,.6); }
.da-btn-warm:hover{ transform:translateY(-2px); box-shadow:0 20px 38px -12px rgba(255,122,89,.72); color:#fff; }
.da-btn-ghost{ background:var(--white); color:var(--ink); border-color:var(--line); box-shadow:var(--shadow-sm); }
.da-btn-ghost:hover{ transform:translateY(-2px); border-color:var(--brand); color:var(--brand-deep); }
.da-btn-dark{ background:linear-gradient(135deg,var(--brand),var(--brand-deep)); color:#fff; box-shadow:0 14px 30px -12px rgba(10,150,199,.65); }
.da-btn-dark:hover{ transform:translateY(-2px); color:#fff; box-shadow:0 20px 38px -12px rgba(10,150,199,.75); }
/* keep filled CTAs pure-white in every link state (visited/active never grey out) */
a.da-btn-primary, a.da-btn-primary:link, a.da-btn-primary:visited, a.da-btn-primary:active,
a.da-btn-warm, a.da-btn-warm:link, a.da-btn-warm:visited, a.da-btn-warm:active,
a.da-btn-dark, a.da-btn-dark:link, a.da-btn-dark:visited, a.da-btn-dark:active{ color:#fff; }
.da-btn-lg{ padding:18px 34px; font-size:17px; min-height:62px; }
.da-btn-block{ width:100%; }

/* ── reveal-on-scroll ─────────────────────────────────────── */
.da-reveal{ opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.da-reveal.in{ opacity:1; transform:none; }
.da-reveal.d1{ transition-delay:.08s; } .da-reveal.d2{ transition-delay:.16s; }
.da-reveal.d3{ transition-delay:.24s; } .da-reveal.d4{ transition-delay:.32s; }

/* ════════════════════════════════════════════════════════════
   HERO
   ════════════════════════════════════════════════════════════ */
.da-hero{
  position:relative; overflow:hidden;
  padding:clamp(56px,8vw,110px) 0 clamp(48px,6vw,90px);
  background:
    radial-gradient(58% 65% at 84% 6%, rgba(124,92,255,.14), transparent 60%),
    radial-gradient(60% 70% at 6% 18%, rgba(10,150,199,.14), transparent 62%),
    radial-gradient(50% 60% at 60% 100%, rgba(255,122,89,.12), transparent 60%),
    linear-gradient(180deg,var(--paper-2),var(--paper));
}
.da-hero::after{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.5;
  background-image:radial-gradient(rgba(10,150,199,.10) 1.2px, transparent 1.2px);
  background-size:30px 30px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);
  mask-image:linear-gradient(180deg,#000,transparent 75%);
}
.da-hero .da-wrap{ text-align:center; }
.da-kicker{
  display:inline-flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:13px;
  letter-spacing:.04em; color:var(--ink); background:rgba(255,255,255,.7);
  border:1px solid var(--line); border-radius:99px; padding:9px 18px;
  box-shadow:var(--shadow-sm); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  margin-bottom:22px;
}
.da-kicker .dot{ width:9px; height:9px; border-radius:50%; background:#e5484d; box-shadow:0 0 0 4px rgba(229,72,77,.18); animation:daPulse 2s ease-in-out infinite; }
@keyframes daPulse{ 0%,100%{ box-shadow:0 0 0 4px rgba(229,72,77,.18); } 50%{ box-shadow:0 0 0 7px rgba(229,72,77,.05); } }
.da-hero h1{ font-size:clamp(34px,6vw,68px); letter-spacing:-.035em; margin-bottom:18px; }
.da-hero h1 .hl{ position:relative; color:var(--brand-deep); }
.da-hero h1 .hl::after{ content:""; position:absolute; left:-2px; right:-2px; bottom:.04em; height:.32em; background:linear-gradient(90deg,rgba(255,122,89,.5),rgba(245,166,35,.45)); border-radius:6px; z-index:-1; }
.da-hero .da-sub{ font-size:clamp(16px,2.2vw,21px); color:var(--ink-2); max-width:760px; margin:0 auto 16px; }
.da-tag-line{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; color:var(--ink); font-size:clamp(15px,2vw,18px); margin-bottom:30px; }
.da-tag-line span{ color:var(--brand-deep); }
.da-hero-cta{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; margin-bottom:34px; }

/* trust badges */
.da-badges{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; max-width:880px; margin:0 auto; }
.da-badge{
  display:inline-flex; align-items:center; gap:8px;
  font-size:14px; font-weight:600; color:var(--ink-2);
  background:rgba(255,255,255,.78); border:1px solid var(--line);
  border-radius:99px; padding:9px 15px; box-shadow:var(--shadow-sm);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
}
.da-badge .ck{ color:var(--mint); font-weight:800; }

/* roadmap strip */
.da-roadmap{
  margin-top:clamp(40px,6vw,64px);
  background:rgba(255,255,255,.72); border:1px solid var(--line);
  border-radius:var(--radius); box-shadow:var(--shadow);
  padding:clamp(20px,3vw,30px); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.da-roadmap .rm-label{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:12.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin-bottom:16px; }
/* one continuous line; scrolls sideways instead of wrapping if it's too narrow */
.da-rm-track{ display:flex; align-items:center; gap:7px; flex-wrap:nowrap; justify-content:center; overflow-x:auto; scrollbar-width:none; padding-bottom:2px; }
.da-rm-track::-webkit-scrollbar{ display:none; }
.da-rm-step{
  display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; white-space:nowrap;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:14px; color:var(--ink);
  background:var(--white); border:1px solid var(--line); border-radius:12px;
  padding:10px 13px; box-shadow:var(--shadow-sm);
}
.da-rm-step .e{ font-size:16px; line-height:1; }
.da-rm-step.is-goal{ background:linear-gradient(135deg,var(--mint),#13c08e); color:#fff; border-color:transparent; box-shadow:0 14px 28px -12px rgba(24,163,123,.6); }
.da-rm-arrow{ color:var(--brand); font-weight:800; font-size:18px; opacity:.65; }
/* keep "AI Agents → Job" together so "Job" never orphans onto its own line */
.da-rm-glue{ display:inline-flex; align-items:center; gap:8px; }

/* ── tools marquee (mirrors the homepage: CSS auto-scroll + drag-nudge) ── */
.da-marq{ overflow:hidden; -webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent); mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent); }
.da-marq-drag{ cursor:grab; touch-action:pan-y; -webkit-user-select:none; user-select:none; will-change:transform; }
.da-marq-drag:active{ cursor:grabbing; }
.da-marq-track{ display:flex; align-items:stretch; width:max-content; animation:daMarqueeX 50s linear infinite; will-change:transform; }
.da-marq:hover .da-marq-track, .da-marq.dragging .da-marq-track{ animation-play-state:paused; }
@keyframes daMarqueeX{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.da-tool-card{ flex:0 0 auto; width:152px; height:98px; margin-right:22px; background:var(--white); border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow-sm); display:flex; align-items:center; justify-content:center; padding:18px; }
.da-tool-card img{ max-height:54px; max-width:112px; width:auto; object-fit:contain; pointer-events:none; -webkit-user-drag:none; }
.da-toolchips{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.da-chip{ display:inline-flex; align-items:center; gap:9px; background:var(--white); border:1px solid var(--line); border-radius:14px; padding:12px 18px; font-weight:600; font-size:15px; color:var(--ink); box-shadow:var(--shadow-sm); }
.da-chip .e{ font-size:18px; }

/* ════════════════════════════════════════════════════════════
   GENERIC CARDS / GRIDS
   ════════════════════════════════════════════════════════════ */
.da-glass{
  background:rgba(255,255,255,.72); border:1px solid var(--line);
  border-radius:var(--radius); box-shadow:var(--shadow);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.da-grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.da-grid-2{ display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.da-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }

.da-card{
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius);
  padding:28px; box-shadow:var(--shadow-sm); transition:transform .2s ease, box-shadow .2s ease;
}
.da-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow); }
.da-card .ic{
  width:52px; height:52px; border-radius:15px; display:flex; align-items:center; justify-content:center;
  font-size:24px; margin-bottom:16px; background:var(--brand-soft); color:var(--brand-deep);
}
.da-card.t-coral .ic{ background:var(--coral-soft); color:#d4502b; }
.da-card.t-amber .ic{ background:var(--amber-soft); color:#9a6206; }
.da-card.t-mint .ic{ background:var(--mint-soft); color:#0c7a5a; }
.da-card.t-violet .ic{ background:var(--violet-soft); color:#5a3fd6; }
.da-card h3{ font-size:19px; margin-bottom:8px; }
.da-card p{ font-size:15px; color:var(--ink-2); margin:0; }

/* core-message pillars */
.da-pillars{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:26px; }
.da-pill{
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:15px; color:var(--ink);
  background:var(--white); border:1px solid var(--line); border-radius:99px;
  padding:12px 22px; box-shadow:var(--shadow-sm);
}
.da-pill .e{ margin-right:8px; }
.da-quoteline{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:var(--ink); font-size:clamp(19px,2.6vw,26px); line-height:1.4; max-width:760px; margin:30px auto 0; text-align:center; }
.da-quoteline em{ font-style:normal; color:var(--brand-deep); }

/* ── who for / not for ────────────────────────────────────── */
.da-twocol{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.da-fit{ padding:30px; border-radius:var(--radius); }
.da-fit h3{ display:flex; align-items:center; gap:10px; font-size:20px; margin-bottom:18px; }
.da-fit.yes{ background:var(--mint-soft); border:1px solid rgba(24,163,123,.22); }
.da-fit.no{ background:var(--coral-soft); border:1px solid rgba(255,122,89,.22); }
.da-fit ul{ list-style:none; margin:0; padding:0; }
.da-fit li{ position:relative; padding:9px 0 9px 32px; font-size:15.5px; color:var(--ink); border-top:1px solid rgba(24,34,47,.07); }
.da-fit li:first-child{ border-top:none; }
.da-fit li::before{ position:absolute; left:0; top:9px; font-weight:800; }
.da-fit.yes li::before{ content:"✓"; color:var(--mint); }
.da-fit.no li::before{ content:"✕"; color:var(--coral); }

/* ── comparison ───────────────────────────────────────────── */
.da-compare{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.da-comp{ border-radius:var(--radius); padding:30px; }
.da-comp h3{ font-size:19px; margin-bottom:6px; }
.da-comp .cap{ font-size:13.5px; color:var(--muted); margin-bottom:18px; }
.da-comp.trad{ background:var(--white); border:1px solid var(--line); box-shadow:var(--shadow-sm); }
.da-comp.fd{ background:linear-gradient(180deg,#0e1b27,#15212c); border:1px solid rgba(255,255,255,.08); box-shadow:var(--shadow); }
.da-comp.fd h3{ color:#fff; } .da-comp.fd .cap{ color:#9fb0bd; }
.da-comp ul{ list-style:none; margin:0; padding:0; }
.da-comp li{ position:relative; padding:10px 0 10px 30px; font-size:15px; }
.da-comp.trad li{ color:var(--ink-2); border-top:1px solid var(--line-soft); }
.da-comp.fd li{ color:#dbe6ee; border-top:1px solid rgba(255,255,255,.08); }
.da-comp li:first-child{ border-top:none; }
.da-comp li::before{ position:absolute; left:0; top:10px; font-weight:800; }
.da-comp.trad li::before{ content:"✕"; color:#c2cbd3; }
.da-comp.fd li::before{ content:"✓"; color:#5ce0b0; }

/* ════════════════════════════════════════════════════════════
   CURRICULUM TIMELINE
   ════════════════════════════════════════════════════════════ */
.da-schedule{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-bottom:clamp(34px,5vw,52px); }
.da-schedule .s{ display:inline-flex; align-items:center; gap:8px; font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:14px; color:var(--ink); background:var(--white); border:1px solid var(--line); border-radius:99px; padding:11px 18px; box-shadow:var(--shadow-sm); }
.da-schedule .s b{ color:var(--brand-deep); }

.da-timeline{ position:relative; max-width:880px; margin:0 auto; padding-left:8px; }
.da-timeline::before{ content:""; position:absolute; left:30px; top:8px; bottom:8px; width:2px; background:linear-gradient(180deg,var(--brand),var(--violet)); opacity:.35; }
.da-tl-item{ position:relative; padding:0 0 22px 76px; }
.da-tl-item:last-child{ padding-bottom:0; }
.da-tl-num{
  position:absolute; left:0; top:0; width:60px; height:60px; border-radius:18px;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif; color:#fff; z-index:1;
  background:linear-gradient(135deg,var(--brand),var(--brand-deep));
  box-shadow:0 12px 24px -10px rgba(10,150,199,.6);
}
.da-tl-num small{ font-size:9px; letter-spacing:.1em; opacity:.85; text-transform:uppercase; }
.da-tl-num b{ font-size:20px; line-height:1; }
.da-tl-item.t-violet .da-tl-num{ background:linear-gradient(135deg,#8b6dff,var(--violet)); box-shadow:0 12px 24px -10px rgba(124,92,255,.6); }
.da-tl-item.t-amber .da-tl-num{ background:linear-gradient(135deg,#f7b53d,var(--amber)); box-shadow:0 12px 24px -10px rgba(245,166,35,.55); }
.da-tl-item.t-mint .da-tl-num{ background:linear-gradient(135deg,#23c08e,var(--mint)); box-shadow:0 12px 24px -10px rgba(24,163,123,.55); }
.da-tl-card{ background:var(--white); border:1px solid var(--line); border-radius:var(--radius-sm); padding:20px 22px; box-shadow:var(--shadow-sm); }
.da-tl-card h3{ font-size:18px; margin-bottom:8px; }
.da-tl-card .wk-range{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:12px; letter-spacing:.04em; color:var(--brand-deep); text-transform:uppercase; }
.da-tl-card p{ font-size:14.5px; color:var(--ink-2); margin:6px 0 0; }
.da-tl-card .why{ display:block; margin-top:10px; font-size:13.5px; color:var(--muted); border-top:1px dashed var(--line); padding-top:10px; }
.da-tl-card .why b{ color:var(--ink); font-weight:700; }
.da-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.da-chips span{ font-size:12px; font-weight:600; color:var(--ink-2); background:var(--paper-2); border:1px solid var(--line-soft); border-radius:8px; padding:4px 9px; }
.da-chips span.ai{ background:var(--violet-soft); color:#5a3fd6; border-color:rgba(124,92,255,.2); }

/* ════════════════════════════════════════════════════════════
   PROJECTS
   ════════════════════════════════════════════════════════════ */
.da-projects{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.da-proj{
  position:relative; overflow:hidden; border-radius:var(--radius);
  background:var(--white); border:1px solid var(--line); box-shadow:var(--shadow-sm);
  padding:26px 24px; transition:transform .2s ease, box-shadow .2s ease;
}
.da-proj:hover{ transform:translateY(-5px); box-shadow:var(--shadow); }
.da-proj::before{ content:""; position:absolute; inset:0 auto auto 0; height:4px; width:100%; background:linear-gradient(90deg,var(--brand),var(--violet)); }
.da-proj .tag{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--brand-deep); }
.da-proj h3{ font-size:18px; margin:8px 0 6px; }
.da-proj p{ font-size:14px; color:var(--ink-2); margin:0; }
.da-proj .e{ font-size:26px; }

/* ════════════════════════════════════════════════════════════
   GENAI ADVANTAGE (dark feature band)
   ════════════════════════════════════════════════════════════ */
.da-dark{ background:linear-gradient(160deg,var(--navy),#0a1a26 55%,#0c2230); color:#cdd8e0; position:relative; overflow:hidden; }
.da-dark::after{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.5;
  background:radial-gradient(50% 50% at 80% 10%, rgba(124,92,255,.25), transparent 60%),
            radial-gradient(45% 45% at 10% 90%, rgba(10,150,199,.22), transparent 60%); }
.da-dark .da-eyebrow{ background:rgba(124,92,255,.18); color:#c9bcff; }
.da-dark h2{ color:#fff; }
.da-dark .da-lede{ color:#aebcc7; }
.da-ai-grid{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:8px; }
.da-ai-grid span{
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:14.5px; color:#eaf1f6;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);
  border-radius:12px; padding:11px 17px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
}
.da-ai-grid span .e{ margin-right:7px; }
.da-10x{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:#fff; font-size:clamp(20px,3vw,30px); margin-top:30px; }
.da-10x em{ font-style:normal; background:linear-gradient(90deg,#62c1e0,#bfb0ff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

/* ════════════════════════════════════════════════════════════
   PROCESS FLOW (after every class)
   ════════════════════════════════════════════════════════════ */
.da-flow{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:center; max-width:920px; margin:0 auto; }
.da-flow .step{
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:14.5px; color:var(--ink);
  background:var(--white); border:1px solid var(--line); border-radius:13px;
  padding:12px 18px; box-shadow:var(--shadow-sm);
}
.da-flow .step .e{ margin-right:8px; }
.da-flow .step:last-child{ background:linear-gradient(135deg,var(--brand),var(--brand-deep)); color:#fff; border-color:transparent; }
.da-flow .arr{ color:var(--brand); font-weight:800; opacity:.55; }

/* ── hiring grid ──────────────────────────────────────────── */
.da-hire{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.da-hire .h{ display:flex; align-items:center; gap:12px; background:var(--white); border:1px solid var(--line); border-radius:14px; padding:16px 18px; box-shadow:var(--shadow-sm); font-weight:600; color:var(--ink); font-size:15px; }
.da-hire .h .e{ font-size:20px; }

/* ════════════════════════════════════════════════════════════
   MENTOR
   ════════════════════════════════════════════════════════════ */
.da-mentor{ display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(30px,5vw,56px); align-items:center; }
.da-mentor-photo{ position:relative; }
.da-mentor-photo img{ width:100%; border-radius:26px; box-shadow:var(--shadow-lg); }
.da-mentor-photo .cap{
  position:absolute; left:18px; bottom:18px; right:18px;
  display:flex; align-items:center; gap:12px;
  background:rgba(255,255,255,.9); border:1px solid var(--line);
  border-radius:16px; padding:12px 14px; box-shadow:var(--shadow);
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.da-mentor-photo .cap .av{ width:42px; height:42px; border-radius:50%; flex-shrink:0; background:linear-gradient(135deg,var(--brand),var(--brand-deep)); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; font-family:'Plus Jakarta Sans',sans-serif; }
.da-mentor-photo .cap .nm{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:var(--ink); font-size:15px; }
.da-mentor-photo .cap .rl{ font-size:13px; color:var(--muted); }
.da-mentor blockquote{ font-family:'Plus Jakarta Sans',sans-serif; font-size:clamp(19px,2.6vw,27px); font-weight:800; color:var(--ink); line-height:1.36; margin:0 0 18px; }
.da-mentor blockquote em{ font-style:normal; color:var(--brand-deep); }
.da-mentor .story p{ font-size:16px; color:var(--ink-2); }
.da-mentor .role-row{ display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 22px; }
.da-mentor .role-row .r{ font-size:13px; font-weight:600; color:var(--ink-2); background:var(--white); border:1px solid var(--line); border-radius:99px; padding:7px 14px; box-shadow:var(--shadow-sm); }
.da-video{ position:relative; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); border:1px solid var(--line); aspect-ratio:16/9; margin-top:22px; background:#000; }
.da-video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }

/* ════════════════════════════════════════════════════════════
   SELF-LEARNER (honesty) — split panel
   ════════════════════════════════════════════════════════════ */
.da-split{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.da-panel{ border-radius:var(--radius); padding:32px; }
.da-panel h3{ font-size:21px; margin-bottom:8px; display:flex; align-items:center; gap:10px; }
.da-panel ul{ list-style:none; margin:14px 0 0; padding:0; }
.da-panel li{ padding:8px 0 8px 28px; position:relative; font-size:15px; color:var(--ink); }
.da-panel li::before{ content:"→"; position:absolute; left:0; color:var(--brand); font-weight:800; }
.da-panel.solo{ background:var(--white); border:1px solid var(--line); box-shadow:var(--shadow-sm); }
.da-panel.cohort{ background:linear-gradient(165deg,#0e1b27,#15212c); border:1px solid rgba(255,255,255,.08); box-shadow:var(--shadow); }
.da-panel.cohort h3{ color:#fff; } .da-panel.cohort li{ color:#dbe6ee; } .da-panel.cohort li::before{ color:#5ce0b0; }
.da-panel.cohort p{ color:#aebcc7; }
.da-panel .lead{ font-size:14.5px; color:var(--muted); }
.da-panel.cohort .lead{ color:#9fb0bd; }
.da-panel .da-btn{ margin-top:20px; }

/* ════════════════════════════════════════════════════════════
   PRICING
   ════════════════════════════════════════════════════════════ */
.da-pricing{ max-width:560px; margin:0 auto; text-align:center; padding:clamp(30px,5vw,46px); }
.da-price-row{ display:flex; align-items:baseline; gap:14px; justify-content:center; margin:6px 0 4px; flex-wrap:wrap; }
.da-price-now{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; font-size:clamp(40px,7vw,58px); color:var(--ink); letter-spacing:-.03em; }
.da-price-was{ font-size:22px; color:var(--muted); text-decoration:line-through; }
.da-price-off{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:13px; color:#0c7a5a; background:var(--mint-soft); border-radius:99px; padding:6px 13px; }
/* inline-block + rounded-rect (not a 99px pill): the batch line is a full
   sentence that wraps to several lines on mobile — a pill radius turns that
   into an ugly circle, so it uses the card radius and flows as centered text. */
.da-batchline{ display:inline-block; text-align:center; font-size:14px; font-weight:600; color:#05506e; background:var(--brand-soft); border:1px solid rgba(10,150,199,.25); border-radius:var(--radius-sm); padding:10px 16px; margin:16px 0 2px; max-width:100%; line-height:1.55; }
.da-batchline b{ color:var(--brand-deep); }
.da-batchline > span, .da-flexpay > span{ margin-right:3px; }
.da-flexpay{ display:inline-block; text-align:center; font-size:14px; font-weight:600; color:var(--ink-2); background:var(--amber-soft); border:1px solid rgba(245,166,35,.25); border-radius:var(--radius-sm); padding:10px 16px; margin:18px 0 4px; max-width:100%; line-height:1.55; }
.da-incl{ list-style:none; margin:22px auto 24px; padding:0; max-width:420px; text-align:left; }
.da-incl li{ padding:9px 0 9px 30px; position:relative; font-size:15px; color:var(--ink); border-top:1px solid var(--line-soft); }
.da-incl li:first-child{ border-top:none; }
.da-incl li::before{ content:"✓"; position:absolute; left:0; color:var(--mint); font-weight:800; }

/* ── rewards ──────────────────────────────────────────────── */
.da-rewards{ display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.da-reward{ text-align:center; background:var(--white); border:1px solid var(--line); border-radius:16px; padding:24px 16px; box-shadow:var(--shadow-sm); }
.da-reward .e{ font-size:30px; display:block; margin-bottom:10px; }
.da-reward b{ font-family:'Plus Jakarta Sans',sans-serif; font-size:14.5px; color:var(--ink); }

/* ── certificate (mirrors the homepage) ──────────────────────── */
.da-cert-frame{ max-width:840px; margin:0 auto; background:var(--white); border:1px solid var(--line); border-radius:24px; padding:14px; box-shadow:var(--shadow-lg); }
.da-cert-frame img{ width:100%; border-radius:14px; display:block; }
.da-cert-badges{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:22px; }
.da-cert-badges span{ font-size:13.5px; font-weight:600; color:var(--ink-2); background:var(--white); border:1px solid var(--line); border-radius:99px; padding:8px 16px; box-shadow:var(--shadow-sm); }

/* ── the promise ──────────────────────────────────────────── */
.da-promise{ max-width:760px; margin:0 auto; }
.da-promise ul{ list-style:none; margin:24px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.da-promise li{ padding:14px 18px 14px 46px; position:relative; background:var(--white); border:1px solid var(--line); border-radius:14px; font-weight:600; color:var(--ink); box-shadow:var(--shadow-sm); }
.da-promise li::before{ content:"✓"; position:absolute; left:18px; top:14px; color:var(--brand); font-weight:800; }
.da-promise .yours{ margin-top:22px; font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:var(--ink); font-size:clamp(17px,2.4vw,22px); text-align:center; }
.da-promise .yours em{ font-style:normal; color:var(--coral); }

/* ════════════════════════════════════════════════════════════
   FINAL CTA
   ════════════════════════════════════════════════════════════ */
.da-final{ background:linear-gradient(165deg,#0c1822,#0e2230 60%,#10303f); color:#cdd8e0; position:relative; overflow:hidden; text-align:center; }
.da-final::after{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.55;
  background:radial-gradient(45% 50% at 50% 0%, rgba(10,150,199,.3), transparent 60%),
            radial-gradient(40% 40% at 85% 90%, rgba(255,122,89,.2), transparent 60%); }
.da-final h2{ color:#fff; font-size:clamp(28px,5vw,52px); }
.da-final .em{ background:linear-gradient(90deg,#62c1e0,#ffb59f); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.da-final .da-lede{ color:#b8c6d2; max-width:680px; margin:0 auto 30px; }
.da-final .da-hero-cta{ margin-bottom:30px; }
.da-final .closing{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; color:#eaf1f6; font-size:clamp(15px,2vw,18px); line-height:2; }
.da-final .closing b{ color:#7fe0c1; }

/* ════════════════════════════════════════════════════════════
   FOOTER (own dark-navy, no site.css dependency)
   ════════════════════════════════════════════════════════════ */
/* extra bottom padding so the fixed sticky CTA bar never hides the copyright */
.da-ftr{ background:#0a141c; color:#aebcc7; padding:60px 22px 104px; font-family:'Inter',system-ui,sans-serif; }
.da-ftr .in{ max-width:var(--maxw); margin:0 auto; }
.da-ftr .grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:34px; margin-bottom:40px; }
.da-ftr .logo{ font-family:'Plus Jakarta Sans',sans-serif; color:#fff; font-size:23px; font-weight:800; letter-spacing:-.03em; }
.da-ftr .logo b{ color:var(--brand); }
.da-ftr p{ font-size:14.5px; color:#94a6b3; max-width:330px; margin:14px 0 0; }
.da-ftr h4{ color:#fff; font-size:13px; letter-spacing:.06em; text-transform:uppercase; margin:0 0 14px; font-family:'Plus Jakarta Sans',sans-serif; }
.da-ftr a{ color:#aebcc7; font-size:14.5px; display:block; padding:5px 0; }
.da-ftr a:hover{ color:#fff; }
.da-ftr .social{ display:flex; gap:12px; margin-top:18px; }
.da-ftr .social a{ width:40px; height:40px; border-radius:11px; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; padding:0; }
.da-ftr .social a svg{ width:18px; height:18px; fill:#cdd8e0; }
.da-ftr .social a:hover{ background:var(--brand); }
.da-ftr .social a:hover svg{ fill:#fff; }
.da-ftr .bot{ border-top:1px solid rgba(255,255,255,.1); padding-top:22px; text-align:center; font-size:13px; color:#7c8d9a; }
.da-ftr .bot a{ display:inline; color:var(--brand); }
@media(max-width:820px){ .da-ftr .grid{ grid-template-columns:1fr 1fr; gap:30px; } }
@media(max-width:520px){ .da-ftr{ padding:48px 20px 96px; } .da-ftr .grid{ grid-template-columns:1fr; gap:26px; } .da-ftr p{ max-width:none; } .da-ftr a{ padding:8px 0; } }

/* ════════════════════════════════════════════════════════════
   STICKY CTA BAR  ·  WHATSAPP FLOAT  ·  BACK-TO-TOP
   ════════════════════════════════════════════════════════════ */
.da-sticky{
  position:fixed; left:0; right:0; bottom:0; z-index:120;
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:14px;
  padding:13px clamp(14px,4vw,28px);
  background:rgba(255,250,244,.92); border-top:1px solid var(--line);
  backdrop-filter:saturate(180%) blur(14px); -webkit-backdrop-filter:saturate(180%) blur(14px);
  box-shadow:0 -14px 34px -20px rgba(15,42,64,.4);
  transform:translateY(120%); transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.da-sticky.show{ transform:translateY(0); }
.da-sticky .info{ min-width:0; }
.da-sticky .info b{ font-family:'Plus Jakarta Sans',sans-serif; color:var(--ink); font-size:15px; display:block; line-height:1.2; }
.da-sticky .info span{ font-size:12.5px; color:var(--muted); }
.da-sticky .acts{ display:flex; gap:10px; flex-shrink:0; justify-self:end; }
.da-sticky .da-btn{ min-height:48px; padding:12px 20px; font-size:15px; }
.da-sticky .da-eb-sticky{ justify-self:center; display:flex; align-items:center; gap:7px; white-space:nowrap; }
.da-sticky .da-eb-sticky .ico{ font-size:16px; }
.da-sticky .da-eb-sticky .lbl{ font-size:12px; font-weight:700; color:var(--muted); }

/* --fd-sticky-h is set by JS to the sticky bar's live height while it's shown
   (0 otherwise), so the floating buttons + toast always clear it by a fixed
   gap at ANY viewport width — no per-breakpoint magic offsets to keep in sync. */
.da-wa{
  position:fixed; right:18px; bottom:calc(var(--fd-sticky-h, 0px) + 20px); z-index:115;
  display:inline-flex; align-items:center; gap:9px;
  background:#25D366; color:#fff; font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:14px;
  padding:12px 16px; border-radius:99px; box-shadow:0 16px 34px -12px rgba(37,211,102,.6);
  transition:transform .16s ease, bottom .35s cubic-bezier(.2,.7,.2,1);
}
.da-wa:hover{ transform:translateY(-2px); color:#fff; }
.da-wa svg{ width:20px; height:20px; fill:#fff; }

.da-top{
  position:fixed; right:18px; bottom:calc(var(--fd-sticky-h, 0px) + 78px); z-index:114; width:46px; height:46px; border-radius:50%;
  border:1px solid var(--line); background:#fff; color:var(--ink); cursor:pointer;
  font-size:20px; box-shadow:var(--shadow); opacity:0; pointer-events:none; transition:opacity .25s ease, transform .16s ease, bottom .35s cubic-bezier(.2,.7,.2,1);
}
.da-top.show{ opacity:1; pointer-events:auto; }
.da-top:hover{ transform:translateY(-2px); color:var(--brand-deep); }

/* ════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════ */
@media(max-width:980px){
  .da-grid-3,.da-projects,.da-hire,.da-flow{ }
  .da-grid-3{ grid-template-columns:1fr 1fr; }
  .da-projects{ grid-template-columns:1fr 1fr; }
  .da-hire{ grid-template-columns:1fr 1fr; }
  .da-grid-4{ grid-template-columns:1fr 1fr; }
  .da-rewards{ grid-template-columns:repeat(3,1fr); }
  .da-mentor{ grid-template-columns:1fr; }
  .da-mentor-photo{ max-width:440px; margin:0 auto; }
}
@media(max-width:760px){
  .da-twocol,.da-compare,.da-grid-2,.da-split{ grid-template-columns:1fr; }
  .da-promise ul{ grid-template-columns:1fr; }
  .da-btn{ white-space:normal; }
}
/* Below ~960px there isn't room for info + centered countdown + buttons in one
   row (the info column collapses and its text wraps character-by-character), so
   the sticky bar stacks into two rows: centered countdown on top, full-width
   buttons below. The floating buttons' offsets track the bar height via JS. */
@media(max-width:960px){
  .da-sticky{ grid-template-columns:1fr; grid-template-rows:auto auto; gap:8px; padding:10px clamp(14px,4vw,28px) 12px; justify-items:center; }
  .da-sticky .info{ display:none; }
  .da-sticky .da-eb-sticky{ justify-self:center; }
  .da-sticky .da-eb-sticky .lbl{ display:none; }   /* keep just the icon + flip-clock */
  .da-sticky .acts{ width:100%; justify-self:stretch; }
  .da-sticky .da-btn{ flex:1; min-height:46px; }
  .da-flip-clock.sm .unit{ padding:4px 6px; min-width:24px; }
  .da-flip-clock.sm .unit .val{ font-size:13px; }
  .da-flip-clock.sm .unit .tag{ font-size:7px; }
  .da-flip-clock.sm .sep{ font-size:12px; padding-bottom:6px; }
}
@media(max-width:600px){
  .danew{ font-size:16px; }
  .da-grid-3,.da-projects,.da-grid-4,.da-hire{ grid-template-columns:1fr; }
  .da-rewards{ grid-template-columns:1fr 1fr; }
  .da-timeline::before{ left:24px; }
  .da-tl-item{ padding-left:64px; }
  .da-tl-num{ width:50px; height:50px; border-radius:15px; }
  .da-tl-num b{ font-size:17px; }
  .da-wa span{ display:none; }
  .da-wa{ padding:13px; }
}

/* respect reduced-motion — but keep the marquees scrolling (matches the homepage,
   which never blanket-disabled them). Only the decorative reveal/pulse stop. */
@media(prefers-reduced-motion:reduce){
  .da-reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
  .da-kicker .dot{ animation:none !important; }
  .da-sticky{ transition:none; }
  .da-vmodal-bd, .da-vmodal-box{ transition:none !important; transform:none !important; }
}

/* ════════════════════════════════════════════════════════════
   ADDED SECTIONS — testimonials · video reel · ROI · guarantee
   · urgency/FOMO · motivational close
   ════════════════════════════════════════════════════════════ */

/* hero urgency note + "lead the future" */
.da-hero-note{ display:inline-flex; align-items:center; gap:8px; margin-top:4px; margin-bottom:26px; font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:13.5px; color:#b23a17; background:#ffe1d6; border:1px solid rgba(255,122,89,.3); border-radius:99px; padding:8px 16px; }

/* ── stats strip ── */
.da-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; max-width:900px; margin:0 auto clamp(28px,4vw,42px); }
.da-stat{ text-align:center; background:var(--white); border:1px solid var(--line); border-radius:18px; padding:22px 12px; box-shadow:var(--shadow-sm); }
.da-stat .n{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; font-size:clamp(22px,3.2vw,32px); color:var(--brand-deep); letter-spacing:-.02em; line-height:1; }
.da-stat .l{ font-size:13px; color:var(--muted); margin-top:7px; }

/* ── featured testimonial video ── */
.da-testi-feat{ display:grid; grid-template-columns:1.05fr .95fr; gap:26px; align-items:center; margin-bottom:30px; }
.da-testi-video{ position:relative; border-radius:var(--radius); overflow:hidden; aspect-ratio:16/9; box-shadow:var(--shadow); border:1px solid var(--line); background:#000; }
.da-testi-video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.da-testi-quote .big{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:var(--ink); font-size:clamp(20px,2.7vw,29px); line-height:1.34; margin:0 0 14px; }
.da-testi-quote .big em{ font-style:normal; color:var(--brand-deep); }
.da-testi-quote p{ font-size:15.5px; color:var(--ink-2); }

/* ── moving testimonial marquee (mirrors the homepage animation) ── */
.da-tmarq{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-height:600px; overflow:hidden; position:relative; -webkit-mask:linear-gradient(180deg,transparent,#000 11%,#000 89%,transparent); mask:linear-gradient(180deg,transparent,#000 11%,#000 89%,transparent); }
.da-tcol{ display:flex; flex-direction:column; gap:18px; animation:daTscroll 46s linear infinite; will-change:transform; }
.da-tcol.c2{ animation-duration:60s; } .da-tcol.c3{ animation-duration:52s; } .da-tcol.rev{ animation-direction:reverse; }
.da-tmarq:hover .da-tcol, .da-tmarq.focusing .da-tcol{ animation-play-state:paused; }
@keyframes daTscroll{ from{ transform:translateY(0); } to{ transform:translateY(-50%); } }
.da-tcard{ background:var(--white); border:1px solid var(--line); border-radius:16px; padding:20px; box-shadow:var(--shadow-sm); border-top:4px solid var(--brand); cursor:pointer; transition:transform .25s, box-shadow .25s, filter .25s, opacity .25s; }
.da-tcard.c{ border-top-color:var(--coral); } .da-tcard.m{ border-top-color:var(--mint); } .da-tcard.v{ border-top-color:var(--violet); } .da-tcard.a{ border-top-color:var(--amber); }
.da-tcard .stars{ color:var(--amber); letter-spacing:1.5px; font-size:14px; }
.da-tcard p{ font-size:15px; color:var(--ink); margin:8px 0 14px; line-height:1.6; }
.da-tcard .who{ display:flex; align-items:center; gap:10px; }
.da-tcard .who .av{ width:38px; height:38px; border-radius:50%; color:#fff; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-weight:800; font-family:'Plus Jakarta Sans',sans-serif; }
.da-tcard .who .nm{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; color:var(--ink); font-size:14px; }
.da-tcard.focused{ transform:scale(1.06); box-shadow:var(--shadow-lg); border-color:var(--brand); position:relative; z-index:6; }
.da-tmarq.focusing .da-tcard:not(.focused){ filter:blur(2.5px); opacity:.45; }
@media(max-width:820px){ .da-tmarq{ grid-template-columns:repeat(2,1fr); } .da-tcol.c3{ display:none; } }
@media(max-width:540px){ .da-tmarq{ grid-template-columns:1fr; max-height:560px; } .da-tcol.c2{ display:none; } }

/* ── video reel (clickable YouTube thumbnails → open in new tab) ── */
.da-reel{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; max-width:960px; margin:0 auto; }
.da-reel-card{ position:relative; display:block; width:100%; padding:0; border-radius:18px; overflow:hidden; aspect-ratio:16/9; background:#0a1e38; box-shadow:var(--shadow-sm); border:1px solid var(--line); cursor:pointer; transition:transform .18s ease, box-shadow .18s ease; }
.da-reel-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow); }

/* ── video lightbox: cinematic full-black spotlight backdrop — everything
   behind the video goes dark + heavily blurred, the video card fades/scales
   in with a soft glow so it reads as the one lit thing on screen ── */
.da-vmodal{ position:fixed; inset:0; z-index:200; display:none; align-items:center; justify-content:center; padding:20px; }
.da-vmodal.open{ display:flex; }
.da-vmodal-bd{
  position:absolute; inset:0; background:radial-gradient(120% 100% at 50% 45%,#0a0a0c,#000 72%);
  backdrop-filter:blur(24px) saturate(110%); -webkit-backdrop-filter:blur(24px) saturate(110%);
  opacity:0; transition:opacity .45s ease;
}
.da-vmodal.open .da-vmodal-bd{ opacity:.97; }
.da-vmodal-box{
  position:relative; z-index:1; width:min(420px,92vw);
  opacity:0; transform:scale(.9) translateY(18px);
  transition:opacity .45s cubic-bezier(.2,.8,.2,1), transform .45s cubic-bezier(.2,.8,.2,1);
}
.da-vmodal.open .da-vmodal-box{ opacity:1; transform:scale(1) translateY(0); }
.da-vmodal-frame{
  position:relative; border-radius:20px; overflow:hidden; aspect-ratio:9/16; background:#000;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 0 0 1px rgba(255,255,255,.05), 0 50px 120px -20px rgba(0,0,0,.85), 0 0 140px -12px rgba(255,255,255,.16);
}
.da-vmodal-frame iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.da-vmodal-x{
  position:absolute; top:-46px; right:0; width:38px; height:38px; border-radius:50%; border:none;
  background:rgba(255,255,255,.92); color:var(--ink); font-size:17px; cursor:pointer; box-shadow:var(--shadow);
  display:flex; align-items:center; justify-content:center; transition:transform .2s ease, background .2s ease;
}
.da-vmodal-x:hover{ background:#fff; transform:rotate(90deg) scale(1.08); }
.da-reel img{ width:100%; height:100%; object-fit:cover; }
.da-reel .pl{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.da-reel .pl span{ width:54px; height:54px; border-radius:50%; background:rgba(255,255,255,.94); color:#0a1e38; display:flex; align-items:center; justify-content:center; font-size:18px; padding-left:3px; box-shadow:var(--shadow); }
.da-reel .cap{ position:absolute; left:0; right:0; bottom:0; padding:24px 14px 12px; background:linear-gradient(180deg,transparent,rgba(0,0,0,.78)); color:#fff; font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:13.5px; text-align:left; }

/* ── ROI ── */
.da-roi{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.da-roi .r{ background:var(--white); border:1px solid var(--line); border-radius:18px; padding:24px 18px; box-shadow:var(--shadow-sm); text-align:center; }
.da-roi .r .lbl{ font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); }
.da-roi .r .val{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; font-size:clamp(20px,2.8vw,28px); color:var(--ink); margin-top:8px; line-height:1.1; }
.da-roi .r .sub{ font-size:12.5px; color:var(--muted); margin-top:6px; }
.da-roi .r.invest{ background:linear-gradient(160deg,#fff,#fff1e8); border-color:rgba(255,122,89,.32); }
.da-roi .r.invest .val{ color:#d4502b; }
.da-roi .r.peak{ background:linear-gradient(160deg,#0e1b27,#15212c); border-color:transparent; box-shadow:var(--shadow); }
.da-roi .r.peak .lbl{ color:#9fb0bd; } .da-roi .r.peak .val{ color:#7fe0c1; } .da-roi .r.peak .sub{ color:#9fb0bd; }
.da-roi-x{ text-align:center; font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:var(--ink); font-size:clamp(22px,4vw,38px); margin-top:28px; }
.da-roi-x em{ font-style:normal; color:var(--brand-deep); }
p.da-roi-note{ text-align:center; font-size:12.5px; color:var(--muted); margin-top:12px; max-width:680px; margin-left:auto; margin-right:auto; }

/* ── guarantee / refund ── */
.da-guarantee{ display:flex; gap:18px; align-items:center; max-width:680px; margin:24px auto 0; background:linear-gradient(160deg,#d3f1e6,#fff); border:1px solid rgba(24,163,123,.32); border-radius:20px; padding:22px 24px; box-shadow:var(--shadow-sm); }
.da-guarantee .badge{ flex-shrink:0; width:62px; height:62px; border-radius:50%; background:linear-gradient(135deg,#23c08e,var(--mint)); color:#fff; display:flex; align-items:center; justify-content:center; font-size:28px; box-shadow:0 12px 24px -10px rgba(24,163,123,.6); }
.da-guarantee b{ font-family:'Plus Jakarta Sans',sans-serif; color:var(--ink); font-size:17px; }
.da-guarantee p{ margin:5px 0 0; font-size:14.5px; color:var(--ink-2); }

/* ── urgency / FOMO band ── */
.da-fomo{ background:linear-gradient(160deg,var(--navy),#0a1a26 55%,#0c2230); color:#cdd8e0; position:relative; overflow:hidden; text-align:center; }
.da-fomo::after{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.55;
  background:radial-gradient(45% 60% at 85% 8%, rgba(10,150,199,.3), transparent 60%),
            radial-gradient(40% 50% at 12% 92%, rgba(255,122,89,.18), transparent 60%); }
.da-fomo h2{ color:#fff; font-size:clamp(26px,5vw,46px); }
.da-fomo p{ color:#b8c6d2; font-size:clamp(16px,2.2vw,21px); max-width:780px; margin:0 auto; }
.da-fomo .scar{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin:22px 0 26px; }
.da-fomo .scar span{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); border-radius:99px; padding:9px 17px; font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:14px; color:#eaf1f6; }
.da-fomo .da-btn{ background:linear-gradient(135deg,var(--brand),var(--brand-deep)); color:#fff; box-shadow:0 14px 30px -12px rgba(10,150,199,.6); }
.da-fomo .da-btn:hover{ color:#fff; }

/* ── motivational block (inside the dark final section) ── */
.da-motive{ display:grid; gap:12px; max-width:780px; margin:6px auto 30px; text-align:left; }
.da-motive .m{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.13); border-radius:16px; padding:16px 20px; color:#dbe6ee; font-size:15.5px; line-height:1.6; }
.da-motive .m b{ color:#fff; } .da-motive .m em{ font-style:normal; color:#7fe0c1; }
.da-motive .m .h{ display:block; font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; color:#fff; font-size:17px; margin-bottom:3px; }

/* ════════ FAQ accordion ════════ */
.da-faq{ max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:10px; }
.da-fi{ border:1.5px solid var(--line); border-radius:14px; background:#fff; overflow:hidden; transition:border-color .2s; }
.da-fi[open]{ border-color:var(--brand); }
.da-fi summary{
  list-style:none; cursor:pointer;
  padding:18px 56px 18px 22px;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:16px; color:var(--ink);
  position:relative; user-select:none;
}
.da-fi summary::-webkit-details-marker{ display:none; }
.da-fi summary::after{
  content:'+'; position:absolute; right:20px; top:50%; transform:translateY(-50%);
  font-size:22px; font-weight:400; color:var(--brand); line-height:1;
  transition:transform .2s;
}
.da-fi[open] summary::after{ transform:translateY(-50%) rotate(45deg); }
.da-fi .ans{
  padding:0 22px 20px; font-size:15px; line-height:1.7; color:var(--ink-2);
  border-top:1px solid var(--line);
}

/* ════════ extra responsive hardening (mobile-first; social traffic) ════════ */
@media(max-width:980px){
  .da-testi-feat{ grid-template-columns:1fr; }
  .da-roi{ grid-template-columns:1fr 1fr; }
  .da-stats{ grid-template-columns:1fr 1fr; }
}
@media(max-width:600px){
  .da-section{ padding:clamp(44px,11vw,72px) 0; }
  .da-hero-cta{ flex-direction:column; }
  .da-hero-cta .da-btn{ width:100%; }
  .da-final .da-hero-cta .da-btn{ width:100%; }
  .da-reel{ grid-template-columns:1fr 1fr; gap:12px; }
  .da-guarantee{ flex-direction:column; text-align:center; }
  .da-motive{ text-align:left; }
  .da-rm-track{ justify-content:flex-start; }
  .da-rm-step{ font-size:12.5px; padding:8px 11px; }
  .da-rm-arrow{ font-size:14px; }
  .da-ai-grid span{ font-size:13px; padding:9px 13px; }
  .da-pill{ font-size:13.5px; padding:10px 16px; }
  .da-badge{ font-size:13px; padding:8px 13px; }
  .da-schedule .s{ font-size:13px; padding:9px 14px; }
  .da-flow .step{ font-size:13px; padding:10px 14px; }
  .da-vmodal-box{ width:min(360px,90vw); }
  .da-btn{ white-space:normal; }
  .da-kicker{ border-radius:18px; }
  .da-hero-note{ border-radius:18px; }
}

/* Horizontal-scroll guard lives on <html> only (see assets/css/fd-shell.css) —
   putting it on .danew (the <body> class) too breaks the sticky header, since
   it turns body into its own scroll container. Keep anchors clear of it. */
html{ scroll-padding-top:84px; }
