@charset "utf-8";

/*
 * Blocks that do not exist in the base tigercashback landing:
 * the savings calculator, the referral deal card and the advantages checklist.
 * Everything else on the page reuses .broker_* components from style.css.
 * Only tokens declared on .broker in style.css are used here.
 */

/*
 * The calculator toggles blocks with the `hidden` attribute, and several of
 * them declare display:flex — which beats the UA `[hidden] { display: none }`.
 * Make the attribute authoritative instead of repeating :not([hidden]) rules.
 */
[hidden] {
  display: none !important;
}

/* ------------------------------------------------------------------ */
/* Savings calculator                                                  */
/* ------------------------------------------------------------------ */

/*
 * The base landing ends its hero with a screenshot and pulls the next block up
 * under it. This landing has no hero screenshot, so the overlap has nothing to
 * overlap — drop it and let the calculator's own top padding set the rhythm.
 */
.broker_hero {
  margin-bottom: 0;
}

/* Non-custodial reassurance line under the hero CTA. */
.hl_hero-note {
  margin: 15px 0 0 0;
  max-width: 420px;
  color: var(--gray2);
  font: 400 13px/19px var(--font);
}

/*
 * The hero stat is now a single figure rather than a 4/10/14 column, so it can
 * carry more weight — scale the number and its label up from the base 40/16px.
 * The base tints the number with a diagonal (137deg) gradient; make it a light
 * top-to-bottom fade instead. Only background-image is overridden so the base
 * background-clip:text keeps clipping it to the glyphs.
 */
.broker_hero .broker_stat strong {
  font-size: 72px;
  background-image: linear-gradient(180deg, #ffffff, #9a9aa2);
}

.broker_hero .broker_stat li span {
  font-size: 20px;
}

@media only screen and (max-width: 767px) {
  .broker_hero .broker_stat strong {
    font-size: 56px;
  }
}

/*
 * The base slides the stat in horizontally from the right edge
 * (translateX 100%), which reads as "flying in from nowhere". Replace the
 * entrance with a gentle rise so it just fades up in place (opacity 0 -> 1 is
 * inherited from the base .broker_ready toggle).
 */
.broker_hero:not(.broker_ready) .broker_stat li > * {
  transform: translate3d(0, 16px, 0);
}

.hl_calc {
  padding: var(--vertical) var(--side) 0 var(--side);
  scroll-margin-top: var(--header);
}

.hl_calc-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin: 0 0 32px 0;
  border-radius: 12px;
  background: var(--gradient2);
  overflow: hidden;
}

.hl_calc-icon img {
  width: 32px;
  height: 32px;
}

.hl_calc-top {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.hl_calc-title {
  margin: 0 0 20px 0;
  color: var(--white);
  font: 700 40px/50px var(--font);
  letter-spacing: -0.4px;
}

.hl_calc-desc {
  color: var(--gray2);
  font: 500 16px/24px var(--font);
}

.hl_calc-connect {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  padding: 24px;
  background: var(--light-dark);
  border: 1px solid var(--white10);
  border-radius: 24px;
}

@media only screen and (min-width: 1024px) {
  .hl_calc-top {
    flex-direction: row;
    align-items: stretch;
    gap: 32px;
  }

  .hl_calc-top .hl_calc-head,
  .hl_calc-top .hl_calc-connect {
    flex: 1 1 0;
    min-width: 0;
  }
}

.hl_calc-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.hl_calc-input {
  flex: 1 1 200px;
  min-width: 0;
  height: 50px;
  padding: 0 15px;
  border: 1px solid var(--white10);
  border-radius: 12px;
  background: var(--dark);
  color: var(--white);
  font: 400 14px/50px var(--font);
  outline: none;
  -webkit-appearance: none;
  transition: border-color 0.4s ease;
}

.hl_calc-row .broker_btn {
  height: 50px;
  padding: 0 30px;
}

.hl_calc-input::placeholder {
  color: var(--gray);
}

.hl_calc-input:focus {
  border-color: var(--gray2);
}

.hl_calc-row .broker_btn {
  flex: 0 0 auto;
}

.hl_calc-hint {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 15px 0 0 0;
  color: var(--gray2);
  font: 400 13px/19px var(--font);
}

.hl_calc-hint img {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  margin-top: 1px;
}

.hl_calc-error {
  color: #ff627e;
}

.hl_calc-warn {
  color: #ff627e;
}

/* loading -------------------------------------------------------- */

.hl_calc-loading {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 25px 0 0 0;
  color: var(--gray2);
  font: 400 14px/20px var(--font);
}

.hl_calc-spinner {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  border: 2px solid var(--white10);
  border-top-color: var(--green);
  border-radius: 50%;
  animation: hl_spin 0.8s linear infinite;
}

@keyframes hl_spin {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hl_calc-spinner {
    animation-duration: 2.4s;
  }
}

/* result ---------------------------------------------------------- */

.hl_calc-result {
  margin: 25px 0 0 0;
}

.hl_calc-wallet {
  color: var(--gray2);
  font: 400 13px/19px var(--font);
  margin: 0 0 20px 0;
}

.hl_calc-wallet b {
  color: var(--white);
  font-weight: 600;
}

.hl_calc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1px;
  background: var(--white10);
  border: 1px solid var(--white10);
  border-radius: 14px;
  overflow: hidden;
}

.hl_calc-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 18px 20px;
  background: var(--dark);
}

.hl_calc-item span {
  color: var(--gray2);
  font: 400 13px/18px var(--font);
}

.hl_calc-item b {
  color: var(--white);
  font: 700 22px/28px var(--font);
}

.hl_calc-mint {
  color: var(--green) !important;
}

.hl_calc-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  margin: 20px 0 0 0;
  padding: 22px 20px;
  border: 1px solid var(--white10);
  border-radius: 14px;
  background: var(--dark);
}

.hl_calc-total > div > span {
  display: block;
  color: var(--gray2);
  font: 400 13px/18px var(--font);
}

.hl_calc-total > div > span b {
  color: var(--green);
  font-weight: 700;
}

.hl_calc-total > div > b {
  display: block;
  color: var(--white);
  font: 800 34px/42px var(--font);
  margin: 4px 0 2px 0;
}

.hl_calc-total > div > em {
  display: block;
  color: var(--gray2);
  font: 400 13px/18px var(--font);
  font-style: normal;
}

/* Caveats under the result: sub-account, capped sample, existing referrer… */
.hl_calc-notes {
  list-style: none;
  margin: 15px 0 0 0;
  padding: 0;
}

.hl_calc-notes li {
  position: relative;
  padding: 0 0 0 16px;
  margin: 0 0 6px 0;
  color: var(--gray2);
  font: 400 13px/19px var(--font);
}

.hl_calc-notes li:last-child {
  margin-bottom: 0;
}

.hl_calc-notes li:before {
  content: "";
  position: absolute;
  left: 2px;
  top: 8px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--gray2);
}

.hl_calc-reset {
  display: block;
  margin: 15px 0 0 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--gray2);
  font: 600 13px/18px var(--font);
  cursor: pointer;
  text-decoration: underline;
  -webkit-appearance: none;
  transition: color 0.4s ease;
}

@media (pointer: fine) {
  .hl_calc-reset:hover {
    color: var(--white);
  }
}

@media only screen and (min-width: 1024px) {
  .hl_calc-card {
    padding: 40px;
  }

  .hl_calc-item {
    padding: 22px 24px;
  }

  .hl_calc-total {
    padding: 26px 30px;
  }
}

/* ------------------------------------------------------------------ */
/* Ambient glows                                                       */
/* ------------------------------------------------------------------ */

/*
 * The base landing lights the page with per-section radial glows: purple on
 * .broker_mainwrap (top), blue on .broker_security (middle), blue-lilac on
 * .broker_profits (bottom). We inherit the first and the last, but the middle
 * one went out with the .broker_security section — so the long stretch between
 * the calculator and the final CTA was left flat.
 *
 * Same geometry, colours and opacities as the base, re-hung on the sections
 * this landing actually has.
 */
.hl_glow {
  position: relative;
  overflow: hidden;
}

.hl_glow > * {
  position: relative;
  z-index: 1;
}

.hl_glow:before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 0;
  top: 50%;
  left: 50%;
  width: 1200px;
  height: 900px;
  max-height: 100%;
  transform: translate3d(-50%, -50%, 0);
}

.hl_glow-blue:before {
  background: radial-gradient(ellipse at center, #0085ff 0%, #0085ff00 50%);
  opacity: 0.2;
}

.hl_glow-purple:before {
  background: radial-gradient(ellipse at center, #b991e7 0%, #b991e700 50%);
  opacity: 0.2;
}

/* ------------------------------------------------------------------ */
/* Advantages checklist                                                */
/* ------------------------------------------------------------------ */

.hl_checklist {
  list-style: none;
  margin: 0;
  padding: 0;
}

.hl_checklist li {
  position: relative;
  padding: 0 0 0 30px;
  margin: 0 0 12px 0;
  color: var(--white);
}

.hl_checklist li:last-child {
  margin-bottom: 0;
}

.hl_checklist li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.35em;
  width: 16px;
  height: 9px;
  border: solid var(--green);
  border-width: 0 0 2px 2px;
  transform: rotate(-45deg);
}

/* ------------------------------------------------------------------ */
/* Terminal mock-ups                                                   */
/* ------------------------------------------------------------------ */

/*
 * Stand-ins for product screenshots: a window chrome bar plus a chart (and an
 * order book) drawn by js/mockups.js. Decorative only — aria-hidden, no text.
 */

/*
 * The base .broker_feature pairs a narrow 336px text column with a wide
 * screenshot and tops-aligns them. The mockup pairs a mock-up card with text in
 * two near-equal centred columns, alternating sides section to section.
 */
@media only screen and (min-width: 1024px) {
  .hl_feature {
    align-items: center;
    gap: 60px;
  }

  .hl_feature-rev {
    flex-direction: row-reverse;
  }

  .hl_feature .broker_head {
    flex: 1 1 0;
    width: auto;
    max-width: 480px;
    margin-top: 0;
  }

  .hl_feature .broker_rest {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }
}

.hl_glass {
  border: 1px solid var(--white10);
  border-radius: 20px;
  background: var(--light-dark);
  overflow: hidden;
}

.hl_glass-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--white10);
  color: var(--gray2);
  font: 600 12px/16px var(--font);
}

.hl_glass-dots {
  display: flex;
  gap: 5px;
}

.hl_glass-dots i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--white10);
}

.hl_glass-body {
  display: flex;
  align-items: stretch;
  background: var(--dark);
}

.hl_glass-chart {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  height: 240px;
}

.hl_glass-chart-wide {
  height: 280px;
}

.hl_book {
  flex: 0 0 128px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  padding: 12px 14px;
  border-left: 1px solid var(--white10);
  font: 400 11px/15px var(--font);
}

.hl_book-row {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--gray2);
}

.hl_book-row-ask {
  color: #ff627e;
}

.hl_book-row-bid {
  color: var(--green);
}

.hl_book-mid {
  margin: 5px 0;
  color: var(--white);
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .hl_book {
    display: none;
  }

  .hl_glass-chart,
  .hl_glass-chart-wide {
    height: 200px;
  }
}

/* ------------------------------------------------------------------ */
/* Language switcher                                                   */
/* ------------------------------------------------------------------ */

/*
 * The base popup is a two-column grid (repeat(2, 130px)) sized for the six
 * locales tigercashback ships. With three it leaves a hole in the last row.
 * Stack them in one column instead.
 *
 * Desktop only: under 1024px the popup is a flex row inside the burger menu,
 * where three items wrap fine.
 */
@media only screen and (min-width: 1024px) {
  .broker_header-menu .broker_lang .broker_popup {
    display: block;
  }

  .broker_header-menu .broker_lang .broker_popup li + li {
    margin-top: 5px;
  }
}

/* ------------------------------------------------------------------ */
/* How-to-start CTA                                                    */
/* ------------------------------------------------------------------ */

/*
 * .broker_btn is display:flex, so in the plain block flow of .broker_start
 * .broker_head it stretches to the full row instead of sizing to its label.
 * The base solves the same problem for .broker_earnmore's CTA — mirror it.
 */
.broker_start .broker_head .broker_btn {
  margin-top: 25px;
  width: max-content;
  min-width: 183px;
}

/*
 * The base .broker_start is sized for a four-slide row, so it reserves a full
 * --vertical (120/180px) of top padding plus 100px desktop margins top and
 * bottom. This landing swaps the slider for a short paragraph, so all that
 * reserved height reads as dead space — pull it in.
 */
.broker_start {
  padding-top: 40px;
}

@media only screen and (min-width: 1024px) {
  .broker_start {
    margin-top: 40px;
    margin-bottom: 40px;
    padding-top: 40px;
  }

  .broker_start .broker_head {
    margin-bottom: 0;
  }
}

/* ------------------------------------------------------------------ */
/* How to start — centred stepper (Figma)                              */
/* ------------------------------------------------------------------ */

.hl_start {
  position: relative;
  overflow: hidden;
  text-align: center;
  /* 240px gap from the calculator block above (Figma). */
  padding-top: 240px;
}

/* Blue ambient glow behind the steps. */
.hl_start:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 62%;
  width: 640px;
  height: 300px;
  transform: translate(-50%, -50%);
  background: radial-gradient(
    ellipse at center,
    rgba(0, 133, 255, 0.16) 0%,
    rgba(0, 133, 255, 0) 62%
  );
  pointer-events: none;
  z-index: 0;
}

.hl_start > * {
  position: relative;
  z-index: 1;
}

.hl_start .broker_head {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}

.hl_start-lead {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}

.hl_hts {
  list-style: none;
  margin: 48px 0 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  position: relative;
}

/* Dashed connector line linking the step icon centres. */
.hl_hts:before {
  content: "";
  position: absolute;
  top: 24px;
  left: 12.5%;
  right: 12.5%;
  border-top: 1px dashed var(--white10);
}

.hl_hts-step {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.hl_hts-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 0 16px 0;
  border-radius: 12px;
  background: var(--light-dark);
  border: 1px solid var(--white10);
}

.hl_hts-icon img {
  width: 24px;
  height: 24px;
}

.hl_hts-title {
  margin: 0;
  max-width: 240px;
  color: var(--white);
  font: 600 16px/24px var(--font);
}

.hl_start > .broker_btn {
  margin: 40px auto 0 auto;
  width: max-content;
  min-width: 183px;
}

@media only screen and (max-width: 767px) {
  .hl_start {
    padding-top: 120px;
  }

  .hl_hts {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 16px;
  }

  .hl_hts:before {
    display: none;
  }
}

/* ------------------------------------------------------------------ */
/* Why Tiger.com — 2x2 ecosystem cards (Figma)                         */
/* ------------------------------------------------------------------ */

.hl_why {
  display: block;
  scroll-margin-top: var(--header);
}

/* Terminal illustration — desktop only, sits in the empty right column. */
.hl_why-art {
  display: none;
}

.hl_why-art img {
  display: block;
  width: 100%;
  height: auto;
}

.hl_why-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin: 0 0 32px 0;
  border-radius: 12px;
  background: var(--gradient2);
  overflow: hidden;
}

.hl_why-icon img {
  width: 32px;
  height: 32px;
}

.hl_why-title {
  max-width: 740px;
  margin: 0 0 20px 0;
  color: var(--white);
  font: 700 40px/50px var(--font);
  letter-spacing: -0.4px;
}

.hl_why-lead {
  max-width: 740px;
  margin: 0 0 20px 0;
  color: var(--gray2);
  font: 500 16px/24px var(--font);
}

.hl_tools {
  list-style: none;
  margin: 0;
  padding: 0;
  max-width: 740px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

.hl_tool {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 12px;
  background: var(--white06);
  border: 1px solid var(--white10);
  border-radius: 12px;
}

.hl_tool-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 6px;
  overflow: hidden;
}

.hl_tool-icon img {
  width: 20px;
  height: 20px;
}

.hl_tool-icon--green {
  background: linear-gradient(135deg, #00c983, #00a66a);
}

.hl_tool-icon--blue {
  background: linear-gradient(135deg, #2e8bff, #1e60ff);
}

.hl_tool-icon--orange {
  background: linear-gradient(135deg, #ff8e50, #ff5575);
}

.hl_tool-title {
  margin: 0;
  color: var(--white);
  font: 600 20px/25px var(--font);
}

.hl_why-note {
  max-width: 740px;
  margin: 20px 0 0 0;
  color: var(--gray2);
  font: 500 16px/24px var(--font);
}

.hl_why .broker_btn {
  margin: 24px 0 0 0;
  width: max-content;
  min-width: 200px;
}

/* Desktop: content left, terminal illustration right. */
@media only screen and (min-width: 1024px) {
  .hl_why {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 440px);
    align-items: center;
    column-gap: 60px;
  }

  .hl_why-art {
    display: block;
  }
}

/* ------------------------------------------------------------------ */
/* Footer — first column                                               */
/* ------------------------------------------------------------------ */

/*
 * The base lays the first footer column out as a two-column grid
 * (163px 1fr) for the six links tigercashback ships there. This landing
 * has two, so the second one (Contact) lands in the right grid track next
 * to Home instead of under it. Stack them in one column.
 */
.broker_footer-menu > ul > li:first-child > ul {
  grid-template-columns: repeat(1, 100%);
}

/* ------------------------------------------------------------------ */
/* Hero feature chips — mobile overflow                                */
/* ------------------------------------------------------------------ */

/*
 * The base hero chips are flex: 0 0 auto — they hug their text and flow as
 * centered pills, wrapping to new rows (that's the tigercashback look). Our
 * one long label ("TP/SL right in the order book (DOM) — not available on
 * Hyperliquid") is wider than a phone, and flex-shrink:0 refuses to let it
 * wrap, so it ran off the edge.
 *
 * Only relax the shrink floor and cap the width: the long chip now shrinks and
 * wraps its own text, while the shorter chips keep hugging content and sharing
 * rows. Not display:block — that stretched every chip to full width, breaking
 * the centered-pill flow. Desktop (inline, comma-separated) is untouched.
 */
@media only screen and (max-width: 1023px) {
  .broker_hero .broker_features-list li {
    flex-shrink: 1;
    min-width: 0;
    max-width: 100%;
  }
}

/* ------------------------------------------------------------------ */
/* Hero — headline accent + terminal visual with the 14% highlight     */
/* ------------------------------------------------------------------ */

.hl_accent {
  background: var(--gradient2);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/*
 * Hero chip icons: the 4th (trading-terminal.svg) is a self-contained coloured
 * app-badge; the other three are plain white glyphs. Give those three a
 * coloured gradient badge behind the glyph so the whole row reads as app icons.
 */
.broker_hero .broker_features-list li img {
  height: 26px;
  width: 26px;
}

.broker_hero .broker_features-list li:nth-child(1) img,
.broker_hero .broker_features-list li:nth-child(2) img,
.broker_hero .broker_features-list li:nth-child(3) img {
  box-sizing: border-box;
  padding: 4px;
  border-radius: 7px;
}

.broker_hero .broker_features-list li:nth-child(1) img {
  background: linear-gradient(140deg, #4b8cff, #2f5bff);
}

.broker_hero .broker_features-list li:nth-child(2) img {
  background: linear-gradient(140deg, #35c98b, #1f9e6a);
}

.broker_hero .broker_features-list li:nth-child(3) img {
  background: linear-gradient(140deg, #ff9a5c, #ff5f7a);
}

/* The hero headline is uppercase in the design; section headings below are not. */
.broker_hero .broker_title {
  text-transform: uppercase;
}

/* ------------------------------------------------------------------ */
/* Hero density (desktop): smaller headline + 2-up feature chips so the */
/* whole block sits higher on the first screen instead of ~50%.        */
/* ------------------------------------------------------------------ */
@media only screen and (min-width: 1024px) {
  .broker_hero .broker_title {
    font-size: 52px;
  }

  /* Chips: two per row instead of one. Grid with two equal columns;    */
  /* each chip fills its column and wraps its own text. Kill the legacy  */
  /* comma separator and the negative margins from the inline layout.    */
  .broker_hero .broker_wrap .broker_features-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
    margin: 8px 0 0;
    overflow: visible;
    align-items: stretch;
  }

  /* Equal-height chips: each fills the row height; center the label so a  */
  /* one-line chip lines up with a two-line neighbour.                     */
  .broker_hero .broker_wrap .broker_features-list li {
    margin-right: 0;
    width: 100%;
    font-size: 16px;
    line-height: 1.25;
    display: flex;
    align-items: center;
  }

  .broker_hero .broker_wrap .broker_features-list li:before {
    content: none;
  }
}

.hl_hero-visual {
  margin: 30px 0 0 0;
}

.hl_hero-badge {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
}

.hl_hero-badge strong {
  display: block;
  font: 800 72px/1 var(--font);
}

/* "Up to" / "До" prefix in a distinct violet, number in the accent gradient
   (matches the account.tiger.com exchange cards). */
.hl_hero-badge strong .hl_upto {
  color: #a86bff;
}

.hl_hero-badge strong .hl_num {
  background: var(--gradient2);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.hl_hero-badge > span {
  display: block;
  color: var(--gray2);
  font: 500 18px/1.3 var(--font);
}

/* 3D coin illustration + ambient glow behind it. */
.hl_hero-art {
  position: relative;
  width: 320px;
  height: 300px;
  margin: 24px auto 0 auto;
}

.hl_hero-glow {
  position: absolute;
  left: 50%;
  top: 52%;
  width: 380px;
  height: auto;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.hl_hero-coins {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 330px;
  height: auto;
  transform: translate(-50%, -50%) rotate(12deg);
  pointer-events: none;
}

@media only screen and (min-width: 1024px) {
  .hl_hero-visual {
    position: relative;
    flex: 0 0 auto;
    width: 480px;
    min-height: 460px;
    margin: 0;
    text-align: right;
  }

  .hl_hero-badge {
    align-items: flex-end;
  }

  .hl_hero-art {
    position: absolute;
    right: -60px;
    bottom: -150px;
    width: 560px;
    height: 520px;
    margin: 0;
  }

  .hl_hero-glow {
    left: auto;
    top: auto;
    right: 30px;
    bottom: 70px;
    width: 500px;
    transform: none;
  }

  .hl_hero-coins {
    left: auto;
    top: auto;
    right: 0;
    bottom: 0;
    width: 560px;
    transform: rotate(12deg);
  }
}

/* ------------------------------------------------------------------ */
/* Calculator — highlight the headline result                          */
/* ------------------------------------------------------------------ */

.hl_calc-total > div > b {
  font-size: 44px;
  line-height: 1.1;
  background: linear-gradient(96deg, #ff8a5c 0%, #ff5f9e 60%, #b991e7 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* FAQ — pink→orange gradient toggle when a question is open (Figma) */
.broker_faq .broker_title-small.broker_open .broker_btn {
  background: var(--gradient2);
}

.broker_faq .broker_title-small.broker_open .broker_btn:before {
  opacity: 0;
}
