.dt-stock-hero{background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--dt-color-brand) 25%,transparent),transparent 38%),linear-gradient(135deg,#101712,#17221b);border:1px solid #303a33;border-radius:1.25rem;box-shadow:0 1.4rem 3.5rem rgba(16,22,18,.18);color:#f5faf7;display:grid;gap:1rem;grid-template-columns:auto minmax(0,1fr) auto;padding:clamp(1.35rem,3vw,2.35rem);position:relative;width:min(64rem,calc(100vw - 2rem))}.dt-stock-hero__copy{display:grid;gap:.28rem;min-width:0}.dt-stock-hero__eyebrow{color:#8ed2c7;font:800 .58rem var(--dt-font-compact);letter-spacing:.12em;text-transform:uppercase}.dt-stock-hero h2{font:400 clamp(1.8rem,4vw,3rem)/1.06 var(--dt-font-display);margin:0}.dt-stock-hero__symbol{color:#b9c5be;font-size:.68rem;font-weight:800}.dt-stock-hero__quote{display:grid;gap:.15rem;text-align:right}.dt-stock-hero__quote>span{color:#aab8b0;font-size:.55rem;text-transform:uppercase}.dt-stock-hero__quote strong{font:800 1.55rem var(--dt-font-compact)}.dt-stock-hero__quote b,.dt-exchange-quote em{font-size:.65rem;font-style:normal}.dt-stock-hero .is-positive,.dt-exchange-quote .is-positive{color:#59d6a0}.dt-stock-hero .is-negative,.dt-exchange-quote .is-negative{color:#ff8888}.dt-stock-hero__actions{display:flex;flex-wrap:wrap;gap:.5rem;grid-column:2/-1}.dt-exchange-quote,.dt-stock-range,.dt-signal-meter,.dt-stock-stats,.dt-sentiment-score,.dt-financial-metric,.dt-quarterly-card,.dt-revenue-mix,.dt-dividend-snapshot{background:var(--dt-color-surface);border:1px solid var(--dt-color-border);border-radius:.875rem;color:var(--dt-color-text)}.dt-exchange-quote{display:grid;gap:.28rem;padding:.85rem;width:min(15rem,calc(100vw - 2rem))}.dt-exchange-quote.is-active{border-color:var(--dt-color-brand);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--dt-color-brand) 16%,transparent)}.dt-exchange-quote>div{display:flex;justify-content:space-between}.dt-exchange-quote span,.dt-exchange-quote small{color:var(--dt-color-text-muted);font-size:.58rem}.dt-exchange-quote strong{font:800 1rem var(--dt-font-compact)}.dt-exchange-quote .is-negative{color:var(--dt-color-danger)}.dt-stock-range,.dt-signal-meter{display:grid;gap:.75rem;padding:1rem;width:min(32rem,calc(100vw - 2rem))}.dt-stock-range header,.dt-signal-meter header{display:flex;gap:1rem;justify-content:space-between}.dt-stock-range header span,.dt-signal-meter header span{color:var(--dt-color-text-muted);font-size:.6rem}.dt-stock-range__track,.dt-signal-meter__track{background:linear-gradient(90deg,var(--dt-color-success),#d59a24,var(--dt-color-danger));border-radius:999px;height:.55rem;position:relative}.dt-stock-range__track i,.dt-signal-meter__track i{background:var(--dt-color-text);border:2px solid var(--dt-color-surface);border-radius:999px;box-shadow:0 1px 5px rgba(0,0,0,.22);height:1.15rem;position:absolute;top:50%;transform:translate(-50%,-50%);width:.38rem}.dt-signal-meter__track i{height:1.15rem;width:1.15rem}.dt-stock-range__labels,.dt-signal-meter__labels{display:flex;font-size:.58rem;justify-content:space-between}.dt-stock-range__labels span{display:grid;gap:.15rem}.dt-stock-range__labels span:nth-child(2){text-align:center}.dt-stock-range__labels span:last-child{text-align:right}.dt-signal-meter__labels b{color:var(--dt-color-brand)}.dt-signal-meter__facts{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.dt-signal-meter__facts span{background:var(--dt-color-surface-muted);border-radius:.55rem;display:grid;gap:.15rem;padding:.6rem}.dt-signal-meter__facts small,.dt-stock-stats small{color:var(--dt-color-text-muted);font-size:.52rem}.dt-stock-stats{border-bottom:0;border-left:0;border-radius:0;border-right:0;display:grid;gap:.75rem;padding:1rem 0;width:min(24rem,calc(100vw - 2rem))}.dt-stock-stats header{display:grid;gap:.2rem}.dt-stock-stats header span{color:var(--dt-color-text-muted);font:.52rem var(--dt-font-compact);letter-spacing:.08em;text-transform:uppercase}.dt-stock-stats dl{display:grid;margin:0}.dt-stock-stats dl div{align-items:center;border-bottom:1px dashed var(--dt-color-border);display:flex;gap:1rem;justify-content:space-between;padding:.62rem 0}.dt-stock-stats dt{display:grid;font-size:.62rem}.dt-stock-stats dd{font:800 .68rem var(--dt-font-compact);margin:0}.dt-sentiment-score{align-content:start;display:grid;gap:.65rem;justify-items:center;padding:1.15rem;text-align:center;width:min(18rem,calc(100vw - 2rem))}.dt-sentiment-score>span{color:var(--dt-color-text-muted);font:800 .55rem var(--dt-font-compact);letter-spacing:.1em;text-transform:uppercase}.dt-sentiment-score__ring{--dt-score-color:var(--dt-color-brand);align-items:center;background:conic-gradient(var(--dt-score-color) calc(var(--dt-score)*1%),var(--dt-color-surface-muted) 0);border-radius:50%;display:flex;height:7rem;justify-content:center;width:7rem}.dt-sentiment-score.is-strong .dt-sentiment-score__ring{--dt-score-color:var(--dt-color-success)}.dt-sentiment-score.is-cautious .dt-sentiment-score__ring{--dt-score-color:var(--dt-color-warning)}.dt-sentiment-score__ring>div{align-items:baseline;background:var(--dt-color-surface);border-radius:50%;display:flex;height:5.25rem;justify-content:center;width:5.25rem}.dt-sentiment-score__ring strong{font:400 2rem var(--dt-font-display)}.dt-sentiment-score__ring small,.dt-sentiment-score p{color:var(--dt-color-text-muted);font-size:.55rem}.dt-sentiment-score h3{font:400 1.25rem var(--dt-font-display);margin:0}.dt-sentiment-score p{line-height:1.5;margin:0}.dt-financial-metric{overflow:hidden;width:min(24rem,calc(100vw - 2rem))}.dt-financial-metric header{align-items:start;display:flex;gap:1rem;justify-content:space-between;padding:1rem}.dt-financial-metric h3{font-size:.7rem;margin:0}.dt-financial-metric header span{display:grid;text-align:right}.dt-financial-metric header small,.dt-financial-metric__grid small{color:var(--dt-color-text-muted);font-size:.52rem}.dt-financial-metric__grid{border-top:1px solid var(--dt-color-border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.dt-financial-metric__grid span{border-left:1px solid var(--dt-color-border);display:grid;gap:.2rem;padding:.7rem}.dt-financial-metric__grid span:first-child{border-left:0}.dt-financial-metric details{border-top:1px solid var(--dt-color-border)}.dt-financial-metric summary{color:var(--dt-color-brand);cursor:pointer;font-size:.58rem;font-weight:800;padding:.7rem 1rem}.dt-quarterly-card{display:grid;gap:.55rem;padding:.9rem;width:min(17rem,calc(100vw - 2rem))}.dt-quarterly-card.is-highlighted{border-color:var(--dt-color-brand);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--dt-color-brand) 14%,transparent)}.dt-quarterly-card h3{color:var(--dt-color-text-muted);font:800 .58rem var(--dt-font-compact);letter-spacing:.08em;margin:0;text-transform:uppercase}.dt-quarterly-card dl{display:grid;margin:0}.dt-quarterly-card dl div{border-bottom:1px dashed var(--dt-color-border);display:flex;gap:1rem;justify-content:space-between;padding:.48rem 0}.dt-quarterly-card dl div:last-child{border-bottom:0}.dt-quarterly-card dt{color:var(--dt-color-text-muted);font-size:.6rem}.dt-quarterly-card dd{font:800 .65rem var(--dt-font-compact);margin:0}.dt-quarterly-card dd.is-positive{color:var(--dt-color-success)}.dt-quarterly-card dd.is-negative{color:var(--dt-color-danger)}.dt-revenue-mix{overflow:hidden;width:min(38rem,calc(100vw - 2rem))}.dt-revenue-mix>header{align-items:start;border-bottom:1px solid var(--dt-color-border);display:flex;gap:1rem;justify-content:space-between;padding:1rem}.dt-revenue-mix header span{display:grid;gap:.2rem}.dt-revenue-mix header small{color:var(--dt-color-brand);font:800 .5rem var(--dt-font-compact);letter-spacing:.1em;text-transform:uppercase}.dt-revenue-mix h3{font:400 1.25rem var(--dt-font-display);margin:0}.dt-revenue-mix header p{color:var(--dt-color-text-muted);font-size:.55rem;margin:0}.dt-revenue-mix header>b{background:var(--dt-color-surface-muted);border-radius:999px;font-size:.55rem;padding:.35rem .55rem}.dt-revenue-mix__body{align-items:center;display:grid;gap:1.25rem;grid-template-columns:auto minmax(0,1fr);padding:1rem}.dt-revenue-mix__chart{align-items:center;border-radius:50%;display:flex;height:9rem;justify-content:center;width:9rem}.dt-revenue-mix__chart>span{align-items:center;background:var(--dt-color-surface);border-radius:50%;display:grid;height:6.2rem;justify-items:center;padding:.7rem;text-align:center;width:6.2rem}.dt-revenue-mix__chart small,.dt-revenue-mix__chart em,.dt-revenue-mix li small{color:var(--dt-color-text-muted);font-size:.48rem;font-style:normal}.dt-revenue-mix__chart strong{font:400 1.35rem var(--dt-font-display)}.dt-revenue-mix ul{display:grid;gap:.6rem;list-style:none;margin:0;padding:0}.dt-revenue-mix li{align-items:center;display:grid;gap:.55rem;grid-template-columns:.55rem minmax(0,1fr) auto}.dt-revenue-mix li>i{border-radius:50%;height:.55rem;width:.55rem}.dt-revenue-mix li>span{display:grid;font-size:.6rem}.dt-revenue-mix li>strong{font:.7rem var(--dt-font-compact)}.dt-dividend-snapshot{display:grid;gap:.85rem;padding:1rem;width:min(38rem,calc(100vw - 2rem))}.dt-dividend-snapshot header{display:grid;gap:.28rem}.dt-dividend-snapshot header>span{color:var(--dt-color-brand);font:800 .53rem var(--dt-font-compact);letter-spacing:.1em;text-transform:uppercase}.dt-dividend-snapshot h3{font:400 1.3rem var(--dt-font-display);margin:0}.dt-dividend-snapshot p,.dt-dividend-snapshot footer{color:var(--dt-color-text-muted);font-size:.58rem;line-height:1.45;margin:0}.dt-dividend-snapshot dl{display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.dt-dividend-snapshot dl div{background:var(--dt-color-surface-muted);border-radius:.65rem;display:grid;gap:.2rem;padding:.8rem}.dt-dividend-snapshot dt{color:var(--dt-color-text-muted);font:.53rem var(--dt-font-compact);text-transform:uppercase}.dt-dividend-snapshot dd{font:400 1.35rem var(--dt-font-display);margin:0}.dt-dividend-snapshot dl small{color:var(--dt-color-text-muted);font-size:.5rem}
@media(max-width:38rem){.dt-stock-hero{grid-template-columns:auto minmax(0,1fr)}.dt-stock-hero__quote{grid-column:2;text-align:left}.dt-stock-hero__actions{grid-column:1/-1}.dt-revenue-mix__body{grid-template-columns:1fr;justify-items:center}.dt-revenue-mix ul{width:100%}.dt-dividend-snapshot dl,.dt-signal-meter__facts{grid-template-columns:1fr}.dt-financial-metric__grid{grid-template-columns:1fr}.dt-financial-metric__grid span{border-left:0;border-top:1px solid var(--dt-color-border)}.dt-financial-metric__grid span:first-child{border-top:0}}

/* Full company-research hero contract from the production stock page. */
.dt-stock-hero {
  background:
    radial-gradient(circle at 86% 12%, rgba(89,198,180,.14), transparent 27%),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    #111612;
  background-size: auto, 4.5rem 4.5rem, 4.5rem 4.5rem, auto;
  column-gap: clamp(1rem,2vw,1.6rem);
  grid-template-columns: auto minmax(0,1fr);
  padding: clamp(1.5rem,3vw,2.4rem);
  row-gap: .9rem;
}
.dt-stock-hero::after {
  bottom: 1rem;
  color: rgba(215,241,234,.16);
  content: 'CLEAR MARKET / COMPANY RESEARCH';
  font: 800 .55rem/1 var(--dt-font-compact);
  letter-spacing: .16em;
  pointer-events: none;
  position: absolute;
  right: 1.5rem;
}
.dt-stock-hero > .dt-asset-logo { box-shadow: 0 0 0 5px rgba(255,255,255,.05); grid-column: 1; grid-row: 1; }
.dt-stock-hero__copy { align-content: center; gap: .55rem; grid-column: 2; grid-row: 1; min-height: 4.5rem; }
.dt-stock-hero h2 { color: #f8f8f4; font-size: clamp(1.95rem,3.4vw,3.1rem); letter-spacing: -.035em; }
.dt-stock-hero__listing { align-items: center; background: rgba(255,255,255,.035); border: 1px solid #405047; border-radius: .55rem; display: inline-flex; gap: .5rem; justify-self: start; min-height: 2.15rem; padding: .2rem .35rem .2rem .7rem; }
.dt-stock-hero__listing strong { color: #f2f4ef; font: 800 .66rem var(--dt-font-compact); }
.dt-stock-hero__listing > i { background: #7e978b; border-radius: 50%; height: .3rem; width: .3rem; }
.dt-stock-hero__listing select { background: transparent; border: 0; color: #d9e0da; font: 750 .62rem var(--dt-font-compact); min-width: 4.3rem; outline: 0; padding: .3rem; }
.dt-stock-hero__listing select option { color: #111612; }
.dt-stock-hero__market { align-items: center; background: rgba(89,198,180,.12); border-radius: .55rem; color: #b8c5be; display: inline-flex; font-size: .58rem; gap: .35rem; justify-self: start; padding: .35rem .55rem; }
.dt-stock-hero__market > i { background: #9ba79f; border-radius: 50%; height: .4rem; width: .4rem; }
.dt-stock-hero__market.is-live > i { background: #5ed795; box-shadow: 0 0 0 .18rem rgba(94,215,149,.15); }
.dt-stock-hero__market.is-delayed > i { background: #e9b44c; }
.dt-stock-hero__quote { display: grid; gap: .45rem; grid-column: 1/-1; grid-row: 2; text-align: left; }
.dt-stock-hero__quote > div { align-items: baseline; display: flex; flex-wrap: wrap; gap: .55rem; }
.dt-stock-hero__quote > div strong { color: #f8f8f4; font: 800 clamp(2.35rem,4.4vw,3.9rem)/1 var(--dt-font-compact); letter-spacing: -.045em; }
.dt-stock-hero__quote > div > span { color: #9ba79f; font: 800 .62rem var(--dt-font-compact); }
.dt-stock-hero__quote > div > b { font: 800 .78rem var(--dt-font-compact); }
.dt-stock-hero__quote > small { color: #9ba79f; font-size: .64rem; }
.dt-stock-hero__quote > p { color: #9ba79f; display: flex; flex-wrap: wrap; font-size: .66rem; gap: .45rem 1rem; margin: .15rem 0 0; }
.dt-stock-hero__quote > p a { color: #cbd6cf; font-weight: 700; text-decoration: none; }
.dt-stock-hero__quote > p span { align-items: center; display: inline-flex; gap: .35rem; }
.dt-stock-hero__quote > p span b { color: #67c7b7; font: 800 .52rem var(--dt-font-compact); letter-spacing: .12em; text-transform: uppercase; }
.dt-stock-hero__actions { gap: .5rem; grid-column: 1/-1; margin-top: .25rem; padding-bottom: 1.2rem; }
.dt-stock-hero__actions .dt-button { align-items: center; background: rgba(255,255,255,.04); border-color: #46524a; border-radius: .55rem; color: #f5f7f2; display: inline-flex; gap: .45rem; min-height: 2.5rem; }
.dt-stock-hero__actions .dt-button--primary { background: #0b695e; border-color: #59c6b4; color: #fff; }
.dt-stock-hero__actions .dt-button--secondary:nth-child(2) { background: #f2f7f4; border-color: #75d7c7; color: #064c44; }
.dt-stock-hero__actions .dt-button:hover:not(:disabled) { background: #126f64; border-color: #75d7c7; color: #fff; }

@media(max-width:38rem) {
  .dt-stock-hero { border-radius: 1.4rem; gap: .75rem; grid-template-columns: 3.25rem minmax(0,1fr); padding: 1rem; width: calc(100vw - 2rem); }
  .dt-stock-hero::after { display: none; }
  .dt-stock-hero > .dt-asset-logo { height: 3.25rem; width: 3.25rem; }
  .dt-stock-hero__copy { min-height: 3.25rem; }
  .dt-stock-hero h2 { font-size: 1.45rem; }
  .dt-stock-hero__quote { border-block: 1px solid rgba(236,242,237,.14); grid-column: 1/-1; padding-block: .85rem; }
  .dt-stock-hero__quote > div strong { font-size: 1.9rem; }
  .dt-stock-hero__actions { grid-column: 1/-1; padding-bottom: 0; }
  .dt-stock-hero__actions { flex-wrap: nowrap; overflow-x: auto; padding-bottom: .1rem; scrollbar-width: thin; }
  .dt-stock-hero__actions .dt-button { flex: 0 0 auto; justify-content: center; }
}

/* Keep standalone ratio collections visually consistent with the other
   stock-research cards instead of presenting them as an edge-to-edge table. */
.dt-stock-stats {
  background: var(--dt-color-surface);
  border: 1px solid var(--dt-color-border);
  border-radius: .875rem;
  box-shadow: 0 .5rem 1.4rem rgba(16,22,18,.06);
  gap: 0;
  overflow: hidden;
  padding: 0;
}
.dt-stock-stats header {
  background: var(--dt-color-surface-muted);
  border-bottom: 1px solid var(--dt-color-border);
  gap: .3rem;
  padding: 1rem 1.1rem;
}
.dt-stock-stats header strong { font: 400 1.2rem/1.15 var(--dt-font-display); }
.dt-stock-stats dl { padding: 0 1.1rem; }
.dt-stock-stats dl div {
  border-bottom: 1px solid var(--dt-color-border);
  padding: .8rem 0;
}
.dt-stock-stats dl div:last-child { border-bottom: 0; }

/* Treat the score as one centered lockup. Baseline alignment on the full-height
   flex container pulled the value toward the top of the donut. */
.dt-sentiment-score__ring > div {
  align-items: center;
  gap: .12rem;
}
.dt-sentiment-score__ring strong {
  line-height: 1;
}
.dt-sentiment-score__ring small {
  line-height: 1;
  transform: translateY(.32rem);
}

/* Financial history is one continuous, keyboard-focusable timeline. */
.dt-financial-metric__history {
  border-top: 1px solid var(--dt-color-border);
}
.dt-financial-metric__history-heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: .65rem 1rem .5rem;
}
.dt-financial-metric__history-heading strong {
  font: 800 .56rem var(--dt-font-compact);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.dt-financial-metric__history-heading small {
  color: var(--dt-color-text-muted);
  font-size: .5rem;
}
.dt-financial-metric__scroller {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-color: var(--dt-color-brand) var(--dt-color-surface-muted);
  scrollbar-width: thin;
  scroll-snap-type: inline proximity;
}
.dt-financial-metric__scroller:focus-visible {
  box-shadow: inset 0 0 0 2px var(--dt-color-brand);
  outline: 0;
}
.dt-financial-metric__grid {
  grid-auto-columns: 7.75rem;
  grid-auto-flow: column;
  grid-template-columns: none;
  min-width: 100%;
  width: max-content;
}
.dt-financial-metric__grid span {
  border-left: 1px solid var(--dt-color-border);
  border-top: 1px solid var(--dt-color-border);
  scroll-snap-align: start;
}
.dt-financial-metric__list {
  display: grid;
  margin: 0;
  padding: 0 1rem;
}
.dt-financial-metric__list div {
  align-items: center;
  border-top: 1px solid var(--dt-color-border);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: .72rem 0;
}
.dt-financial-metric__list dt {
  color: var(--dt-color-text-muted);
  font: 700 .58rem var(--dt-font-compact);
}
.dt-financial-metric__list dd {
  font: 800 .7rem var(--dt-font-compact);
  margin: 0;
}
