/* TDM Quant Nexus visual refresh: restrained typography, stronger imagery, clearer proof. */
:root {
  --bg: #0a0e12;
  --bg2: #10171b;
  --panel: #11191d;
  --panel2: #142026;
  --line: #26343b;
  --line2: #38505a;
  --text: #f4f7f5;
  --muted: #adbbc0;
  --green: #a8ebd2;
  --blue: #80b8dc;
  --gold: #d9bb81;
  --shadow: 0 24px 64px rgba(0, 0, 0, .2);
}

html { scroll-padding-top: 78px; }
body {
  background: #0a0e12;
  color: var(--text);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.gridbg { opacity: .045; background-size: 80px 80px; }
.wrap { width: min(1360px, calc(100% - 96px)); }
.nav {
  height: 76px;
  background: rgba(10, 14, 18, .94);
  border-color: #27333a;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .12);
}
.navin { gap: 32px; }
.brand { font-size: 14px; font-weight: 750; letter-spacing: .04em; gap: 11px; }
.mark {
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.menu { gap: clamp(12px, 1.5vw, 26px); font-size: 12px; letter-spacing: 0; }
.menu a { transition: color .2s ease; }
.menu a:hover, .menu a:focus-visible { color: var(--green); }
.mobile-menu-toggle { display: none; }
.actions .ghostlabel { display: none; }
.actions .lang { color: #a9b6b9; }
.deploy-short { display: none; }
.btn {
  border-radius: 6px;
  padding: 14px 20px;
  border-color: #577369;
  font-size: 12px;
  letter-spacing: .04em;
  box-shadow: none;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.btn:hover { transform: translateY(-2px); border-color: var(--green); }
.btn.primary {
  background: var(--green);
  color: #0a1b17;
  border: 1px solid var(--green);
  box-shadow: none;
}
.btn.primary:hover { background: #c0f5e2; }
.btn.small { padding: 11px 16px; }

.hero {
  min-height: 0;
  padding: 42px 0 18px;
  overflow: hidden;
  background: radial-gradient(ellipse at 74% 50%, #1b292a 0%, #11191d 36%, #0a0e12 76%);
  border-bottom: 1px solid #26343b;
}
.herogrid { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: clamp(24px, 4vw, 66px); }
.hero .eyebrow { font-size: 11px; font-weight: 700; color: var(--green); letter-spacing: .16em; }
.hero .dot { box-shadow: none; }
.hero h1 {
  max-width: 790px;
  margin: 24px 0 24px;
  font-size: clamp(54px, 4.85vw, 76px);
  line-height: .98;
  letter-spacing: 0;
  font-weight: 850;
}
.hero .line2 {
  margin-top: 5px;
  background: none;
  -webkit-background-clip: initial;
  color: var(--green);
}
.hero p { max-width: 700px; color: #b5c2c6; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.68; }
.hero p strong { color: #ecf5f1; }
.heroctas { margin-top: 30px; gap: 12px; }
.heroctas .btn { min-height: 49px; }
.micro { margin-top: 25px; gap: 0; }
.micro span {
  padding: 0 12px;
  color: #8fa4a5;
  border: 0;
  border-left: 1px solid #365047;
  border-radius: 0;
  background: none;
  font-size: 10px;
}
.micro span:first-child { padding-left: 0; border-left: 0; }
.visual { min-height: 510px; display: grid; grid-template-rows: 1fr; align-content: center; gap: 0; }
.visual:before, .visual:after { display: none; }
.visual img {
  width: min(100%, 535px);
  max-height: 510px;
  object-fit: contain;
  filter: drop-shadow(0 28px 42px rgba(0, 0, 0, .28));
}
.telemetry { display: none; }
.proofbar { background: #11181b; border-color: #2b393e; }
.proofgrid { min-height: 94px; }
.proof { align-items: flex-start; text-align: left; padding: 15px 22px; border-color: #2a373c; }
.proof:first-child { padding-left: 0; }
.proof b { font-size: 13px; font-weight: 750; color: #e8f0ed; }
.proof span { font-size: 10px; color: #9aaeb0; letter-spacing: .08em; }
.proof.live b { color: var(--green); }

section { padding: 94px 0; }
main > section:not(.hero):nth-of-type(even) { background: #0f1519; }
.sectionhead { max-width: 940px; margin-bottom: 38px; }
.kicker { color: var(--green); font-size: 11px; letter-spacing: .12em; font-weight: 750; }
.sectionhead h2 {
  margin: 13px 0 17px;
  max-width: 990px;
  font-size: clamp(40px, 4.5vw, 62px);
  line-height: 1.08;
  letter-spacing: 0;
  font-weight: 800;
}
.sectionhead p { max-width: 830px; color: #adbbc0; font-size: 17px; line-height: 1.65; }
.problemgrid { gap: 18px; }
.problem, .aegisart, .product, .chart, .compare, .hub, .riskdash,
.controls, .output, .finalbox, .propbox {
  border-radius: 8px;
  box-shadow: none;
}
.problem { min-height: 0; padding: 31px; background: #121a1e; border-color: #2b3b41; }
.problem h3 { font-size: 23px; }
.problem p, .propcopy p { font-size: 15px; color: #aab9be; }
.flow div { background: #151f22; font-size: 12px; color: #9eafb1; }
.aegisgrid { gap: 48px; }
.aegisart { min-height: 470px; background: #111a1e; border-color: #2b3b41; }
.aegisart img { width: min(85%, 430px); filter: none; }
.badge { border-radius: 4px; }
.features { gap: 0; }
.feature {
  grid-template-columns: 52px 1fr;
  padding: 23px 8px;
  border: 0;
  border-bottom: 1px solid #2d3b40;
  border-radius: 0;
  background: none;
}
.feature:first-child { border-top: 1px solid #2d3b40; }
.feature .n { border-radius: 5px; background: #193027; border-color: #446854; color: var(--green); }
.feature h4 { font-size: 18px; }
.feature p { font-size: 14px; color: #a6b6ba; }

.products { gap: 18px; }
.product {
  min-height: 590px;
  padding: 32px;
  background: #121a1d;
  border-color: #2b3d40;
}
.product:before, .product.gold:before { display: none; }
.product.gold { border-color: #4a4434; background: #1a1917; }
.module { font-size: 11px; color: #a8b7b7; }
.product h3 { font-size: clamp(29px, 2.6vw, 39px); letter-spacing: 0; }
.role { font-size: 11px; color: var(--green); }
.gold .role { color: var(--gold); }
.prodart { height: 320px; margin: 10px 0 12px; }
.prodart img { max-height: 300px; max-width: 82%; filter: none; }
.gold .prodart img { filter: none; }
.tri div { color: #bac5c8; font-size: 13px; }
.compare { border-color: #2b3b41; }
.compare .r:first-child { background: #192327; }
.compare .c { padding: 16px 19px; color: #a9b9bd; font-size: 13px; }
.compare .r:first-child .c { font-size: 12px; }
.compare .c:nth-child(2) { color: var(--green); }
.compare .c:nth-child(3) { color: var(--gold); }

.performancegrid { grid-template-columns: 1.2fr .8fr; gap: 18px; }
.chart { padding: 23px; background: #111a1e; border-color: #2b3b41; }
.charttop b { font-size: 13px; }
.charttop span { color: var(--green); font-size: 11px; }
.chart img { border-radius: 3px; border-color: #3b4b4d; }
.statpanel { gap: 0 19px; }
.statbox {
  min-height: 115px;
  padding: 19px 0;
  border: 0;
  border-bottom: 1px solid #334147;
  border-radius: 0;
  background: none;
}
.statbox .l { font-size: 10px; color: #9eb0b3; }
.statbox strong { font-size: 29px; letter-spacing: 0; }
.statbox small { color: #9aadb0; font-size: 11px; }
.statbox.green strong { color: var(--green); }
.statbox.gold strong { color: var(--gold); }
.statbox.blue strong { color: var(--blue); }
.verify, .livefuture { border-radius: 6px; }

.logic { gap: 0; border-top: 1px solid #304148; border-bottom: 1px solid #304148; }
.logic:before { display: none; }
.step { min-height: 196px; padding: 21px; border: 0; border-left: 1px solid #304148; border-radius: 0; background: none; }
.step:first-child { border-left: 0; }
.step .num { border-radius: 4px; color: var(--green); }
.step h4 { font-size: 14px; }
.step p { font-size: 12px; color: #a6b7bb; }
.ecosystem { gap: 50px; }
.hub { min-height: 500px; background: #111a1e; border-color: #2c3c42; }
.hub:before, .hub:after { opacity: .35; }
.hub img { width: 62%; filter: none; }
.node { border-radius: 4px; }
.ecosystemlist { gap: 0; }
.eco { border: 0; border-bottom: 1px solid #304148; border-radius: 0; padding: 20px 4px; background: none; }
.eco:first-child { border-top: 1px solid #304148; }
.eco .icon { border-radius: 4px; }
.eco h4 { font-size: 16px; }
.eco p { font-size: 13px; color: #a2b3b7; }
.propbox { padding: 30px; background: #111a1d; border-color: #2b3b41; }
.riskdash { background: #0e1619; }
.propcopy h3 { font-size: 34px; letter-spacing: 0; }
.chips span { border-radius: 4px; }
.fine { font-size: 11px; }
.testimonials-grid { gap: 16px; }
.testi-card { min-height: 360px; border-radius: 8px; background: #121a1e; border-color: #2c3b40; box-shadow: none; }
.testi-card:before { opacity: .35; }
.testi-content { font-size: 13px; color: #b4c1c4; }
.testi-proof-tag { border-radius: 4px; font-size: 11px; }
.controls, .output { background: #111a1e; border-color: #2b3b41; }
.ctrlhead, .outputhead { font-size: 11px; }
.oline { font-size: 13px; }
.boundary { font-size: 11px; border-radius: 4px; }
.labgrid { gap: 0; border-top: 1px solid #304148; }
.article { min-height: 245px; padding: 25px 20px; border: 0; border-bottom: 1px solid #304148; border-radius: 0; background: none; }
.article + .article { border-left: 1px solid #304148; }
.article h4 { font-size: 17px; }
.article p { font-size: 12px; color: #a8b9bd; }
.article a { font-size: 11px; color: var(--green); }
.faq { max-width: none; }
.faq details { border-radius: 0; border: 0; border-bottom: 1px solid #35434a; background: none; padding: 0 4px; }
.faq details:first-child { border-top: 1px solid #35434a; }
.faq summary { font-size: 16px; padding: 23px 0; }
.faq p { max-width: 850px; font-size: 14px; color: #aab9bc; }
.finalbox { padding: 60px 36px; background: #14201f; border-color: #385d51; }
.finalbox h2 { letter-spacing: 0; }
.finalbox p { font-size: 16px; }
footer { background: #080c0f; border-color: #2a383d; }
.footergrid h5 { font-size: 12px; }
.footergrid p, .footergrid a { font-size: 12px; color: #a8b7ba; }
.footbottom { font-size: 11px; color: #91a2a6; }

@media (max-width: 1100px) {
  .wrap { width: min(100% - 56px, 1360px); }
  .menu { gap: 13px; font-size: 11px; }
  .actions .lang { display: none; }
  .hero h1 { font-size: clamp(50px, 5vw, 66px); }
  .visual { min-height: 460px; }
}
@media (max-width: 980px) {
  .wrap { width: min(100% - 48px, 1360px); }
  .navin { position: relative; }
  .mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    min-height: 40px;
    padding: 0 10px;
    color: var(--green);
    background: none;
    border: 1px solid #38554c;
    border-radius: 5px;
    font: 700 11px Inter, sans-serif;
    cursor: pointer;
  }
  .menu {
    display: none;
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    z-index: 90;
    padding: 12px 18px;
    background: #11191d;
    border: 1px solid #304048;
    box-shadow: 0 18px 28px rgba(0, 0, 0, .28);
  }
  .menu.open { display: flex; flex-direction: column; gap: 0; }
  .menu a { padding: 13px 2px; border-bottom: 1px solid #28363b; font-size: 13px; }
  .menu a:last-child { border-bottom: 0; }
  .herogrid { grid-template-columns: 1fr; }
  .hero { padding: 55px 0 30px; }
  .hero h1 { max-width: 800px; }
  .visual { min-height: 360px; }
  .visual img { max-height: 440px; }
  .proofgrid { grid-template-columns: repeat(2, 1fr); }
  .proof { border-bottom: 1px solid #2a373c; }
  .proof:nth-child(odd) { padding-left: 0; border-left: 0; }
  .proof:nth-child(5) { grid-column: 1/-1; }
  .performancegrid { grid-template-columns: 1fr; }
  .logic { grid-template-columns: repeat(2, 1fr); }
  .step:nth-child(odd) { border-left: 0; }
  .step { border-bottom: 1px solid #304148; }
  .labgrid { grid-template-columns: 1fr 1fr; }
  .article:nth-child(odd) { border-left: 0; }
}
@media (max-width: 620px) {
  html { scroll-padding-top: 68px; }
  .wrap { width: min(100% - 36px, 1360px); }
  .nav { height: 68px; }
  .navin { width: calc(100% - 24px); gap: 8px; }
  .brand { font-size: 11px; letter-spacing: 0; gap: 8px; }
  .mark { width: 36px; height: 36px; }
  .btn.small { font-size: 10px; padding: 10px 12px; }
  .deploy-long { display: none; }
  .deploy-short { display: inline; }
  .mobile-menu-toggle { min-height: 36px; padding: 0 8px; font-size: 10px; }
  .hero { padding: 44px 0 24px; }
  .hero .eyebrow { font-size: 9px; }
  .hero h1 { font-size: clamp(42px, 9.5vw, 54px); line-height: 1; margin: 18px 0; }
  .hero p { font-size: 15px; line-height: 1.6; }
  .heroctas { gap: 9px; }
  .heroctas .btn { min-height: 44px; padding: 12px 13px; font-size: 10px; }
  .micro { row-gap: 9px; }
  .micro span { font-size: 9px; padding: 0 8px; }
  .visual { min-height: 0; margin-top: 8px; }
  .visual img { width: min(100%, 385px); max-height: 390px; }
  .proofgrid { min-height: 0; }
  .proof { min-height: 72px; padding: 13px; }
  .proof b { font-size: 11px; }
  .proof span { font-size: 9px; }
  section { padding: 72px 0; }
  .sectionhead h2 { font-size: clamp(35px, 8vw, 46px); }
  .sectionhead p { font-size: 15px; }
  .problem, .product, .propbox { padding: 22px; }
  .aegisart { min-height: 360px; }
  .product { min-height: 0; }
  .product h3 { font-size: 27px; }
  .prodart { height: 265px; }
  .prodart img { max-height: 260px; }
  .statpanel { grid-template-columns: 1fr 1fr; }
  .statbox strong { font-size: 22px; }
  .logic { grid-template-columns: 1fr; }
  .step { border-left: 0; min-height: 0; }
  .hub { min-height: 370px; }
  .labgrid { grid-template-columns: 1fr; }
  .article { border-left: 0 !important; min-height: 0; }
  .faq summary { font-size: 15px; }
  .finalbox { padding: 42px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .btn, .menu a { transition: none; }
}
