html { color-scheme: light dark; background-color: #030508; }
/* Keep the page anchored to the viewport without creating a nested scroll area. */
html:has(body.home-page),
body.home-page {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  overscroll-behavior: none;
}
body.home-page main {
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}
/* Homepage palette matched to Tradestone's landing page. Dark is the base palette. */
body.home-page {
  --color-bg: #030508;
  --color-bg-secondary: #0e1217;
  --color-surface: #05090c;
  --color-surface-medium: #0e1217;
  --color-surface-strong: #0e1217;
  --color-glass: #05090c;
  --color-glass-strong: #0e1217;
  --color-stroke: #02C3EB;
  --color-stroke-strong: #02C3EB;
  --card-frame: #02C3EB;
  --color-primary: #05abce;
  --color-primary-strong: #048fb0;
  --color-primary-soft: rgba(5, 171, 206, .12);
  --color-accent: #048fb0;
  --color-text: #f8fafc;
  --color-text-secondary: #cbd5e1;
  --color-text-tertiary: #a3a8b3;
  --gradient-hero: radial-gradient(880px 340px at 70% 0%,rgba(5,171,206,.18),transparent 66%),linear-gradient(180deg,#05070a,#030508);
  --gradient-glass: linear-gradient(var(--color-surface), var(--color-surface));
  --gradient-glass-hover: linear-gradient(var(--color-surface), var(--color-surface));
  --gradient-cta: linear-gradient(135deg,#05abce,#048fb0);
  --glass-border: .5px solid var(--color-stroke);
  --glass-shadow: 0 28px 80px rgba(0,0,0,.48);
  --glass-shadow-strong: var(--glass-shadow);
  --theme-header: rgba(5,9,12,.96);
  --theme-page: radial-gradient(900px 420px at 76% -8%,rgba(5,171,206,.14),transparent 62%),linear-gradient(180deg,#05070a,#030508);
  color-scheme: light dark;
  background: var(--theme-page);
  color: var(--color-text);
  accent-color: var(--color-primary);
}
body.home-page::before { background: var(--theme-page); }
body.home-page .orb { background: radial-gradient(circle,rgba(5,171,206,.14),transparent 65%); }
body.home-page :is(h1,h2,h4,h5,h6,.display-title,.section-title,.pricing-card__plan,.pricing-card__price,.brand-wordmark,.bundle-how-it-works__toolkit-heading) {
  color: var(--color-text) !important;
  background: none;
  -webkit-text-fill-color: currentColor;
  text-shadow: none;
}
body.home-page :is(p,.text-secondary,.pricing-card__list,.bundle-feature-card__benefits,.bundle-how-it-works__step-text,.hero-cta__logo-note,.hero-cta__logo-note--desktop) { color: var(--color-text-secondary) !important; }
body.home-page :is(.text-muted,.footer-meta,.pricing-card__price-note) { color: var(--color-text-tertiary) !important; }
body.home-page :is(.section-tag,.eyebrow,.landing-promo__eyebrow) { color: #05D4F2 !important; }
body.home-page :is(.site-header,.navbar) { background: var(--theme-header); border-color: var(--color-stroke-strong); box-shadow: none; }
body.home-page :is(.promo-ticker,.site-footer) { background: var(--color-bg); color: var(--color-text); }
body.home-page :is(.hero-card,.metric-card,.feature-list__item,.diagram-card,.performance-card,.pricing-card,.testimonial-card,.telemetry-card,.bundle-feature-card,.landing-promo__card,.trading-toolkit__wrap,.trading-toolkit__card,.trading-toolkit__step,.trading-toolkit__value,.nav-menu-panel,.nav-modal-content,.modal-content,.accordion-button,.accordion-body) {
  background: var(--color-surface) !important;
  border-color: var(--card-frame) !important;
  border-width: .5px !important;
  box-shadow: var(--glass-shadow) !important;
  color: var(--color-text);
}
body.home-page :is(.hero-card,.diagram-card,.performance-card,.pricing-card,.telemetry-card,.metric-card,.feature-list__item)::before,
body.home-page .telemetry-card::after { background: none; }
body.home-page :is(.bundle-how-it-works__panel,.bundle-how-it-works__step,.bundle-how-it-works__toolkit,.hero-card__pair,.promo-countdown__segment) { background: var(--color-surface-medium); border-color: var(--card-frame); border-width: .5px; box-shadow: var(--glass-shadow); }
body.home-page :is(.hero-card__header,.hero-card__footer,.modal-header,.modal-footer,.footer-meta) { border-color: var(--card-frame); border-width: .5px; }
body.home-page :is(.pricing-card--popular,.trading-toolkit__card--featured) { border-color: var(--card-frame) !important; }
body.home-page :is(.btn-primary,.landing-promo__cta,.bundle-how-it-works__step-number,.trading-toolkit__step span) {
  background: var(--gradient-cta);
  border-color: var(--color-primary);
  color: #fff !important;
  box-shadow: 0 13px 28px rgba(5,171,206,.28);
}
body.home-page :is(.btn-primary,.landing-promo__cta):hover { background: var(--color-primary-strong); color: #fff; box-shadow: 0 13px 28px rgba(5,171,206,.28); }
body.home-page :is(.btn-outline-primary,.btn-outline-light,.nav-menu-trigger) { background: transparent; border-color: var(--color-primary); color: var(--color-primary); box-shadow: none; }
body.home-page :is(.btn-outline-primary,.btn-outline-light,.nav-menu-trigger):hover { background: var(--color-primary-soft); border-color: var(--color-primary); color: var(--color-primary); }
body.home-page :is(.nav-menu-item,.nav-modal-link,.navbar .nav-link) { color: var(--color-text); border-color: var(--color-stroke); }
body.home-page :is(.nav-menu-item,.nav-modal-link):hover { background: var(--color-primary-soft); color: var(--color-primary); }
body.home-page :is(.text-primary,.text-success,.badge-live,.hero-card__footer .value,.timeline__badge,.trading-toolkit__accent) { color: var(--color-primary) !important; }
body.home-page :is(.badge-live,.timeline__badge,.trading-toolkit__icon) { background: var(--color-primary-soft) !important; border-color: var(--color-stroke-strong); }
body.home-page :is(.status-dot,.swiper-pagination-bullet-active,.bundle-how-it-works__pagination .swiper-pagination-bullet-active) { background: var(--color-primary) !important; box-shadow: none; }
body.home-page .badge-live .status-dot { background: #03F361 !important; }
body.home-page .swiper-pagination-bullet { background: var(--color-text-tertiary); }
body.home-page :is(.hero-cta__btn,.hero-card__telegram-link)::before,
body.home-page .hero-cta__btn::after { background: var(--color-primary-soft); border-color: var(--color-stroke-strong); box-shadow: none; }
body.home-page .timeline__item::before { background: var(--color-primary); }
body.home-page .timeline__item::after { background: var(--color-primary-soft); border-color: var(--color-stroke-strong); box-shadow: none; }
body.home-page .faq .accordion-body,
body.home-page .faq .accordion-collapse .accordion-body { color: var(--color-text-secondary) !important; -webkit-text-fill-color: currentColor !important; }
body.home-page .faq .accordion-button:not(.collapsed) { color: var(--color-primary); }
body.home-page .form-control { background: var(--color-surface); color: var(--color-text); border-color: var(--color-stroke); }
body.home-page .form-control::placeholder { color: var(--color-text-tertiary); }
body.home-page .form-control:focus { border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(5,171,206,.15); }
body.home-page :focus-visible { outline-color: var(--color-primary); }
body.home-page :is(.landing-promo__deadline,.promo-countdown-label) { color: #d8a51c; }
body.home-page .pricing-card__price-note { text-decoration-color: #dc2626; }
body.home-page .cta { background: var(--gradient-cta); }
body.home-page .cta :is(h2,p) { color: #fff !important; }
body.home-page .cta .btn-light { background: #fff; color: #0b1220; }
body.home-page .cta .btn-outline-light { border-color: #fff; color: #fff; }
/* Product cards also contain utility styles independent of modern.css. */
body.home-page .background-orbs .orb { background: radial-gradient(circle,rgba(5,171,206,.14),transparent 65%); }
body.home-page .dashboard-header {
  background: #05090c !important;
  border-color: var(--color-stroke-strong);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
body.home-page .bundle-card-shell,
body.home-page .bundle-section [class*="bg-gradient-to-br"] {
  background: var(--color-surface);
  border-color: var(--card-frame) !important;
  border-width: .5px !important;
  box-shadow: var(--glass-shadow);
}
body.home-page .bundle-section [class*="bg-gradient-to-r"],
body.home-page .bundle-video-frame {
  background: var(--color-surface-medium);
  border-color: var(--card-frame) !important;
  border-width: .5px !important;
  box-shadow: none;
}
body.home-page .bundle-section [class*="text-gray-"] { color: var(--color-text-secondary); }
body.home-page .bundle-feature-card__benefits span {
  color: var(--color-text-secondary);
  background: var(--color-surface-medium);
  border-color: var(--card-frame) !important;
  border-width: .5px !important;
}
body.home-page .hero-proof__value { color: var(--color-primary) !important; }
body.home-page .popular-badge { background: var(--color-primary); color: #fff; box-shadow: none; }
body.home-page .diagram-card__overlay { background: var(--color-surface); border-color: var(--card-frame); }
body.home-page :is(.nav-menu-item,.nav-modal-link) { background: var(--color-surface); }
/* Bootstrap's border utility is important, so match its precedence. */
body.home-page .bundle-section .border,
body.home-page .bundle-section [class*="border-purple-"],
body.home-page .bundle-section [class*="border-blue-"] { border-color: var(--card-frame) !important; border-width: .5px !important; }

body.home-page :is(.landing-promo__card,.hero-card,.metric-card,.feature-list__item,.bundle-card-shell,.bundle-video-frame,.bundle-feature-card,.bundle-how-it-works__panel,.bundle-how-it-works__step,.bundle-how-it-works__toolkit,.trading-toolkit__wrap,.trading-toolkit__card,.trading-toolkit__step,.trading-toolkit__value,.diagram-card,.diagram-card__overlay,.performance-card,.pricing-card,.testimonial-card,.telemetry-card,.accordion-button,.accordion-body) {
  border-color: var(--card-frame) !important;
  border-width: .5px !important;
}

/* Fit the square hero artwork to the card without overlap or cropping. */
body.home-page .hero .hero-card { min-height: 0; }
body.home-page .hero .hero-card__body { display: block; padding: 0; }
body.home-page .hero .hero-card__image {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  margin: 0 !important;
  border-radius: 0;
}
body.home-page .hero .hero-card__footer:empty { display: none; }
body.home-page .hero .hero-card__footer[hidden] { display: none; }

@media (max-width: 575.98px) {
  /* Match the hero card's visible gutter across all main-page sections. */
  body.home-page main > section:not(.hero) > .container {
    padding-left: calc(var(--home-mobile-gutter) * 0.4);
    padding-right: calc(var(--home-mobile-gutter) * 0.4);
  }

  body.home-page :is(.landing-promo__card,.metric-card,.feature-list__item,.bundle-card-shell,.bundle-how-it-works__panel,.trading-toolkit__wrap,.diagram-card,.performance-card,.pricing-card,.testimonial-card,.telemetry-card,.accordion-item) {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
}

/* Keep the requested brand color authoritative on the public website. */
html body :is(h2, h3, i) {
  color: #05BBEE !important;
  -webkit-text-fill-color: #05BBEE !important;
}

/* Follow the device appearance automatically, as the Tradestone app does. */
@media (prefers-color-scheme: light) {
  html { background-color: #F3FCFE; }
  body.home-page {
    --color-bg: #F3FCFE;
    --color-bg-secondary: #EAFBFF;
    --color-surface: #FFFFFF;
    --color-surface-medium: #F5FBFC;
    --color-surface-strong: #EAFBFF;
    --color-glass: #FFFFFF;
    --color-glass-strong: #F5FBFC;
    --color-stroke: #CDEFF5;
    --color-stroke-strong: #9EDFEA;
    --card-frame: #CDEFF5;
    --color-primary: #05ABCE;
    --color-primary-strong: #048FB0;
    --color-primary-soft: rgba(5,171,206,.10);
    --color-accent: #048FB0;
    --color-text: #0B1220;
    --color-text-secondary: #465568;
    --color-text-tertiary: #5F6B7A;
    --gradient-hero: radial-gradient(880px 340px at 70% 0%,rgba(5,171,206,.13),transparent 66%),linear-gradient(180deg,#F3FCFE,#FFFFFF);
    --gradient-glass: linear-gradient(#FFFFFF,#FFFFFF);
    --gradient-glass-hover: linear-gradient(#F5FBFC,#F5FBFC);
    --glass-border: 1px solid #CDEFF5;
    --glass-shadow: 0 20px 52px rgba(8,49,60,.10);
    --glass-shadow-strong: 0 28px 80px rgba(8,49,60,.14);
    --theme-header: rgba(255,255,255,.96);
    --theme-page: radial-gradient(900px 420px at 76% -8%,rgba(5,171,206,.12),transparent 62%),linear-gradient(180deg,#F3FCFE,#FFFFFF);
    background: var(--theme-page);
  }
  body.home-page :is(.site-header,.navbar,.dashboard-header) { background:#FFFFFF !important; }
  body.home-page :is(.promo-ticker,.site-footer) { background:#F3FCFE; }
  body.home-page :is(.hero-card,.metric-card,.feature-list__item,.diagram-card,.performance-card,.pricing-card,.testimonial-card,.telemetry-card,.bundle-feature-card,.landing-promo__card,.trading-toolkit__wrap,.trading-toolkit__card,.trading-toolkit__step,.trading-toolkit__value,.nav-menu-panel,.nav-modal-content,.modal-content,.accordion-button,.accordion-body,.bundle-card-shell) {
    background:#FFFFFF !important;
  }
  body.home-page :is(.bundle-how-it-works__panel,.bundle-how-it-works__step,.bundle-how-it-works__toolkit,.hero-card__pair,.promo-countdown__segment),
  body.home-page .bundle-section [class*="bg-gradient-to-r"],
  body.home-page .bundle-video-frame,
  body.home-page .bundle-feature-card__benefits span { background:#F5FBFC !important; }
  body.home-page .form-control { background:#FFFFFF; color:#0B1220; border-color:#B9E6EE; }
  body.home-page .cta .btn-light { background:#FFFFFF; color:#0B1220; }
  body.home-page .hero-auth__button { background:#FFFFFF !important; color:#036F8A !important; border-color:#05ABCE !important; box-shadow:0 8px 22px rgba(8,49,60,.08); }
  body.home-page .hero-auth__button:hover { background:#EAFBFF !important; color:#036F8A !important; }
  body.home-page .hero-auth__button--signup { background:#05ABCE !important; color:#0B1220 !important; }
  body.home-page .hero-auth__button--signup:hover { background:#036F8A !important; color:#FFFFFF !important; }
}

/* Last-line responsive containment for third-party and legacy section content. */
body.home-page *, body.home-page *::before, body.home-page *::after { box-sizing:border-box; }
body.home-page :is(img,svg,video,canvas,iframe) { max-width:100%; }
body.home-page img { height:auto; }
body.home-page :is(.container,.row,[class*="col-"]) { min-width:0; }
body.home-page :is(h1,h2,h3,h4,h5,h6,p) { overflow-wrap:anywhere; }
@media (max-width:767.98px) {
  body.home-page :is(.btn,button,input,select,textarea) { max-width:100%; }
  body.home-page :is(.btn,button,input[type="submit"],input[type="button"]) { min-height:44px; }
}
