/* Homepage experience 4.0
   A focused, original burgundy/gold result dashboard. This stylesheet is
   loaded only on the homepage so the component system has one predictable
   final layer without disturbing the public record and calculator pages. */

body[data-page-path="/"] {
  --home-wine-950: #310007;
  --home-wine-900: #4a020d;
  --home-wine-800: #670617;
  --home-wine-700: #850b22;
  --home-ruby: #b3122f;
  --home-gold-700: #a66e00;
  --home-gold-500: #dda914;
  --home-gold-300: #f2d16a;
  --home-gold-100: #fff2bd;
  --home-cream: #fff9e9;
  --home-paper: #fffef9;
  --home-ink: #271d1f;
  --home-muted: #6e6062;
  --home-line: #e4d4a4;
  --home-green: #087b4a;
  --home-teal: #087b75;
  --home-amber: #8a5b00;
  --home-radius: 15px;
  --home-shadow: 0 5px 16px rgba(62, 15, 22, .08);
  background:
    radial-gradient(circle at 12% 4%, rgba(255, 219, 105, .15), transparent 22rem),
    linear-gradient(180deg, #fff8df 0, #fffdf7 38rem, #fff8e4 100%);
}

body[data-page-path="/"] .site-header {
  background: rgba(255, 252, 242, .98);
  border-bottom-color: #dfc675;
  box-shadow: 0 2px 10px rgba(54, 5, 13, .05);
}

body[data-page-path="/"] .topline {
  color: #f7e5bd;
  background: var(--home-wine-950);
}

body[data-page-path="/"] .brand-row { min-height: 70px; }
body[data-page-path="/"] .brand__wide { box-shadow: 0 3px 10px rgba(61, 4, 13, .14); }
body[data-page-path="/"] .nav-toggle {
  min-height: 44px;
  padding-inline: .9rem;
  background: var(--home-paper);
  border-color: #d7bb65;
  border-radius: 12px;
  box-shadow: 0 2px 7px rgba(80, 37, 0, .06);
}

.home-flow {
  overflow: clip;
  color: var(--home-ink);
}

.home-flow .shell { max-width: 1080px; }
.home-flow .section { padding-block: .58rem; }
.home-flow .section--tight { padding-block: .38rem; }
.home-flow .section--first { padding-top: .65rem; }
.home-flow h1,
.home-flow h2,
.home-flow h3 { text-wrap: balance; }
.home-flow p { text-wrap: pretty; }

/* Hero */
.home-flow .brand-banner {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: 202px;
  padding: clamp(1.3rem, 5vw, 2.35rem);
  overflow: hidden;
  color: #fff5dd;
  text-align: center;
  background:
    radial-gradient(circle at 82% 10%, rgba(255, 217, 91, .24), transparent 28%),
    radial-gradient(circle at 5% 100%, rgba(190, 20, 48, .28), transparent 34%),
    linear-gradient(125deg, var(--home-wine-950), var(--home-wine-800) 54%, #8e0d25);
  border: 1px solid #c89520;
  border-radius: 20px;
  box-shadow: var(--home-shadow);
}

.home-flow .brand-banner::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 12px;
  width: auto;
  height: auto;
  background: none;
  border: 1px solid rgba(255, 223, 121, .34);
  border-radius: 14px;
  box-shadow: none;
  transform: none;
  pointer-events: none;
}

.home-flow .brand-banner::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -90px;
  right: -65px;
  width: 210px;
  height: 210px;
  border: 34px solid rgba(255, 255, 255, .035);
  border-radius: 50%;
  background: none;
  box-shadow: none;
  transform: none;
  pointer-events: none;
}

.home-flow .brand-banner__glint { display: none; }
.home-flow .brand-banner h1 {
  max-width: 800px;
  margin: 0 auto;
  color: #fff8e7;
  font: 800 clamp(2rem, 7vw, 3.4rem)/1.04 Georgia, serif;
  letter-spacing: -.02em;
  text-shadow: 0 2px 0 rgba(35, 0, 5, .7);
}
.home-flow .brand-banner p {
  max-width: 620px;
  margin: .58rem auto 0;
  color: #f6dfa8;
  font-size: clamp(.82rem, 2vw, 1rem);
  font-style: normal;
  font-weight: 700;
}
.hero-quick-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .55rem;
  margin-top: 1rem;
}
.hero-quick-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: .55rem .9rem;
  color: #fff8e5;
  text-decoration: none;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 224, 130, .58);
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 850;
}
.hero-quick-links a:first-child {
  color: #341006;
  background: linear-gradient(180deg, #ffe992, #dfad23);
  border-color: #f4cd55;
}

.home-flow .intro-card {
  max-width: 980px;
  margin: .68rem auto 0;
  padding: clamp(1rem, 3vw, 1.35rem);
  text-align: center;
  background: rgba(255, 254, 249, .96);
  border: 1px solid var(--home-line);
  border-top: 3px solid var(--home-gold-500);
  border-radius: var(--home-radius);
  box-shadow: var(--home-shadow);
}
.home-flow .intro-card::after { display: none; }
.home-flow .card-kicker {
  display: block;
  margin-bottom: .42rem;
  color: var(--home-wine-700);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.home-flow .intro-card h2 {
  max-width: 760px;
  margin: 0 auto .55rem;
  color: var(--home-wine-800);
  font: 850 clamp(1.2rem, 3vw, 1.65rem)/1.2 ui-sans-serif, system-ui, sans-serif;
}
.home-flow .intro-card__copy p {
  max-width: 850px;
  margin: .3rem auto;
  color: #453b3d;
  font-size: .94rem;
  font-weight: 560;
  line-height: 1.62;
}
.home-flow .trust-line {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .42rem 1rem;
  margin-top: .7rem !important;
  color: #66575a;
  font-size: .76rem !important;
  font-weight: 750 !important;
}
.home-flow .trust-line span::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: .4rem;
  vertical-align: .08em;
  background: var(--home-gold-500);
  border-radius: 50%;
}

/* Shared cards and section headers */
.home-flow .metal-panel,
.home-flow .feature-stage,
.home-flow .contact-beacon,
.home-flow .final-ank-panel,
.home-flow .zone-card,
.home-flow .tools-zone,
.home-flow .weekly-card,
.home-flow .directory-stage,
.home-flow .faq-panel,
.home-flow .content-card {
  background: rgba(255, 254, 249, .97);
  border: 1px solid var(--home-line);
  border-radius: var(--home-radius);
  box-shadow: var(--home-shadow);
}
.home-flow .metal-panel,
.home-flow .feature-stage,
.home-flow .final-ank-panel,
.home-flow .tools-zone,
.home-flow .directory-stage,
.home-flow .faq-panel { overflow: hidden; }

.home-flow .section-ribbon,
.home-flow .feature-stage__title,
.home-flow .section-heading,
.home-flow .final-ank-panel__heading,
.home-flow .tools-zone__head,
.home-flow .faq-panel__head {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-height: 64px;
  margin: 0;
  padding: .72rem .85rem;
  color: #fff4da;
  background: linear-gradient(110deg, var(--home-wine-950), var(--home-wine-700) 72%, #9c6b05);
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.home-flow .section-heading {
  margin-bottom: .62rem;
  border: 1px solid #c99a2d;
  border-radius: var(--home-radius);
  box-shadow: var(--home-shadow);
}
.home-flow .section-ribbon h2,
.home-flow .feature-stage__title h2,
.home-flow .section-heading h2,
.home-flow .final-ank-panel__heading h2,
.home-flow .tools-zone__head h2,
.home-flow .faq-panel__head h2 {
  margin: 0;
  color: #fff8e8;
  font: 850 clamp(1.08rem, 3vw, 1.42rem)/1.18 ui-sans-serif, system-ui, sans-serif;
  letter-spacing: -.01em;
}
.home-flow .section-ribbon p,
.home-flow .feature-stage__title p,
.home-flow .section-heading p,
.home-flow .tools-zone__head p,
.home-flow .faq-panel__head p,
.home-flow .section-ribbon time,
.home-flow .final-ank-panel__heading time {
  margin: .18rem 0 0;
  color: #edd9b1;
  font-size: .74rem;
}
.home-flow .analytics-rotator-toggle {
  min-height: 34px;
  margin-left: auto;
  padding: .35rem .58rem;
  color: #fff6dc;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 232, 165, .62);
  border-radius: 999px;
  font: 800 .68rem/1 ui-sans-serif, system-ui, sans-serif;
  white-space: nowrap;
}
.home-flow .analytics-rotator-toggle:hover { background: rgba(255, 255, 255, .16); }
.home-flow .section-monogram {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  min-width: 42px;
  width: 42px;
  height: 42px;
  color: var(--home-wine-900);
  background: linear-gradient(145deg, #fff1a0, #d9a40e);
  border: 1px solid #f6d75f;
  border-radius: 12px;
  box-shadow: 0 2px 6px rgba(31, 0, 4, .18);
  animation: none;
}
.home-flow .section-monogram svg,
.home-flow .contact-beacon__mark svg,
.home-flow .chart-button svg,
.live-update-card__actions svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Lucky analytics */
.home-flow .analytics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .58rem;
  padding: .72rem;
}
.home-flow .metric {
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 108px;
  overflow: hidden;
  text-align: center;
  background: var(--home-paper);
  border: 1px solid #e2d4ab;
  border-radius: 12px;
  box-shadow: none;
}
.home-flow .metric > span:first-child {
  padding: .48rem .3rem;
  color: #6b0a1a;
  background: #fff3c8;
  border-bottom: 1px solid #ead7a0;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.home-flow .metric--ruby > span:first-child { color: #fff5df; background: var(--home-wine-700); }
.home-flow .metric--gold > span:first-child { color: #4b2800; background: linear-gradient(90deg, #f0bd2a, #f8d766); }
.home-flow .metric strong {
  display: grid;
  place-items: center;
  min-height: 64px;
  padding: .6rem .35rem;
  color: var(--home-wine-800);
  background: transparent;
  font: 850 clamp(1.35rem, 3.5vw, 1.8rem)/1.15 Georgia, serif;
}
.home-flow .metric--rotator strong > span {
  display: block;
  padding: 0;
  color: inherit;
  background: none;
  font: inherit;
  text-transform: none;
}

/* Focused live update */
.home-flow .live-update-list { padding: .7rem; background: #fffdf7; }
.live-focus-label {
  display: flex;
  align-items: center;
  gap: .42rem;
  margin: 0 0 .48rem;
  color: #6b5b5e;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.live-focus-label span {
  width: 8px;
  height: 8px;
  background: #d20e32;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(210, 14, 50, .11);
}
.home-flow .live-update-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .65rem 1rem;
  min-height: 0;
  padding: .78rem;
  background: #fff;
  border: 1px solid #dfd2ae;
  border-left: 4px solid var(--home-ruby);
  border-radius: 12px;
  box-shadow: none;
}
.home-flow .live-update-card--close { border-left-color: var(--home-gold-700); }
.home-flow .live-update-card--primary {
  padding: .92rem;
  background: linear-gradient(145deg, #fff, #fff9e5);
  border-color: #d6b451;
  border-left-width: 5px;
  box-shadow: 0 4px 12px rgba(80, 28, 7, .07);
}
.home-flow .live-update-card__meta {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-width: 0;
}
.home-flow .live-orbit {
  position: relative;
  display: block;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  background: #fff5ca;
  border: 1px solid #d7b33e;
  border-radius: 50%;
}
.home-flow .live-orbit::after {
  content: "";
  position: absolute;
  inset: 7px;
  background: #d10f31;
  border-radius: 50%;
}
.home-flow .live-update-card__meta div { display: grid; min-width: 0; }
.home-flow .live-update-card__meta strong {
  overflow: hidden;
  color: var(--home-wine-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .97rem;
}
.home-flow .live-update-card__meta small { color: var(--home-muted); font-size: .7rem; }
.home-flow .live-update-card__result {
  color: #281d1f;
  text-align: right;
  white-space: nowrap;
  font: 900 clamp(1.3rem, 4vw, 1.8rem)/1 Georgia, serif;
  letter-spacing: .08em;
}
.home-flow .phase-badge {
  grid-column: 1 / -1;
  justify-self: start;
  padding: .3rem .58rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: .66rem;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
}
.home-flow .phase-badge--pending { color: #714800; background: #fff1b1; border-color: #ead273; }
.home-flow .phase-badge--published { color: #07583b; background: #d8f6e8; border-color: #94d9bb; }
.home-flow .live-update-card[data-timeline="overdue"] .phase-badge { color: #7d3d08; background: #fff0d9; border-color: #e4b875; }
.home-flow .live-update-card__actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: .45rem;
  padding-top: .15rem;
}
.home-flow .live-update-card__actions a,
.home-flow .live-update-card__actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .38rem;
  min-height: 44px;
  padding: .45rem .6rem;
  color: var(--home-wine-800);
  text-decoration: none;
  background: #fff;
  border: 1px solid #ddcc99;
  border-radius: 9px;
  font-size: .72rem;
  font-weight: 850;
}
.home-flow .live-update-card__actions button { cursor: pointer; }
.home-flow .live-update-card__actions > :last-child { padding-inline: .8rem; color: #fff7e4; background: var(--home-wine-700); border-color: var(--home-wine-700); }
.home-flow .live-next-list,
.home-flow .live-more__list { display: grid; gap: .42rem; margin-top: .5rem; }
.home-flow .live-update-card--compact {
  grid-template-columns: minmax(0, 1fr) auto auto;
  padding: .62rem .7rem;
}
.home-flow .live-update-card--compact .phase-badge { grid-column: auto; justify-self: end; max-width: 190px; text-align: center; }
.home-flow .live-update-card__jump {
  grid-column: 1 / -1;
  justify-self: end;
  color: var(--home-wine-700);
  font-size: .68rem;
  font-weight: 850;
}
.home-flow .live-more { margin-top: .52rem; border-top: 1px solid #eadfbe; }
.home-flow .live-more summary {
  min-height: 44px;
  padding: .7rem .25rem .35rem;
  color: var(--home-wine-700);
  cursor: pointer;
  font-size: .76rem;
  font-weight: 850;
}
.home-flow .live-idle { min-height: 110px; padding: 1rem; background: #fffdf6; }

/* Featured analytics, contact cards */
.home-flow .feature-stage { padding: 0; }
.home-flow .feature-stage .free-game-card { margin: .7rem; }
.home-flow .free-game-card {
  overflow: hidden;
  padding: 0 0 .7rem;
  text-align: center;
  background: #fff;
  border: 1px solid #dfd2ac;
  border-radius: 12px;
  box-shadow: none;
}
.home-flow .free-game-card__head {
  padding: .72rem;
  color: #fff2d3;
  background: linear-gradient(110deg, var(--home-wine-900), var(--home-wine-700));
}
.home-flow .free-game-card__head span { color: #e9c66e; font-size: .62rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.home-flow .free-game-card__head h3 { margin: .15rem 0; color: #fff8e6; font-size: 1.18rem; }
.home-flow .free-game-card__head time { color: #ead9c8; font-size: .72rem; }
.home-flow .free-game-hit {
  margin: .55rem .65rem;
  padding: .48rem .6rem;
  color: #08633e;
  text-align: left;
  background: #e5f8ee;
  border: 0;
  border-left: 4px solid #0a9b5b;
  border-radius: 7px;
  font-size: .76rem;
  font-weight: 750;
}
.home-flow .free-game-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .42rem;
  margin: .55rem .65rem;
}
.home-flow .free-game-values > div {
  display: grid;
  grid-template-columns: auto 1fr;
  overflow: hidden;
  min-width: 0;
  border: 1px solid #e5dab9;
  border-radius: 8px;
}
.home-flow .free-game-values dt {
  display: grid;
  place-items: center;
  min-width: 46px;
  padding: .45rem;
  color: #fff0d1;
  background: var(--home-wine-700);
  font-size: .67rem;
  font-weight: 900;
}
.home-flow .free-game-values dd {
  display: grid;
  place-items: center;
  min-width: 0;
  margin: 0;
  padding: .45rem;
  overflow-wrap: anywhere;
  color: #382b2e;
  background: #fffdf5;
  font-size: .77rem;
  font-weight: 800;
}
.home-flow .free-game-card .button { min-height: 42px; margin: .1rem .65rem 0; }

.home-flow .contact-beacon {
  position: relative;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) auto;
  align-items: center;
  gap: .8rem;
  min-height: 132px;
  padding: 1rem;
  overflow: hidden;
  border-left: 4px solid var(--home-gold-500);
}
.home-flow .contact-beacon::after { display: none; }
.home-flow .contact-beacon--whatsapp { border-left-color: #0a8a53; }
.home-flow .contact-beacon__mark {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  color: #fff7dd;
  background: var(--home-wine-700);
  border: 1px solid #d2a227;
  border-radius: 13px;
  box-shadow: none;
}
.home-flow .contact-beacon--whatsapp .contact-beacon__mark { background: #087a49; }
.home-flow .contact-beacon__copy h2 { margin: 0; color: var(--home-wine-800); font-size: 1.22rem; }
.home-flow .contact-beacon__copy h3 { margin: .2rem 0; color: #302528; font-size: .86rem; }
.home-flow .contact-beacon__copy p { margin: .2rem 0 0; color: var(--home-muted); font-size: .8rem; line-height: 1.5; }
.home-flow .contact-beacon .button { min-height: 44px; margin: 0; border-radius: 11px; box-shadow: none; white-space: nowrap; }

/* Results */
.home-flow .results-stage { scroll-margin-top: 1rem; }
.home-flow .market-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .62rem; }
.home-flow .market-card {
  position: relative;
  overflow: hidden;
  padding: 0;
  text-align: center;
  background: #fff;
  border: 1px solid #dfd4b4;
  border-top: 3px solid #d6a313;
  border-radius: 13px;
  box-shadow: 0 3px 10px rgba(62, 18, 25, .06);
  scroll-margin-top: 1rem;
}
.home-flow .market-card::before { display: none; }
.home-flow .market-card--open { border-top-color: #1982a4; }
.home-flow .market-card--closed { border-top-color: #0d8a56; }
.home-flow .market-card--closed-day { border-top-color: #8d8082; background: #faf8f3; }
.home-flow .market-card--featured { background: #fffdf5; border-color: #cda027; box-shadow: 0 4px 12px rgba(104, 65, 0, .09); }
.home-flow .market-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .55rem;
  min-height: 47px;
  padding: .62rem .72rem .45rem;
  border-bottom: 1px solid #efe6cd;
}
.home-flow .market-card h3 { margin: 0; color: var(--home-wine-800); text-align: left; font-size: .98rem; line-height: 1.2; }
.home-flow .market-result-line {
  margin: .65rem .5rem .45rem;
  color: #241a1c;
  font: 900 clamp(1.35rem, 3.5vw, 1.75rem)/1 Georgia, serif;
  letter-spacing: .09em;
}
.home-flow .market-result-line i { color: #bb8b0b; }
.home-flow .market-jodi { color: #bd1031; }
.home-flow .market-card__schedule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 35px;
  margin: 0 .4rem .55rem;
  color: var(--home-muted);
  font-size: .7rem;
}
.home-flow .market-card__schedule b {
  padding: .2rem .43rem;
  color: #6b4300;
  background: #fff3bd;
  border: 1px solid #e2c96f;
  border-radius: 999px;
  font-size: .61rem;
}
.home-flow .result-state--closed-day { color: #554b4d; background: #ece8e2; }
.home-flow .market-closed-message {
  display: grid;
  place-items: center;
  min-height: 79px;
  padding: .7rem;
  color: #665c5e;
}
.home-flow .market-closed-message strong { color: #514648; font-size: .9rem; }
.home-flow .market-closed-message span { font-size: .68rem; }
.home-flow .market-card__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border-top: 1px solid #e5d8b2; }
.home-flow .chart-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  min-height: 46px;
  padding: .48rem;
  color: var(--home-wine-800);
  background: #fff;
  border: 0;
  border-radius: 0;
  font-size: .73rem;
  font-weight: 850;
}
.home-flow .chart-button + .chart-button { border-left: 1px solid #e5d8b2; }
.home-flow .chart-button--panel { color: #075e3a; background: #f4fff9; }
.home-flow .chart-button span { display: grid; place-items: center; width: 26px; height: 26px; color: currentColor; background: transparent; border-radius: 0; }
.home-flow .chart-button svg { width: 19px; height: 19px; }

/* Reading surfaces */
.home-flow .content-card {
  position: relative;
  max-width: 960px;
  padding: clamp(1.05rem, 4vw, 1.65rem);
  overflow: hidden;
  background: rgba(255, 254, 249, .98);
  border-left: 4px solid var(--home-gold-500);
}
.home-flow .content-card::after { display: none; }
.home-flow .content-card--feature { border-left-color: var(--home-wine-700); }
.home-flow .content-card--ornament { background: #fffdf5; }
.home-flow .content-card h2 { margin: 0 0 .7rem; color: var(--home-wine-800); font: 850 clamp(1.3rem, 3vw, 1.7rem)/1.22 ui-sans-serif, system-ui, sans-serif; }
.home-flow .content-card h3 { margin: 1.1rem 0 .38rem; color: #7c1125; font-size: 1.08rem; }
.home-flow .content-card p,
.home-flow .content-card li {
  color: #3d3436;
  text-align: left;
  font-size: .94rem;
  line-height: 1.72;
}
.home-flow .content-card p { margin: .52rem 0; }
.home-flow .content-card--closing {
  color: #f8eadc;
  background: linear-gradient(135deg, var(--home-wine-950), var(--home-wine-800));
  border-color: #c69521;
}
.home-flow .content-card--closing p,
.home-flow .content-card--closing li { color: #f4e8df; }
.home-flow .content-card--closing h2,
.home-flow .content-card--closing h3,
.home-flow .content-card--closing .card-kicker { color: #ffe08c; }

/* Final Ank, zones and tools */
.home-flow .final-table th { color: #4b2800; background: #f1c84e; border-color: #ddbd63; }
.home-flow .final-table td { color: #392c2f; background: #fffef9; border-color: #ebe1c5; }
.home-flow .final-table tbody tr:nth-child(even) td { background: #fff8e4; }
.home-flow .final-table td:first-child { text-align: left; }
.home-flow .final-table td:last-child { color: var(--home-wine-800); font: 900 1.3rem Georgia, serif; }
.home-flow .final-table td small { float: right; padding: .15rem .34rem; color: #684405; background: #fff1bd; border-radius: 999px; }

.home-flow .zone-stack { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }
.home-flow .zone-card { padding: .65rem; }
.home-flow .zone-card__head {
  display: flex;
  align-items: center;
  gap: .7rem;
  min-height: 68px;
  margin-bottom: .52rem;
  padding: .65rem;
  color: #fff2d4;
  background: var(--home-wine-800);
  border-radius: 11px;
}
.home-flow .zone-card--numbers .zone-card__head { background: linear-gradient(110deg, var(--home-wine-800), #7e0b21); }
.home-flow .zone-card__head > span {
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  height: 38px;
  color: #4b2100;
  background: #f2ca4f;
  border-radius: 10px;
  font-weight: 900;
}
.home-flow .zone-card h2 { margin: 0; padding: 0; color: #fff8e6; text-align: left; text-transform: none; background: none; font-size: 1.05rem; }
.home-flow .zone-card__head p { margin: .1rem 0 0; color: #ead8b4; font-size: .7rem; }
.home-flow .zone-links { display: grid; gap: .38rem; }
.home-flow .zone-links a {
  position: relative;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
  justify-content: initial;
  min-height: 51px;
  padding: .52rem .65rem;
  color: var(--home-wine-800);
  text-align: left;
  background: #fffef9;
  border: 1px solid #e5d9b8;
  border-left: 3px solid var(--home-wine-700);
  border-radius: 9px;
  font-size: .77rem;
  font-weight: 800;
}
.home-flow .zone-links a::after { content: "›"; color: #aa7908; font-size: 1.2rem; }
.home-flow .zone-links a span { color: #73530a; font-size: .58rem; letter-spacing: .07em; text-transform: uppercase; }

.home-flow .tools-zone { padding: .65rem; }
.home-flow .tools-zone__head { margin: -.65rem -.65rem .62rem; }
.home-flow .tool-link-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .48rem; }
.home-flow .tool-link-grid a {
  display: flex;
  align-items: center;
  gap: .55rem;
  min-height: 62px;
  padding: .6rem;
  color: var(--home-wine-800);
  text-align: left;
  background: #fffdf5;
  border: 1px solid #dfd1a5;
  border-radius: 10px;
  box-shadow: none;
  font-size: .76rem;
  font-weight: 800;
}
.home-flow .tool-link-grid a b {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  height: 32px;
  color: #fff4d5;
  background: var(--home-wine-700);
  border-radius: 8px;
  font-size: .65rem;
}

/* Weekly result matrices */
.home-flow .weekly-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; margin-top: 0; }
.home-flow .weekly-card { position: relative; }
.home-flow .weekly-card::after {
  content: "Swipe to view full week →";
  display: none;
  padding: .3rem .65rem;
  color: #756567;
  text-align: right;
  background: #fffaf0;
  font-size: .62rem;
}
.home-flow .weekly-card__head { padding: .7rem; color: #fff3d3; text-align: center; background: linear-gradient(110deg, var(--home-wine-900), var(--home-wine-700)); }
.home-flow .weekly-card__head h3 { margin: 0; color: #fff8e5; background: none; font: 850 1.15rem Georgia, serif; }
.home-flow .weekly-card__head p { margin: .2rem 0 0; color: #e7d4bf; font-size: .7rem; }
.home-flow .weekly-cells { display: grid; grid-template-columns: repeat(7, minmax(92px, 1fr)); overflow-x: auto; scroll-snap-type: x proximity; scrollbar-color: #b98612 #fff2c8; }
.home-flow .weekly-cell { min-height: 118px; padding: .5rem .35rem; scroll-snap-align: start; background: #fff; border-right: 1px solid #e9dfc3; }
.home-flow .weekly-cell > span { color: #6f1021; font-size: .66rem; }
.home-flow .weekly-cell > span small { display: block; color: #625457; font-size: .57rem; }
.home-flow .weekly-cell strong { display: grid; gap: .08rem; margin-top: .45rem; color: #302426; font: 800 .8rem ui-monospace, monospace; }
.home-flow .weekly-cell strong b { color: #bd1232; font-size: 1.05rem; }
.home-flow .weekly-cell em { color: #625457; font-size: .56rem; font-style: normal; text-transform: uppercase; }
.home-flow .weekly-cell--upcoming { background: #fffdf5; }
.home-flow .weekly-cell--upcoming strong { opacity: .52; }
.home-flow .weekly-cell--upcoming em { color: #7c5b08; }
.home-flow .weekly-cell--awaiting em { color: #8a4c0b; }
.home-flow .weekly-card__link { display: block; min-height: 44px; padding: .7rem; color: var(--home-wine-800); text-align: center; background: #fffaf0; border-top: 1px solid #e8dab2; font-size: .73rem; font-weight: 800; }

/* Full free list, directories and FAQ */
.home-flow .free-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; margin-top: 0; }
.home-flow .directory-stage { padding: .65rem; scroll-margin-top: 1rem; }
.home-flow .directory-stage > .section-heading { margin: -.65rem -.65rem .65rem; border: 0; border-radius: 0; }
.home-flow .directory-columns { display: grid; grid-template-columns: 1fr 1fr; gap: .62rem; }
.home-flow .directory-zone { overflow: hidden; background: #fffdf7; border: 1px solid #ded0a4; border-radius: 11px; }
.home-flow .directory-zone h3 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  padding: .75rem;
  color: #fff4d8;
  background: var(--home-wine-800);
  font-size: .94rem;
}
.home-flow .directory-zone--panel h3 { background: #745207; }
.home-flow .directory-zone h3 small { padding: .18rem .4rem; color: #4a2500; background: #f2cf5d; border-radius: 999px; font-size: .57rem; }
.home-flow .directory-links { display: grid; gap: .28rem; padding: .4rem; }
.home-flow .directory-links a {
  display: flex;
  align-items: center;
  gap: .48rem;
  min-height: 43px;
  padding: .42rem .5rem;
  color: #5f0b1a;
  background: #fff;
  border: 1px solid #ece3ca;
  border-radius: 8px;
  font-size: .7rem;
  font-weight: 800;
}
.home-flow .directory-links a::after { content: "›"; margin-left: auto; color: #aa7908; font-size: 1rem; }
.home-flow .directory-links a span { display: grid; place-items: center; flex: 0 0 27px; height: 27px; color: #fff4d7; background: var(--home-wine-700); border-radius: 7px; }
.home-flow .directory-zone--panel .directory-links a span { background: #9a7309; }

.home-flow .faq-panel__head { border-radius: 0; }
.home-flow .faq-list details { margin: 0; background: #fff; border: 0; border-bottom: 1px solid #e9dfc2; border-radius: 0; }
.home-flow .faq-list details:last-child { border-bottom: 0; }
.home-flow .faq-list summary {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-height: 58px;
  padding: .62rem .75rem;
  color: #5f0b19;
  cursor: pointer;
  list-style: none;
  font-size: .82rem;
  font-weight: 800;
}
.home-flow .faq-list summary::-webkit-details-marker { display: none; }
.home-flow .faq-list summary::after { content: "+"; margin-left: auto; color: #9d7209; font-size: 1.15rem; }
.home-flow .faq-list details[open] summary::after { content: "−"; }
.home-flow .faq-list summary > span { display: grid; place-items: center; flex: 0 0 34px; height: 34px; color: #fff4d9; background: var(--home-wine-700); border-radius: 8px; font-size: .65rem; }
.home-flow .faq-answer { padding: 0 .85rem .85rem 4rem; color: #4f4345; }
.home-flow .faq-answer p { margin: 0; font-size: .8rem; line-height: 1.6; }

/* Interaction and responsive behavior */
.home-flow a,
.home-flow button,
.home-flow summary { -webkit-tap-highlight-color: rgba(130, 10, 31, .12); }
.home-flow a:focus-visible,
.home-flow button:focus-visible,
.home-flow summary:focus-visible,
body[data-page-path="/"] .nav-toggle:focus-visible,
body[data-page-path="/"] .primary-nav a:focus-visible {
  outline: 3px solid #1d72d8;
  outline-offset: 3px;
}

@media (hover: hover) {
  .hero-quick-links a:hover,
  .home-flow .zone-links a:hover,
  .home-flow .tool-link-grid a:hover,
  .home-flow .directory-links a:hover,
  .home-flow .chart-button:hover,
  .home-flow .live-update-card__actions a:hover,
  .home-flow .live-update-card__actions button:hover {
    filter: none;
    transform: translateY(-1px);
    border-color: #c59725;
    box-shadow: 0 4px 10px rgba(74, 24, 0, .08);
  }
}

@media (max-width: 859px) {
  .home-flow .market-list,
  .home-flow .zone-stack,
  .home-flow .weekly-grid,
  .home-flow .directory-columns,
  .home-flow .free-grid { grid-template-columns: 1fr; }
  .home-flow .weekly-card::after { display: block; }
  .home-flow .contact-beacon { grid-template-columns: 50px minmax(0, 1fr); }
  .home-flow .contact-beacon .button { grid-column: 2; justify-self: start; }
}

@media (max-width: 620px) {
  body[data-page-path="/"] { --shell: min(590px, calc(100% - 20px)); }
  body[data-page-path="/"] .topline__inner > span:first-child { display: none; }
  body[data-page-path="/"] .topline__inner { justify-content: center; min-height: 27px; }
  body[data-page-path="/"] .brand-row { min-height: 66px; }
  body[data-page-path="/"] .brand__wide { width: 84px; height: 48px; }
  body[data-page-path="/"] .brand__copy strong { font-size: 1.22rem; }
  body[data-page-path="/"] .brand__copy small { display: none; }

  .home-flow .section { padding-block: .48rem; }
  .home-flow .section--tight { padding-block: .32rem; }
  .home-flow .brand-banner { min-height: 188px; padding: 1.35rem .85rem; border-radius: 17px; }
  .home-flow .brand-banner::before { inset: 8px; border-radius: 12px; }
  .home-flow .brand-banner::after { display: block; }
  .home-flow .brand-banner h1 { font-size: clamp(1.9rem, 9.5vw, 2.55rem); }
  .home-flow .brand-banner p { font-size: .78rem; line-height: 1.45; }
  .hero-quick-links { margin-top: .82rem; }
  .hero-quick-links a { min-height: 42px; padding: .48rem .68rem; font-size: .68rem; }
  .home-flow .intro-card { margin-top: .55rem; padding: .9rem .8rem; }
  .home-flow .intro-card h2 { font-size: 1.13rem; }
  .home-flow .intro-card__copy p { font-size: .84rem; line-height: 1.58; }
  .home-flow .trust-line { gap: .32rem .65rem; font-size: .66rem !important; }

  .home-flow .section-ribbon,
  .home-flow .feature-stage__title,
  .home-flow .section-heading,
  .home-flow .final-ank-panel__heading,
  .home-flow .tools-zone__head,
  .home-flow .faq-panel__head { min-height: 61px; gap: .62rem; padding: .62rem .68rem; }
  .home-flow .section-monogram { flex-basis: 38px; min-width: 38px; width: 38px; height: 38px; border-radius: 10px; }
  .home-flow .section-monogram svg { width: 20px; height: 20px; }
  .home-flow .section-ribbon h2,
  .home-flow .feature-stage__title h2,
  .home-flow .section-heading h2,
  .home-flow .final-ank-panel__heading h2,
  .home-flow .tools-zone__head h2,
  .home-flow .faq-panel__head h2 { font-size: 1rem; }
  .home-flow .section-ribbon p,
  .home-flow .feature-stage__title p,
  .home-flow .section-heading p,
  .home-flow .tools-zone__head p,
  .home-flow .faq-panel__head p,
  .home-flow .section-ribbon time,
  .home-flow .final-ank-panel__heading time { font-size: .66rem; }
  .home-flow .analytics-rotator-toggle { min-height: 30px; padding: .3rem .45rem; font-size: .59rem; }

  .home-flow .analytics-grid { grid-template-columns: 1fr 1fr; gap: .42rem; padding: .5rem; }
  .home-flow .metric { min-height: 91px; border-radius: 10px; }
  .home-flow .metric > span:first-child { padding: .38rem .2rem; font-size: .59rem; }
  .home-flow .metric strong { min-height: 56px; padding: .45rem .2rem; font-size: 1.24rem; }

  .home-flow .live-update-list { padding: .52rem; }
  .home-flow .live-update-card,
  .home-flow .live-update-card--compact { grid-template-columns: minmax(0, 1fr) auto; gap: .45rem; padding: .62rem; }
  .home-flow .live-update-card--primary { padding: .72rem; }
  .home-flow .live-update-card__meta strong { font-size: .9rem; }
  .home-flow .live-update-card__meta small { font-size: .62rem; }
  .home-flow .live-update-card__result { font-size: 1.2rem; }
  .home-flow .live-update-card--compact .phase-badge,
  .home-flow .phase-badge { grid-column: 1 / -1; justify-self: stretch; max-width: none; text-align: center; font-size: .59rem; }
  .home-flow .live-update-card__jump { grid-column: 1 / -1; min-height: 32px; display: inline-flex; align-items: center; }
  .home-flow .live-update-card__actions { grid-template-columns: 1fr 1fr; }
  .home-flow .live-update-card__actions > :last-child { grid-column: 1 / -1; min-height: 40px; }

  .home-flow .feature-stage .free-game-card { margin: .5rem; }
  .home-flow .free-game-values { grid-template-columns: 1fr; }
  .home-flow .free-game-values > div { grid-template-columns: 54px 1fr; }
  .home-flow .contact-beacon { grid-template-columns: 44px minmax(0, 1fr); gap: .65rem; min-height: 0; padding: .78rem; }
  .home-flow .contact-beacon__mark { width: 44px; height: 44px; border-radius: 11px; }
  .home-flow .contact-beacon__mark svg { width: 20px; height: 20px; }
  .home-flow .contact-beacon__copy h2 { font-size: 1.05rem; }
  .home-flow .contact-beacon__copy h3 { font-size: .77rem; }
  .home-flow .contact-beacon__copy p { font-size: .73rem; }
  .home-flow .contact-beacon .button { grid-column: 1 / -1; justify-self: stretch; width: 100%; }

  .home-flow .market-list { gap: .5rem; }
  .home-flow .market-card { border-radius: 12px; }
  .home-flow .market-card__top { min-height: 44px; padding: .55rem .65rem .4rem; }
  .home-flow .market-card h3 { font-size: .91rem; }
  .home-flow .market-result-line { margin: .57rem .45rem .4rem; font-size: 1.3rem; }
  .home-flow .market-card__schedule { margin-bottom: .45rem; font-size: .65rem; }
  .home-flow .chart-button { min-height: 45px; font-size: .7rem; }

  .home-flow .content-card { padding: 1rem .86rem; }
  .home-flow .content-card h2 { font-size: 1.23rem; }
  .home-flow .content-card h3 { font-size: 1.02rem; }
  .home-flow .content-card p,
  .home-flow .content-card li { font-size: .86rem; line-height: 1.65; }

  .home-flow .zone-card { padding: .5rem; }
  .home-flow .zone-card__head { min-height: 62px; margin-bottom: .42rem; padding: .55rem; }
  .home-flow .zone-links a { grid-template-columns: 64px minmax(0, 1fr) auto; min-height: 49px; padding: .44rem .52rem; font-size: .72rem; }
  .home-flow .tool-link-grid { grid-template-columns: 1fr 1fr; gap: .38rem; }
  .home-flow .tool-link-grid a { min-height: 59px; padding: .45rem; gap: .42rem; font-size: .68rem; }
  .home-flow .tool-link-grid a b { flex-basis: 29px; height: 29px; }
  .home-flow .weekly-card__head h3 { font-size: 1.05rem; }
  .home-flow .weekly-cells { grid-template-columns: repeat(7, 88px); }
  .home-flow .weekly-cell { min-height: 110px; }
  .home-flow .directory-stage { padding: .5rem; }
  .home-flow .directory-stage > .section-heading { margin: -.5rem -.5rem .5rem; }
  .home-flow .directory-links a { min-height: 42px; font-size: .68rem; }
  .home-flow .faq-panel__head p { display: block; }
  .home-flow .faq-list summary { min-height: 55px; padding: .58rem .65rem; font-size: .78rem; }
  .home-flow .faq-list summary > span { flex-basis: 31px; height: 31px; }
  .home-flow .faq-answer { padding: 0 .72rem .72rem 3.4rem; }
}

@media (max-width: 350px) {
  .home-flow .tool-link-grid { grid-template-columns: 1fr; }
  .hero-quick-links { display: grid; }
  .home-flow .market-card__schedule { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
  .home-flow *,
  .home-flow *::before,
  .home-flow *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
