/* THESIVE v3.5.1 — interaction reliability, motion timing, mobile journal */

/* Reliable touch + keyboard interaction across the public site. */
.menu-btn,.tab,.btn,.v350-home-circle,[data-zone-target],[data-state-button],
.intelligence-node,.ask-preview,.companion-orb{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.menu-btn:focus-visible,.tab:focus-visible,.btn:focus-visible,.v350-home-circle:focus-visible,
[data-zone-target]:focus-visible,[data-state-button]:focus-visible,
.intelligence-node:focus-visible,.ask-preview:focus-visible,.companion-orb:focus-visible{
  outline:2px solid rgba(224,164,62,.9);
  outline-offset:3px;
}
.menu-btn{min-height:44px}
.tab{min-height:42px;min-width:92px;position:relative;overflow:hidden}
.tab:after{
  content:"";position:absolute;left:18%;right:18%;bottom:5px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transform:scaleX(0);opacity:0;transition:transform .35s var(--ease-premium),opacity .35s ease;
}
.tab.active:after{transform:scaleX(1);opacity:.7}
.journal-count{font-variant-numeric:tabular-nums}
.journal-empty{text-align:center!important;color:#8d9598!important;padding:28px 16px!important}

/* Let the Track Record animation begin when the evidence panel is actually seen.
   This keeps the chart narrative from finishing below the fold on phones. */
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-actual-line,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-asp-line-100,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-asp-band,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-target-dot,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-actual-dot,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-current-dot,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-target-label,
.record-viz-pro:not(.v351-motion-ready) .record-chart-v16 .record-callout.actual,
.record-viz-pro:not(.v351-motion-ready) .record-capital-track .rct-bar>i,
.record-viz-pro:not(.v351-motion-ready) .record-capital-track .rct-scan{
  animation-play-state:paused!important;
}
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-actual-line,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-asp-line-100,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-asp-band,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-target-dot,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-actual-dot,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-current-dot,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-target-label,
.record-viz-pro.v351-motion-ready .record-chart-v16 .record-callout.actual,
.record-viz-pro.v351-motion-ready .record-capital-track .rct-bar>i,
.record-viz-pro.v351-motion-ready .record-capital-track .rct-scan{
  animation-play-state:running!important;
}
.record-viz-pro{transition:border-color .55s ease,box-shadow .7s ease}
.record-viz-pro.v351-motion-ready{
  border-color:rgba(255,255,255,.145);
  box-shadow:0 36px 110px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.07),inset 1px 0 0 rgba(115,213,138,.10)!important;
}

/* Better anchor landing under the sticky header. */
[id]{scroll-margin-top:104px}

@media(max-width:700px){
  .record-hero-note{padding:12px 13px;margin-top:18px}
  .record-hero-note span{font-size:13px;line-height:1.6}
  .record-hero-note i{margin-top:7px}
  .v350-proof-label{font-size:9px;line-height:1.45;letter-spacing:.1em;white-space:normal}

  .tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0 18px}
  .tab{width:100%;min-width:0;min-height:46px;font-size:12px}
  .journal-tools{margin-top:12px;gap:8px}
  .search{min-height:46px;font-size:16px}
  .journal-count{font-size:12px;line-height:1.45}

  /* Mobile-first journal cards replace a forced 850px horizontal table. */
  .table-wrap{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none!important}
  .journal{display:block;min-width:0;width:100%;border-collapse:separate}
  .journal thead{
    position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
    overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
  }
  .journal tbody{display:grid;gap:11px}
  .journal tbody tr{
    display:grid;grid-template-columns:1fr 1fr;gap:0 14px;
    padding:14px 15px;border:1px solid rgba(255,255,255,.075);border-radius:14px;
    background:linear-gradient(145deg,rgba(255,255,255,.024),rgba(255,255,255,.008));
  }
  .journal tbody tr:hover{background:linear-gradient(145deg,rgba(255,255,255,.024),rgba(255,255,255,.008))}
  .journal td{
    display:grid;gap:2px;align-content:start;min-width:0;padding:8px 0!important;
    border-bottom:1px solid rgba(255,255,255,.04)!important;font-size:13px!important;
  }
  .journal td:before{
    content:attr(data-label);display:block;color:#747d80;font-size:9px;line-height:1.2;
    letter-spacing:.11em;text-transform:uppercase;
  }
  .journal td[data-label="Security"]{
    grid-column:1/-1;padding:2px 0 10px!important;margin-bottom:2px;
    border-bottom:1px solid rgba(255,255,255,.075)!important;font-size:15px!important;
  }
  .journal td[data-label="Security"]:before{display:none}
  .journal td[data-label="Outcome"]{grid-column:1/-1;border-bottom:0!important;padding-bottom:2px!important}
  .journal td[data-label="Outcome"]:before{margin-bottom:4px}
  .journal td[colspan]{grid-column:1/-1;border-bottom:0!important}
  .journal td[colspan]:before{display:none}
  .pill{width:max-content;font-size:10px;padding:6px 9px}
}

@media(max-width:430px){
  .record-pro-head{flex-direction:column;gap:7px;align-items:flex-start!important}
  .record-pro-head>b{align-self:flex-start}
  .record-pro-kpis{gap:6px!important}
  .record-pro-kpis>div{min-width:0}
  .record-pro-kpis b{overflow-wrap:anywhere}
  .record-income-breakdown-v347{padding:11px!important}
  .record-market-readiness{margin-left:14px!important;margin-right:14px!important}
}

@media(prefers-reduced-motion:reduce){
  .tab:after,.record-viz-pro{transition:none!important}
  .record-viz-pro{box-shadow:0 34px 105px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.065),inset 1px 0 0 rgba(115,213,138,.08)!important}
}

.form-success-v351{margin:0 0 18px;border-color:rgba(115,213,138,.22)!important;background:rgba(115,213,138,.045)!important;color:#b9d9c0}
.form-success-v351 strong{color:#7bd08d}
