@font-face {
  font-family: "Albert Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/fonts/albert-sans-latin.woff2") format("woff2");
  unicode-range: U+0000-00ff, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
  font-family: "Albert Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/fonts/albert-sans-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/cormorant-garamond-latin.woff2") format("woff2");
  unicode-range: U+0000-00ff, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/cormorant-garamond-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

@font-face {
  font-family: "Cormorant Garamond";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/cormorant-garamond-italic-latin.woff2") format("woff2");
  unicode-range: U+0000-00ff, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
  font-family: "Cormorant Garamond";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/cormorant-garamond-italic-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02ba, U+02bd-02c5, U+02c7-02cc, U+02ce-02d7, U+02dd-02ff, U+0304, U+0308, U+0329, U+1d00-1dbf, U+1e00-1e9f, U+1ef2-1eff, U+2020, U+20a0-20ab, U+20ad-20c0, U+2113, U+2c60-2c7f, U+a720-a7ff;
}

:root {
  --jyotisya-night: #0a0d1c;
  --jyotisya-night-soft: #10142e;
  --jyotisya-night-panel: #10142b;
  --jyotisya-night-layer: #141830;
  --jyotisya-night-raised: #1a1f3d;
  --jyotisya-surface: #0d1121;
  --jyotisya-surface-raised: #151a37;
  --jyotisya-ink: #ecebe1;
  --jyotisya-copy: #c9cad7;
  --jyotisya-muted: #aeb0c4;
  --jyotisya-subtle: #9fa1b3;
  --ink-muted: var(--ink-soft);
  --jyotisya-ink-on-accent: #141021;
  --jyotisya-gold: #d4af6a;
  --jyotisya-gold-light: #e8c98c;
  --jyotisya-green: #7fc7a4;
  --jyotisya-green-light: #bfe5d1;
  --jyotisya-green-mid: #5ba07e;
  --jyotisya-teal: #347462;
  --jyotisya-teal-light: #488b77;
  --jyotisya-highlight: #ffffff;
  --jyotisya-shadow: #01030c;
  --jyotisya-black: #000000;
  --jyotisya-warning: #e7bf8e;
  --jyotisya-danger: #f1c3bd;
  --jyotisya-danger-deep: #c06051;
  --jyotisya-celestial: #495192;
  --jyotisya-celestial-mid: #464e8b;
  --jyotisya-celestial-soft: #3b4278;
  --jyotisya-celestial-deep: #1f2a50;
  --jyotisya-paper: #f7f3e9;
  --jyotisya-paper-deep: #eee8d8;
  --jyotisya-paper-surface: #fffdf7;
  --jyotisya-paper-ink: #16201d;
  --jyotisya-paper-copy: #52605b;
  --jyotisya-paper-gold: #c7943d;
  --jyotisya-paper-gold-text: #7a5a1e;
  --jyotisya-paper-line: color-mix(in srgb, var(--jyotisya-paper-ink) 13%, transparent);
  --jyotisya-paper-line-strong: color-mix(in srgb, var(--jyotisya-paper-ink) 25%, transparent);
  --jyotisya-saffron: #b4512b;
  --jyotisya-saffron-deep: #81351d;
  --jyotisya-saffron-soft: #f2d8c6;
  --jyotisya-forest: #173e35;
  --jyotisya-forest-light: #24584b;
  --teal: #315d51;
  --green: #2d6957;
  --green-deep: #174c3f;
  --jyotisya-rule: color-mix(in srgb, var(--jyotisya-ink) 16%, transparent);
  --jyotisya-rule-strong: color-mix(in srgb, var(--jyotisya-gold) 42%, transparent);
  --jyotisya-control-line: color-mix(in srgb, var(--jyotisya-gold-light) 46%, transparent);
  --chat-border: var(--jyotisya-rule);
  --font-body: "Albert Sans", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-display: "Cormorant Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --font-symbol: "Apple Symbols", "Segoe UI Symbol", "Noto Sans Symbols 2", "Noto Sans Symbols", sans-serif;
  --book-serif: var(--font-display);
  --sans: var(--font-body);
  --serif: var(--font-display);
}

body {
  font-synthesis: none;
}

::selection {
  background: rgba(212, 175, 106, 0.3);
}

.site-header {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.08);
  background: rgba(10, 13, 28, 0.96);
  backdrop-filter: blur(18px);
}

.site-header .brand,
.site-header .nav-link {
  color: var(--jyotisya-ink);
}

.site-header .brand-mark {
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 19%;
  background: transparent;
  box-shadow: 0 0 24px rgba(212, 175, 106, 0.16);
}

.site-header .brand strong {
  font-size: 23px;
  font-weight: 500;
}

.site-header .brand small {
  color: var(--jyotisya-gold);
  letter-spacing: 0.2em;
}

.site-header nav {
  border-color: rgba(236, 235, 225, 0.1);
  background: rgba(255, 255, 255, 0.025);
}

.site-header .nav-link:hover,
.site-header .nav-link.is-active {
  color: var(--jyotisya-gold-light);
  background: rgba(212, 175, 106, 0.12);
  box-shadow: none;
}

.site-header .header-status {
  color: var(--jyotisya-muted);
}

#view-home {
  position: relative;
  width: 100%;
  max-width: none;
  color: var(--jyotisya-ink);
  background:
    radial-gradient(1200px 650px at 82% -8%, rgba(59, 66, 120, 0.34), transparent 65%),
    radial-gradient(850px 540px at -10% 30%, rgba(31, 42, 80, 0.4), transparent 68%),
    var(--jyotisya-night);
  overflow: hidden;
}

#view-home::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  opacity: 0.18;
  background-image: radial-gradient(rgba(232, 201, 140, 0.42) 0.5px, transparent 0.5px);
  background-size: 24px 24px;
  mask-image: linear-gradient(to bottom, black, transparent 68%);
}

#view-home > * {
  position: relative;
  width: min(1440px, 100%);
  margin-right: auto;
  margin-left: auto;
}

#view-home .hero {
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.95fr);
  gap: clamp(34px, 5vw, 76px);
  min-height: 680px;
  padding-top: clamp(52px, 8vh, 94px);
  padding-bottom: 58px;
}

#view-home .hero-copy {
  position: relative;
  z-index: 2;
}

#view-home .eyebrow,
#view-home .card-kicker {
  color: var(--jyotisya-gold);
  letter-spacing: 0.2em;
}

#view-home .hero h1 {
  max-width: 760px;
  color: var(--jyotisya-ink);
  font-size: clamp(50px, 5.6vw, 82px);
  font-weight: 500;
  line-height: 0.96;
  letter-spacing: -0.025em;
}

#view-home .hero h1 em {
  color: var(--jyotisya-gold);
  font-weight: 400;
}

#view-home .hero-lede {
  max-width: 610px;
  color: var(--jyotisya-copy);
  font-size: clamp(16px, 1.4vw, 19px);
  line-height: 1.65;
}

.hero-trust-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  max-width: 650px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.hero-trust-points li {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.hero-trust-points svg {
  display: block;
  width: 32px;
  height: 32px;
  overflow: visible;
  color: var(--jyotisya-gold);
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.35;
}

.hero-trust-points .hero-trust-icon-accent {
  color: var(--jyotisya-green);
  fill: rgba(127, 199, 164, 0.1);
  stroke: currentColor;
  stroke-width: 1.6;
}

.hero-trust-points span,
.hero-trust-points strong,
.hero-trust-points small {
  display: block;
}

.hero-trust-points strong {
  color: var(--jyotisya-ink);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
}

.hero-trust-points small {
  margin-top: 3px;
  color: var(--jyotisya-muted);
  font-size: 10px;
  line-height: 1.35;
}

#view-home .button-primary {
  color: var(--jyotisya-ink-on-accent);
  background: var(--jyotisya-gold);
  box-shadow: 0 15px 42px rgba(212, 175, 106, 0.24);
}

#view-home .button-primary:hover {
  background: var(--jyotisya-gold-light);
}

#view-home .button-secondary {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.25);
  background: transparent;
}

#view-home .button-secondary:hover {
  border-color: rgba(236, 235, 225, 0.5);
  background: rgba(255, 255, 255, 0.035);
}

#view-home .privacy-note {
  color: var(--jyotisya-muted);
}

#view-home .privacy-note span {
  color: var(--jyotisya-green);
}

.hero-chart-preview {
  position: relative;
  width: min(100%, 620px);
  justify-self: center;
}

.landing-sample-status {
  width: fit-content;
  max-width: 580px;
  margin: 14px 0 0;
  padding: 9px 13px;
  color: var(--jyotisya-muted);
  border: 1px solid rgba(212, 175, 106, 0.28);
  border-radius: 12px;
  background: rgba(212, 175, 106, 0.07);
  font-size: 12px;
  line-height: 1.5;
}

.landing-sample-status[data-tone="ready"] {
  color: var(--jyotisya-green-light);
  border-color: rgba(91, 160, 126, 0.44);
  background: rgba(91, 160, 126, 0.09);
}

.landing-sample-status[data-tone="error"] {
  color: var(--jyotisya-danger);
  border-color: rgba(192, 96, 81, 0.48);
  background: rgba(192, 96, 81, 0.1);
}

.answer-sample-notice {
  display: flex;
  align-items: baseline;
  gap: 10px 18px;
  flex-wrap: wrap;
  margin: 0 24px;
  padding: 12px 16px;
  color: var(--teal);
  border: 1px solid rgba(52, 116, 98, 0.28);
  border-radius: 14px;
  background: rgba(72, 139, 119, 0.08);
  font-size: 12px;
  line-height: 1.55;
}

.answer-sample-notice strong {
  color: var(--green-deep);
  font-family: var(--font-body);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.answer-sample-notice[hidden] {
  display: none;
}

.landing-chart-wheel {
  --landing-wheel-scale: 1;
  width: 100%;
  transform: scale(var(--landing-wheel-scale));
  transform-origin: center;
  transition: transform 280ms ease;
  filter: drop-shadow(0 0 48px rgba(212, 175, 106, 0.13));
}

.landing-chart-wheel svg {
  display: block;
  width: 100%;
  height: auto;
}

.landing-wheel-controls {
  position: absolute;
  z-index: 3;
  top: 8px;
  right: 8px;
  display: flex;
  gap: 6px;
}

.landing-wheel-controls button {
  display: grid;
  width: 36px;
  height: 36px;
  padding: 0;
  color: var(--jyotisya-gold);
  border: 1px solid rgba(212, 175, 106, 0.45);
  border-radius: 50%;
  background: rgba(10, 13, 28, 0.82);
  cursor: pointer;
  place-items: center;
}

.landing-wheel-controls button:hover {
  color: var(--jyotisya-gold-light);
  background: rgba(212, 175, 106, 0.16);
}

#landing-wheel-caption {
  max-width: 540px;
  margin: 12px auto 0;
  color: var(--jyotisya-muted);
  font-size: 11px;
  letter-spacing: 0.045em;
  text-align: center;
}

.landing-wheel-nakshatra,
.landing-wheel-sign {
  transition: opacity 180ms ease, filter 180ms ease;
}

.landing-wheel-nakshatra-segment,
.landing-wheel-sign-segment,
.landing-wheel-house-segment {
  cursor: pointer;
  outline: none;
  transition: fill 160ms ease, stroke 160ms ease, filter 160ms ease;
}

.landing-wheel-nakshatra-segment {
  fill: transparent;
  stroke: transparent;
}

.landing-wheel-house-segment {
  fill: rgba(255, 255, 255, 0.008);
  stroke: transparent;
}

.landing-wheel-nakshatra-segment:hover,
.landing-wheel-nakshatra-segment:focus-visible,
.landing-wheel-nakshatra-segment.is-ring-selected {
  fill: rgba(232, 201, 140, 0.3);
  stroke: var(--jyotisya-gold-light);
  stroke-width: 1.2;
  filter: drop-shadow(0 0 5px rgba(232, 201, 140, 0.34));
}

.landing-wheel-sign-segment:hover,
.landing-wheel-sign-segment:focus-visible,
.landing-wheel-sign-segment.is-ring-selected {
  fill: rgba(212, 175, 106, 0.25);
  stroke: var(--jyotisya-gold-light);
  stroke-width: 1.3;
  filter: drop-shadow(0 0 5px rgba(232, 201, 140, 0.3));
}

.landing-wheel-house-segment:hover,
.landing-wheel-house-segment:focus-visible,
.landing-wheel-house-segment.is-ring-selected {
  fill: rgba(127, 199, 164, 0.14);
  stroke: var(--jyotisya-green);
  stroke-width: 1.25;
  filter: drop-shadow(0 0 5px rgba(127, 199, 164, 0.24));
}

.landing-chart-wheel:hover .landing-wheel-nakshatra {
  filter: brightness(1.15);
}

.landing-wheel-center-interaction {
  cursor: pointer;
  outline: none;
}

.landing-wheel-om {
  pointer-events: none;
}

.landing-wheel-center-orbit,
.landing-wheel-lotus,
.landing-wheel-sanctum {
  transform-origin: 240px 240px;
  transition: filter 220ms ease, opacity 220ms ease;
}

.landing-wheel-center-orbit {
  animation: landing-ring-rotate 24s linear infinite;
}

.landing-wheel-lotus {
  animation: landing-ring-rotate-reverse 38s linear infinite;
}

.landing-wheel-sanctum {
  animation: landing-ring-rotate 18s linear infinite;
}

.landing-wheel-center-interaction:hover .landing-wheel-center-orbit,
.landing-wheel-center-interaction:focus-visible .landing-wheel-center-orbit,
.landing-wheel-center-interaction.is-ring-selected .landing-wheel-center-orbit {
  animation-duration: 9s;
  filter: drop-shadow(0 0 7px rgba(232, 201, 140, 0.52));
}

.landing-wheel-center-interaction:hover .landing-wheel-lotus,
.landing-wheel-center-interaction:focus-visible .landing-wheel-lotus,
.landing-wheel-center-interaction.is-ring-selected .landing-wheel-lotus {
  animation-duration: 14s;
  filter: brightness(1.45) drop-shadow(0 0 8px rgba(212, 175, 106, 0.35));
}

.landing-wheel-center-interaction:focus-visible .landing-wheel-sanctum {
  filter: drop-shadow(0 0 9px rgba(127, 199, 164, 0.38));
}

.experience-layers {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  padding-bottom: 64px;
}

.experience-layers article {
  min-height: 190px;
  padding: 25px;
  border: 1px solid rgba(236, 235, 225, 0.1);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.025);
  transition: transform 220ms ease, border-color 220ms ease, background 220ms ease;
}

.experience-layers article:hover {
  border-color: rgba(212, 175, 106, 0.42);
  background: rgba(212, 175, 106, 0.045);
  transform: translateY(-4px);
}

.experience-layers span {
  color: var(--jyotisya-gold);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.experience-layers h2 {
  margin: 10px 0 8px;
  font-family: var(--serif);
  font-size: 25px;
  font-weight: 500;
  letter-spacing: -0.01em;
}

.experience-layers p {
  margin: 0;
  color: var(--jyotisya-muted);
  font-size: 13px;
  line-height: 1.58;
}

.landing-trust-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(26px, 5vw, 64px);
  align-items: center;
  max-width: 1110px;
  padding: clamp(28px, 4vw, 42px);
  border: 1px solid rgba(212, 175, 106, 0.25);
  border-radius: 24px;
  background: linear-gradient(140deg, rgba(212, 175, 106, 0.07), rgba(255, 255, 255, 0.02));
}

.landing-trust-panel h2 {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(32px, 3.2vw, 44px);
  font-weight: 500;
  line-height: 1.05;
}

.landing-trust-panel p {
  margin: 17px 0 0;
  color: var(--jyotisya-copy);
  font-size: 15px;
}

.landing-evidence-example > span {
  color: var(--jyotisya-muted);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.landing-evidence-chain {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.landing-evidence-chain b {
  padding: 8px 12px;
  color: var(--jyotisya-gold-light);
  border: 1px solid rgba(212, 175, 106, 0.4);
  border-radius: 999px;
  background: rgba(212, 175, 106, 0.08);
  font-size: 12px;
  font-weight: 500;
}

.landing-evidence-example blockquote {
  margin: 18px 0 0;
  padding: 15px 17px;
  color: var(--jyotisya-ink);
  border-left: 2px solid var(--jyotisya-gold);
  border-radius: 0 12px 12px 0;
  background: rgba(255, 255, 255, 0.035);
  font-family: var(--serif);
  font-size: 18px;
  line-height: 1.45;
}

.landing-method-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 30px;
  justify-content: center;
  padding: 38px 0 58px;
  color: var(--jyotisya-muted);
  font-size: 12px;
}

.landing-method-strip span:not(:last-child)::after {
  margin-left: 30px;
  color: rgba(212, 175, 106, 0.45);
  content: "·";
}

#view-home .page-orientation {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.1);
  background: rgba(255, 255, 255, 0.025);
  box-shadow: none;
}

#view-home .page-orientation > div + div {
  border-color: rgba(236, 235, 225, 0.1);
}

#view-home .page-orientation span {
  color: var(--jyotisya-gold);
}

#view-home .page-orientation strong {
  color: var(--jyotisya-ink);
}

#view-home .page-orientation p,
#view-home .principles p {
  color: var(--jyotisya-muted);
}

#view-home .principles {
  margin-top: 28px;
  border-color: rgba(236, 235, 225, 0.1);
}

#view-home .principles article {
  border-color: rgba(236, 235, 225, 0.1);
}

#view-home .principle-index {
  color: var(--jyotisya-gold);
}

#view-home .principles h2 {
  color: var(--jyotisya-ink);
}

body > footer {
  align-items: center;
  color: var(--jyotisya-muted);
  border-color: rgba(236, 235, 225, 0.08);
  background: var(--jyotisya-night);
}

.footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.footer-brand img {
  width: 28px;
  height: 28px;
}

.footer-brand strong,
.footer-brand small {
  display: block;
}

.footer-brand strong {
  color: var(--jyotisya-ink);
  font-family: var(--serif);
  font-size: 17px;
  font-weight: 500;
}

.footer-brand small {
  color: var(--jyotisya-gold);
  font-size: 8px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

@keyframes landing-ring-rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes landing-ring-rotate-reverse {
  from { transform: rotate(360deg); }
  to { transform: rotate(0deg); }
}

.landing-wheel-nakshatra {
  animation: landing-ring-rotate 240s linear infinite;
  transform-origin: 240px 240px;
}

.landing-wheel-degree-ticks {
  animation: landing-ring-rotate-reverse 180s linear infinite;
  transform-origin: 240px 240px;
}

.landing-chart-wheel:hover .landing-wheel-nakshatra,
.landing-chart-wheel:hover .landing-wheel-degree-ticks,
.landing-chart-wheel:focus-within .landing-wheel-nakshatra,
.landing-chart-wheel:focus-within .landing-wheel-degree-ticks {
  animation-play-state: paused;
}

/* The supplied Jyotisya design uses one continuous night-sky language from
   landing page through the interactive reading. The calculated report keeps
   its printable paper treatment below this shell, while the guided experience
   stays visually coherent with the design reference. */
body.has-calculated-report {
  color: var(--jyotisya-ink);
  background:
    radial-gradient(1100px 620px at 82% -5%, rgba(59, 66, 120, 0.34), transparent 64%),
    radial-gradient(760px 520px at -8% 34%, rgba(31, 42, 80, 0.38), transparent 70%),
    var(--jyotisya-night);
}

body.has-calculated-report .view.is-visible,
body.has-calculated-report .form-step.is-visible {
  animation: none;
}

body.has-calculated-report:not(.is-compatibility-workspace) #view-match {
  color: var(--jyotisya-ink);
  background: transparent;
}

body.has-calculated-report [data-form-step="2"] > :not(.answer-home) {
  color: var(--ink);
}

body.has-calculated-report .answer-home {
  --ink: var(--jyotisya-ink);
  --ink-soft: var(--jyotisya-muted);
  --surface: var(--jyotisya-surface-raised);
  --line: rgba(236, 235, 225, 0.12);
  --line-strong: rgba(232, 201, 140, 0.38);
  --forest: var(--jyotisya-gold);
  --forest-light: var(--jyotisya-green);
  --gold: var(--jyotisya-gold);
  --saffron: var(--jyotisya-gold);
  --saffron-deep: var(--jyotisya-gold-light);
  --success: var(--jyotisya-green);
  --warning: var(--jyotisya-warning);
  --teal: var(--jyotisya-green);
  --ink-muted: var(--jyotisya-subtle);
  color: var(--ink);
  border-color: rgba(212, 175, 106, 0.24);
  background:
    radial-gradient(760px 430px at 94% 0, rgba(70, 78, 139, 0.2), transparent 66%),
    linear-gradient(160deg, rgba(20, 24, 48, 0.98), rgba(10, 13, 28, 0.985));
  box-shadow: 0 34px 100px rgba(0, 0, 0, 0.34);
}

.answer-destination-panel {
  min-height: calc(100vh - 168px);
}

.answer-destination-panel[hidden] {
  display: none !important;
}

body.has-calculated-report .answer-home-header .card-kicker,
body.has-calculated-report .answer-home :is(
  .answer-summary,
  .answer-inner-outer,
  .answer-strength-challenge,
  .answer-defining-patterns,
  .answer-current-chapter,
  .answer-transit-timing,
  .answer-chart-explorer,
  .answer-planning,
  .answer-life-map,
  .answer-explore,
  .answer-qa,
  .answer-glossary
) :is(h2, h3, h4, strong) {
  color: var(--jyotisya-ink);
}

body.has-calculated-report .answer-confidence,
body.has-calculated-report .answer-reading-mode,
body.has-calculated-report .answer-reading-mode > div:last-child,
body.has-calculated-report .answer-sensitivity-notice,
body.has-calculated-report .answer-report-controls {
  color: var(--jyotisya-muted);
  border-color: rgba(236, 235, 225, 0.13);
  background: rgba(255, 255, 255, 0.035);
}

body.has-calculated-report .answer-confidence strong,
body.has-calculated-report .answer-reading-mode > div:first-child > strong,
body.has-calculated-report .answer-sensitivity-notice > strong {
  color: var(--jyotisya-ink);
}

body.has-calculated-report .answer-reading-mode button {
  color: var(--jyotisya-muted);
}

body.has-calculated-report .answer-reading-mode button strong {
  color: var(--jyotisya-ink);
}

body.has-calculated-report .answer-reading-mode button:hover,
body.has-calculated-report .answer-reading-mode button:focus-visible,
body.has-calculated-report .answer-reading-mode button.is-selected {
  color: var(--jyotisya-ink-on-accent);
  background: var(--jyotisya-gold);
  box-shadow: 0 12px 30px rgba(212, 175, 106, 0.2);
}

body.has-calculated-report .answer-reading-mode button:hover strong,
body.has-calculated-report .answer-reading-mode button:focus-visible strong,
body.has-calculated-report .answer-reading-mode button.is-selected strong {
  color: var(--jyotisya-ink-on-accent);
}

body.has-calculated-report .answer-sample-notice {
  color: var(--jyotisya-green-light);
  border-color: rgba(127, 199, 164, 0.3);
  background: rgba(127, 199, 164, 0.07);
}

body.has-calculated-report .answer-sample-notice strong {
  color: var(--jyotisya-green-light);
}

body.has-calculated-report .answer-summary {
  color: var(--jyotisya-ink);
  border: 1px solid rgba(212, 175, 106, 0.3);
  background:
    radial-gradient(circle at 92% 8%, rgba(212, 175, 106, 0.13), transparent 20rem),
    linear-gradient(145deg, var(--jyotisya-surface-raised), var(--jyotisya-night-soft));
}

body.has-calculated-report .answer-summary::after {
  border-color: rgba(212, 175, 106, 0.15);
  box-shadow:
    0 0 0 38px rgba(212, 175, 106, 0.022),
    0 0 0 76px rgba(212, 175, 106, 0.014);
}

body.has-calculated-report .answer-highlight,
body.has-calculated-report .answer-priority-grid > article,
body.has-calculated-report .answer-inner-outer-bridge > article,
body.has-calculated-report .answer-inner-outer-meaning,
body.has-calculated-report .answer-inner-outer-integration > article,
body.has-calculated-report .answer-strength-challenge-rows > article,
body.has-calculated-report .answer-life-map-controls button,
body.has-calculated-report .answer-life-map-detail,
body.has-calculated-report .answer-pattern-grid article,
body.has-calculated-report .answer-planning-grid article,
body.has-calculated-report .answer-period-stack article,
body.has-calculated-report .answer-topic-card,
body.has-calculated-report .answer-personal-story,
body.has-calculated-report .answer-topic-deep-dive-body > section,
body.has-calculated-report .answer-glossary-card,
body.has-calculated-report .answer-glossary-empty,
body.has-calculated-report .answer-glossary-authority,
body.has-calculated-report .answer-glossary-controls,
body.has-calculated-report .answer-qa-ready,
body.has-calculated-report .answer-qa-controls,
body.has-calculated-report .answer-qa-turn-response,
body.has-calculated-report .answer-explorer-inspector,
body.has-calculated-report .answer-transit-inspector {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.12);
  background: rgba(255, 255, 255, 0.035);
}

body.has-calculated-report .answer-life-map-story section,
body.has-calculated-report .answer-life-map-interpretation,
body.has-calculated-report .answer-inner-outer > blockquote {
  color: var(--jyotisya-ink);
  border-color: rgba(212, 175, 106, 0.32);
  background: rgba(255, 255, 255, 0.038);
}

body.has-calculated-report .answer-life-map-story :is(strong, p),
body.has-calculated-report .answer-life-map-interpretation :is(strong, p) {
  color: inherit;
}

body.has-calculated-report .answer-life-map-controls button:hover,
body.has-calculated-report .answer-life-map-controls button:focus-visible,
body.has-calculated-report .answer-life-map-controls button.is-active {
  color: var(--jyotisya-ink-on-accent);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-gold);
  box-shadow: 0 10px 28px rgba(212, 175, 106, 0.16);
}

body.has-calculated-report .answer-life-map-controls button:hover .answer-life-map-control-reliability,
body.has-calculated-report .answer-life-map-controls button:focus-visible .answer-life-map-control-reliability,
body.has-calculated-report .answer-life-map-controls button.is-active .answer-life-map-control-reliability {
  color: var(--jyotisya-ink-on-accent);
}

body.has-calculated-report .answer-priority-briefing,
body.has-calculated-report .answer-inner-outer,
body.has-calculated-report .answer-strength-challenge,
body.has-calculated-report .answer-defining-patterns,
body.has-calculated-report .answer-current-chapter,
body.has-calculated-report .answer-transit-timing,
body.has-calculated-report .answer-chart-explorer,
body.has-calculated-report .answer-planning,
body.has-calculated-report .answer-life-map,
body.has-calculated-report .answer-explore,
body.has-calculated-report .answer-qa,
body.has-calculated-report .answer-glossary {
  border-color: rgba(236, 235, 225, 0.12);
  background:
    radial-gradient(circle at 100% 0, rgba(212, 175, 106, 0.055), transparent 22rem),
    rgba(255, 255, 255, 0.022);
}

body.has-calculated-report .answer-priority-briefing {
  border-color: rgba(212, 175, 106, 0.24);
}

body.has-calculated-report .answer-home :is(p, small, li, dd) {
  text-wrap: pretty;
}

body.has-calculated-report .answer-home :is(
  .answer-home-header p,
  .answer-highlight > p,
  .answer-highlight > ul,
  .answer-priority-briefing > header p,
  .answer-inner-outer > header p,
  .answer-strength-challenge > header p,
  .answer-defining-patterns > div:first-child p,
  .answer-current-chapter > div:first-child p,
  .answer-transit-timing > header p,
  .answer-chart-explorer > header p,
  .answer-planning > div:first-child p,
  .answer-life-map > header p,
  .answer-explore > div:first-child p,
  .answer-qa > div:first-child p,
  .answer-glossary > header p,
  .answer-glossary-card > aside p,
  .answer-glossary-card > details p
) {
  color: var(--jyotisya-muted);
}

body.has-calculated-report .answer-home :is(input, select, textarea) {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.18);
  background: rgba(255, 255, 255, 0.045);
}

body.has-calculated-report .answer-home :is(input, select, textarea):focus {
  border-color: var(--jyotisya-gold);
  box-shadow: 0 0 0 3px rgba(212, 175, 106, 0.12);
}

body.has-calculated-report .answer-home .button-primary {
  color: var(--jyotisya-ink-on-accent);
  background: var(--jyotisya-gold);
}

body.has-calculated-report .answer-home .button-primary:hover,
body.has-calculated-report .answer-home .button-primary:focus-visible {
  background: var(--jyotisya-gold-light);
}

body.has-calculated-report .answer-home :is(.button-secondary, .answer-text-button) {
  color: var(--jyotisya-gold-light);
  border-color: rgba(212, 175, 106, 0.36);
  background: rgba(212, 175, 106, 0.055);
}

body.has-calculated-report .answer-home :is(.button-secondary, .answer-text-button):hover,
body.has-calculated-report .answer-home :is(.button-secondary, .answer-text-button):focus-visible {
  color: var(--jyotisya-ink-on-accent);
  background: var(--jyotisya-gold);
}

body.has-calculated-report .answer-evidence-drawer,
body.has-calculated-report .answer-topic-deep-dive,
body.has-calculated-report .answer-topic-related,
body.has-calculated-report .answer-glossary-card > details {
  border-color: rgba(236, 235, 225, 0.12);
}

body.has-calculated-report .answer-home :is(
  .answer-evidence-drawer summary,
  .answer-topic-deep-dive > summary,
  .answer-topic-related > summary,
  .answer-glossary-card > details summary,
  .answer-evidence-flow-lineage summary
) {
  color: var(--jyotisya-gold-light);
}

body.has-calculated-report .answer-qa-turn-response {
  border: 1px solid rgba(236, 235, 225, 0.1);
  background: var(--jyotisya-surface-raised);
}

body.has-calculated-report .answer-qa-turn-response > .answer-qa-focused {
  color: var(--jyotisya-ink);
  border-color: rgba(212, 175, 106, 0.3);
  background:
    radial-gradient(circle at 100% 0, rgba(212, 175, 106, 0.12), transparent 18rem),
    linear-gradient(145deg, rgba(26, 31, 61, 0.98), rgba(16, 20, 43, 0.96));
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.2);
}

body.has-calculated-report .answer-qa-focused :is(h5, .answer-qa-focused-direct) {
  color: var(--jyotisya-ink);
}

body.has-calculated-report .answer-qa-focused :is(div, aside) {
  border-color: rgba(236, 235, 225, 0.11);
}

body.has-calculated-report .answer-qa-focused > aside {
  background: rgba(212, 175, 106, 0.055);
}

body.has-calculated-report .answer-qa-turn-response > .answer-qa-meaning-path,
body.has-calculated-report .answer-qa-story-details,
body.has-calculated-report .answer-qa-reasoning-details,
body.has-calculated-report .answer-qa-turn-response > .answer-qa-feedback,
body.has-calculated-report .answer-qa-turn-response > section:not(.answer-personal-story):not(.answer-qa-focused):not(.answer-qa-meaning-path):not(.answer-qa-boundaries):not(.answer-qa-feedback):not(.answer-qa-audio) {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.12);
  background:
    linear-gradient(130deg, rgba(212, 175, 106, 0.035), transparent 58%),
    rgba(255, 255, 255, 0.035);
}

body.has-calculated-report .answer-qa-meaning-path > h5,
body.has-calculated-report .answer-qa-feedback > header > h5,
body.has-calculated-report .answer-qa-story-details > summary,
body.has-calculated-report .answer-qa-reasoning-details > summary {
  color: var(--jyotisya-gold-light);
}

body.has-calculated-report .answer-qa-meaning-grid > section,
body.has-calculated-report .answer-qa-development-map > section,
body.has-calculated-report .answer-qa-reasoning-details > div > section,
body.has-calculated-report .answer-qa-evidence-groups li,
body.has-calculated-report .answer-personal-story-arc article,
body.has-calculated-report .answer-personal-story-next,
body.has-calculated-report .answer-qa-feedback-grid > article {
  color: var(--jyotisya-ink);
  border-color: rgba(236, 235, 225, 0.1);
  background: rgba(255, 255, 255, 0.038);
}

body.has-calculated-report .answer-qa-meaning-grid > section.is-timing,
body.has-calculated-report .answer-qa-development-map > section:nth-child(2) {
  background: rgba(212, 175, 106, 0.055);
}

body.has-calculated-report .answer-qa-meaning-grid > section.is-action,
body.has-calculated-report .answer-qa-development-map > section.is-mature {
  background: rgba(127, 199, 164, 0.055);
}

body.has-calculated-report .answer-qa-turn-response :is(
  .answer-qa-meaning-grid,
  .answer-qa-development-map,
  .answer-personal-story,
  .answer-qa-boundaries,
  .answer-qa-reasoning-details,
  .answer-qa-feedback
) :is(strong, h4, h5) {
  color: var(--jyotisya-ink);
}

body.has-calculated-report .answer-qa-turn-response :is(
  .answer-qa-meaning-grid,
  .answer-qa-development-map,
  .answer-personal-story,
  .answer-qa-boundaries,
  .answer-qa-reasoning-details,
  .answer-qa-feedback
) p,
body.has-calculated-report .answer-qa-reasoning-details :is(li, span),
body.has-calculated-report .answer-qa-feedback > small {
  color: var(--jyotisya-muted);
}

body.has-calculated-report .answer-qa-feedback-grid button {
  color: var(--jyotisya-gold-light);
  border-color: rgba(212, 175, 106, 0.34);
  background: rgba(212, 175, 106, 0.045);
}

body.has-calculated-report .answer-qa-feedback-grid button:hover,
body.has-calculated-report .answer-qa-feedback-grid button:focus-visible,
body.has-calculated-report .answer-qa-feedback-grid button[aria-pressed="true"] {
  color: var(--jyotisya-ink-on-accent);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-gold);
}

body.has-calculated-report .answer-qa-related-question,
body.has-calculated-report .answer-qa-topic-choice {
  color: var(--jyotisya-gold-light);
  text-decoration-color: rgba(232, 201, 140, 0.34);
}

body.has-calculated-report .answer-transit-summary {
  color: var(--jyotisya-ink);
  border: 1px solid rgba(212, 175, 106, 0.34);
  background: rgba(212, 175, 106, 0.07);
}

body.has-calculated-report .answer-transit-summary strong {
  color: var(--jyotisya-gold-light);
}

body.has-calculated-report .answer-transit-summary :is(p, small) {
  color: var(--jyotisya-muted);
}

body.has-calculated-report .answer-report-controls {
  background:
    linear-gradient(135deg, rgba(127, 199, 164, 0.08), rgba(255, 255, 255, 0.025));
}

body.has-calculated-report .answer-home-actions {
  padding-top: 8px;
}

/* The surrounding sanctum and lotus move; awareness at the centre does not. */
.landing-wheel-om {
  animation: none !important;
  transform: none !important;
  transform-origin: center !important;
}

@media (prefers-reduced-motion: reduce) {
  .landing-wheel-nakshatra,
  .landing-wheel-degree-ticks,
  .landing-wheel-center-orbit,
  .landing-wheel-lotus,
  .landing-wheel-sanctum {
    animation: none;
  }
}

@media (max-width: 1050px) {
  #view-home .hero {
    grid-template-columns: 1fr;
  }

  #view-home .hero-copy {
    max-width: 780px;
  }

  .hero-chart-preview {
    width: min(100%, 600px);
  }

  .experience-layers {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .answer-destination-panel {
    min-height: 0;
  }

  .site-header {
    grid-template-columns: 1fr auto;
  }

  .site-header nav {
    grid-column: 1 / -1;
    width: 100%;
    overflow-x: auto;
  }

  .site-header .header-status {
    display: none;
  }

  #view-home .hero {
    min-height: 0;
    padding-top: 48px;
  }

  #view-home .hero h1 {
    font-size: clamp(43px, 13vw, 62px);
  }

  .experience-layers,
  .landing-trust-panel {
    grid-template-columns: 1fr;
  }

  .experience-layers article {
    min-height: 0;
  }

  .landing-method-strip {
    align-items: center;
    flex-direction: column;
  }

  .landing-method-strip span::after {
    display: none;
  }
}

/* Ask template
   -------------------------------------------------------------------------
   The conversation uses the same five brand roles everywhere: night canvas,
   night-soft surfaces, ink text, muted secondary text and gold interaction.
   Keep this final color contract authoritative so report accent aliases cannot
   leak into the chat or its progressive-disclosure content. */
body.is-ask-route.has-calculated-report #answer-home,
body.is-ask-route.has-calculated-report #answer-qa,
body.is-ask-route.has-calculated-report #answer-qa > .answer-qa {
  color: var(--jyotisya-ink);
  background: var(--jyotisya-night);
}

body.is-ask-route.has-calculated-report .answer-qa-user-question {
  color: var(--jyotisya-night);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-gold);
}

body.is-ask-route.has-calculated-report .answer-qa-turn-response,
body.is-ask-route.has-calculated-report .answer-qa-more,
body.is-ask-route.has-calculated-report .answer-qa-attachment-draft,
body.is-ask-route.has-calculated-report .answer-qa-attachment-state {
  color: var(--jyotisya-ink);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-night-soft);
}

body.is-ask-route.has-calculated-report .answer-qa-controls {
  color: var(--jyotisya-ink);
  border-color: var(--jyotisya-night);
  background: var(--jyotisya-night);
}

body.is-ask-route.has-calculated-report .answer-qa-composer-row,
body.is-ask-route.has-calculated-report .answer-qa-composer-row textarea,
body.is-ask-route.has-calculated-report .answer-qa-composer-row .answer-qa-tool,
body.is-ask-route.has-calculated-report .answer-qa-tools :is(select, button) {
  color: var(--jyotisya-ink);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-night-soft);
}

body.is-ask-route.has-calculated-report .answer-qa-turn-suggestions > span,
body.is-ask-route.has-calculated-report .answer-qa-privacy,
body.is-ask-route.has-calculated-report .answer-qa-consent {
  color: var(--jyotisya-muted);
}

body.is-ask-route.has-calculated-report .answer-qa-turn-suggestions button,
body.is-ask-route.has-calculated-report .answer-qa-quick-actions button {
  color: var(--jyotisya-gold-light);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-night-soft);
}

body.is-ask-route.has-calculated-report .answer-qa-turn-suggestions button:hover,
body.is-ask-route.has-calculated-report .answer-qa-turn-suggestions button:focus-visible,
body.is-ask-route.has-calculated-report .answer-qa-quick-actions button:hover,
body.is-ask-route.has-calculated-report .answer-qa-quick-actions button:focus-visible {
  color: var(--jyotisya-night);
  background: var(--jyotisya-gold);
}

body.is-ask-route.has-calculated-report .answer-qa-more-body {
  color: var(--jyotisya-ink);
  background: var(--jyotisya-night);
}

body.is-ask-route.has-calculated-report .answer-qa-more-body > :is(
  .answer-qa-meaning-path,
  .answer-qa-story-details,
  .answer-qa-reasoning-details,
  .answer-qa-related,
  .answer-evidence-drawer
),
body.is-ask-route.has-calculated-report .answer-qa-more-body .answer-qa-development-map > section,
body.is-ask-route.has-calculated-report .answer-qa-more-body .answer-qa-boundaries > section {
  color: var(--jyotisya-ink);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-night-soft);
}

body.is-ask-route.has-calculated-report .answer-qa-more-body :is(
  .answer-qa-meaning-grid > section,
  .answer-qa-reasoning-details > div > section,
  .answer-personal-story-arc > article,
  .answer-personal-story-next,
  .answer-qa-evidence-groups li
) {
  color: var(--jyotisya-ink);
  border-color: var(--jyotisya-gold);
  background: var(--jyotisya-night);
}

body.is-ask-route.has-calculated-report .answer-qa-more-body :is(h5, strong, summary),
body.is-ask-route.has-calculated-report .answer-qa-more-body .answer-qa-meaning-path > span,
body.is-ask-route.has-calculated-report .answer-qa-more-body .answer-qa-related-question {
  color: var(--jyotisya-gold-light);
}

body.is-ask-route.has-calculated-report .answer-qa-more-body :is(p, li, small, blockquote),
body.is-ask-route.has-calculated-report .answer-qa-more-body .answer-qa-evidence-groups li span {
  color: var(--jyotisya-muted);
}

@media print {
  .landing-chart-wheel,
  .landing-wheel-controls {
    animation: none !important;
  }
}

@media (max-width: 620px) {
  .hero-trust-points {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .hero-trust-points li {
    grid-template-columns: 32px minmax(0, 1fr);
  }

  .hero-trust-points svg {
    width: 28px;
    height: 28px;
  }

  .hero-trust-points small {
    margin-top: 1px;
  }
}
