
.jdsa {
  --ink:#182133;
  --forest:#465f46;
  --forest-deep:#263c31;
  --gold:#b88938;
  --parchment:#f7f0df;
  --cream:#fffdf7;
  --line:#d9c9a6;
  --muted:#667085;
  max-width: 1240px;
  margin: 0 auto;
  color: var(--ink);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.jdsa * { box-sizing:border-box; }
.jdsa h1,.jdsa h2,.jdsa h3,.jdsa blockquote {
  font-family: Georgia, "Times New Roman", serif;
}
.jdsa a { color:inherit; }
.jdsa-hero {
  display:grid;
  grid-template-columns:minmax(260px,.72fr) 1.28fr;
  min-height:620px;
  background:linear-gradient(135deg,var(--parchment),#fffaf0);
  border:1px solid var(--line);
  overflow:hidden;
}
.jdsa-hero__art {
  position:relative;
  display:grid;
  place-items:center;
  min-height:500px;
  background:
    radial-gradient(circle at 50% 35%, rgba(255,255,255,.95), rgba(255,255,255,0) 24%),
    linear-gradient(165deg,#759174 0%,#334c3a 62%,#17271f 100%);
}
.jdsa-halo {
  position:absolute;
  width:270px;height:270px;border-radius:50%;
  border:2px solid rgba(238,204,121,.7);
  box-shadow:0 0 0 18px rgba(238,204,121,.08),0 0 80px rgba(255,225,140,.28);
}
.jdsa-portrait-image {
  position:relative;
  z-index:1;
  width:min(82%, 430px);
  max-height:540px;
  object-fit:cover;
  object-position:center top;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.35);
  box-shadow:0 30px 70px rgba(0,0,0,.35);
}
.jdsa-hero__content { padding:clamp(38px,7vw,88px); align-self:center; }
.jdsa-eyebrow,.jdsa-kicker { letter-spacing:.16em;font-size:.75rem;font-weight:800;color:var(--forest); }
.jdsa h1 { font-size:clamp(2.5rem,6vw,5.5rem);line-height:.95;margin:.15em 0 .3em; }
.jdsa-subtitle { font-size:clamp(1.1rem,2vw,1.45rem);max-width:700px; }
.jdsa blockquote { margin:2rem 0;padding-left:1.25rem;border-left:4px solid var(--gold);font-size:1.25rem;font-style:italic; }
.jdsa-actions { display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem; }
.jdsa-button {
  appearance:none;border:1px solid var(--forest);background:transparent;color:var(--forest-deep);
  padding:.85rem 1.1rem;border-radius:999px;text-decoration:none;font-weight:750;cursor:pointer;
}
.jdsa-button:hover,.jdsa-button:focus { transform:translateY(-1px);box-shadow:0 5px 16px rgba(0,0,0,.12); }
.jdsa-button--primary { background:var(--forest-deep);color:white; }
.jdsa-jump {
  position:sticky;top:0;z-index:10;display:flex;gap:1rem;overflow:auto;
  padding:.85rem 1rem;background:rgba(255,253,247,.96);border:1px solid var(--line);border-top:0;
}
.jdsa-jump a { white-space:nowrap;text-decoration:none;font-size:.9rem;font-weight:700; }
.jdsa-section { position:relative;padding:clamp(62px,9vw,115px) clamp(24px,7vw,88px);background:var(--cream);border-inline:1px solid var(--line); }
.jdsa-section--tinted { background:var(--parchment); }
.jdsa-section--dark { background:var(--forest-deep);color:white; }
.jdsa-module-number { position:absolute;right:2rem;top:1.4rem;font:700 clamp(3rem,8vw,7rem) Georgia,serif;color:rgba(184,137,56,.14); }
.jdsa-section__heading { max-width:760px;margin-bottom:2.2rem; }
.jdsa-section h2 { font-size:clamp(2rem,4vw,3.7rem);margin:0 0 .35em;line-height:1.05; }
.jdsa-card-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1rem; }
.jdsa-reveal-card {
  text-align:left;min-height:290px;padding:1.5rem;border:1px solid var(--line);background:white;cursor:pointer;
  display:flex;flex-direction:column;gap:.8rem;color:var(--ink);
}
.jdsa-reveal-card strong { font:700 1.55rem Georgia,serif; }
.jdsa-card-icon { font-size:2rem;color:var(--gold); }
.jdsa-card-answer { display:none;padding-top:1rem;border-top:1px solid var(--line);line-height:1.6; }
.jdsa-reveal-card[aria-expanded="true"] .jdsa-card-answer { display:block; }
.jdsa-map { display:grid;justify-items:center;gap:1.2rem; }
.jdsa-map__branch { display:none;flex-wrap:wrap;justify-content:center;gap:.8rem;padding:1rem;border-top:1px solid var(--line); }
.jdsa-map__branch.is-visible { display:flex; }
.jdsa-node { border:1px solid var(--forest);background:white;border-radius:999px;padding:.8rem 1rem;cursor:pointer;font-weight:700; }
.jdsa-node--root { font-size:1.3rem;background:var(--forest-deep);color:white; }
.jdsa-node--leaf { cursor:default;background:#eef3ec; }
.jdsa-form { display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:850px; }
.jdsa-form label { display:grid;gap:.4rem;font-weight:700; }
.jdsa-form input,.jdsa-flash-controls select {
  width:100%;padding:.9rem;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);
}
.jdsa-form .jdsa-button { justify-self:start; }
.jdsa-result { margin-top:1.4rem;padding:1.3rem;border-left:4px solid var(--gold);background:rgba(247,240,223,.7);line-height:1.6; }
.jdsa-section--dark .jdsa-result { background:rgba(255,255,255,.08); }
.jdsa-choice-panel { max-width:760px;padding:2rem;border:1px solid rgba(255,255,255,.25); }
.jdsa-choice-step { display:none; }
.jdsa-choice-step.is-active { display:block; }
.jdsa-freedom { display:grid;gap:1.5rem;max-width:820px; }
.jdsa-cake { font-size:5rem; }
.jdsa-now { display:grid;gap:.45rem;padding:1rem;border:1px solid var(--line);background:var(--parchment); }
.jdsa-tabs { display:flex;gap:.5rem;margin-bottom:1rem; }
.jdsa-tab { padding:.8rem 1rem;border:1px solid var(--forest);background:white;cursor:pointer;font-weight:700; }
.jdsa-tab.is-active { background:var(--forest-deep);color:white; }
.jdsa-timeline-panel { display:none;padding:2rem;background:white;border:1px solid var(--line); }
.jdsa-timeline-panel.is-active { display:block; }
.jdsa-linear-flow,.jdsa-vertical-flow { display:flex;align-items:center;justify-content:center;gap:1rem;font:700 1.25rem Georgia,serif; }
.jdsa-vertical-flow { flex-direction:column; }
.jdsa-flash-controls { display:flex;gap:1rem;align-items:end;flex-wrap:wrap;margin-bottom:1.2rem; }
.jdsa-flash-controls label { display:grid;gap:.35rem;font-weight:700;min-width:220px; }
.jdsa-flashcard {
  width:min(100%,760px);min-height:330px;padding:2rem;border:2px solid var(--gold);background:linear-gradient(145deg,#fffdf7,#f4ead2);
  cursor:pointer;text-align:center;display:grid;place-items:center;gap:1rem;color:var(--ink);
}
.jdsa-flashcard__category { font-size:.75rem;letter-spacing:.13em;font-weight:800;color:var(--forest); }
.jdsa-flashcard__front,.jdsa-flashcard__back { font:700 clamp(1.5rem,4vw,2.5rem) Georgia,serif; }
.jdsa-flashcard__back { display:none;font-size:clamp(1.1rem,2.5vw,1.55rem);font-weight:500;line-height:1.5; }
.jdsa-flashcard.is-flipped .jdsa-flashcard__front { display:none; }
.jdsa-flashcard.is-flipped .jdsa-flashcard__back { display:block; }
.jdsa-confidence { display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem; }
.jdsa-confidence button { padding:.65rem .9rem;border:1px solid var(--line);background:white;cursor:pointer; }
.jdsa-progress { color:var(--muted); }
.jdsa-quiz { max-width:820px; }
.jdsa-quiz-question { padding:1.5rem;border:1px solid rgba(255,255,255,.25); }
.jdsa-quiz-options { display:grid;gap:.65rem;margin:1rem 0; }
.jdsa-quiz-options button { text-align:left;padding:.9rem;border:1px solid rgba(255,255,255,.35);background:transparent;color:white;cursor:pointer; }
.jdsa-quiz-options button:hover { background:rgba(255,255,255,.08); }
.jdsa-quiz-feedback { padding:1rem;background:rgba(255,255,255,.08);line-height:1.55; }
.jdsa-sacred-now { text-align:center;background:radial-gradient(circle at center,#fffdf7 0,#f5ead2 55%,#e6d1a6 100%); }
.jdsa-now-visual { display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;margin:3rem auto;max-width:850px;font-weight:800;letter-spacing:.12em; }
.jdsa-eternal-circle {
  width:230px;height:230px;border-radius:50%;display:grid;place-items:center;
  border:2px solid var(--gold);box-shadow:0 0 0 18px rgba(184,137,56,.08),0 0 80px rgba(184,137,56,.25);
  animation:jdsa-pulse 4s ease-in-out infinite;
}
.jdsa-now-caption { font:italic 1.35rem Georgia,serif; }
.jdsa-footer { padding:2.2rem;background:#17271f;color:white;text-align:center; }
.jdsa-source-note { opacity:.75;font-size:.88rem; }
@keyframes jdsa-pulse { 50% { transform:scale(1.04);box-shadow:0 0 0 28px rgba(184,137,56,.05),0 0 100px rgba(184,137,56,.35); } }
@media (max-width:800px){
  .jdsa-hero{grid-template-columns:1fr;}
  .jdsa-hero__art{min-height:360px;}
  .jdsa-card-grid,.jdsa-form{grid-template-columns:1fr;}
  .jdsa-now-visual{grid-template-columns:1fr;gap:1rem;}
  .jdsa-linear-flow{flex-wrap:wrap;}
}
@media (prefers-reduced-motion:reduce){
  .jdsa *{scroll-behavior:auto!important;animation:none!important;transition:none!important;}
}


/* Theme compatibility overrides */
.jdsa .jdsa-button,
.jdsa .jdsa-node,
.jdsa .jdsa-tab,
.jdsa .jdsa-confidence button,
.jdsa .jdsa-quiz-options button {
  text-decoration:none !important;
}

.jdsa .jdsa-button--primary {
  background:#263c31 !important;
  color:#ffffff !important;
  border-color:#263c31 !important;
}
.jdsa .jdsa-button--primary:hover,
.jdsa .jdsa-button--primary:focus {
  background:#18281f !important;
  color:#ffffff !important;
}

.jdsa .jdsa-node {
  color:#182133 !important;
  background:#ffffff !important;
  border-color:#465f46 !important;
}
.jdsa .jdsa-node:hover,
.jdsa .jdsa-node:focus {
  color:#ffffff !important;
  background:#465f46 !important;
}
.jdsa .jdsa-node--root {
  color:#ffffff !important;
  background:#263c31 !important;
}

.jdsa .jdsa-section--dark,
.jdsa .jdsa-section--dark h2,
.jdsa .jdsa-section--dark h3,
.jdsa .jdsa-section--dark p,
.jdsa .jdsa-choice-panel,
.jdsa .jdsa-choice-panel h3,
.jdsa .jdsa-choice-panel p {
  color:#ffffff !important;
}
.jdsa .jdsa-section--dark .jdsa-button {
  color:#ffffff !important;
  border-color:#d9c9a6 !important;
  background:transparent !important;
}
.jdsa .jdsa-section--dark .jdsa-button:hover,
.jdsa .jdsa-section--dark .jdsa-button:focus {
  color:#263c31 !important;
  background:#ffffff !important;
}
.jdsa .jdsa-section--dark .jdsa-module-number {
  color:rgba(184,137,56,.32) !important;
}

.jdsa .jdsa-tab {
  color:#182133 !important;
  background:#ffffff !important;
  border-color:#465f46 !important;
}
.jdsa .jdsa-tab:hover,
.jdsa .jdsa-tab:focus {
  color:#263c31 !important;
  background:#f7f0df !important;
}
.jdsa .jdsa-tab.is-active {
  color:#ffffff !important;
  background:#263c31 !important;
}

.jdsa .jdsa-confidence button {
  color:#182133 !important;
  background:#ffffff !important;
  border-color:#d9c9a6 !important;
}
.jdsa .jdsa-confidence button:hover,
.jdsa .jdsa-confidence button:focus {
  color:#ffffff !important;
  background:#465f46 !important;
  border-color:#465f46 !important;
}
