/* Page-specific compatibility layer for the current index markup.
   The public marketing bundle keeps these controls under a legacy page scope. */
html[data-page-bundle="index"] .pro-download-menu {
  position: relative;
}

html[data-page-bundle="index"] .pro-download-trigger {
  height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 13px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  color: #d2d8df;
  background: rgba(255,255,255,.035);
  font-size: 13.5px;
  font-weight: 680;
  line-height: 1;
  list-style: none;
  white-space: nowrap;
  cursor: pointer;
  transition: color .18s ease, border-color .18s ease, background .18s ease;
}

html[data-page-bundle="index"] .pro-download-trigger::-webkit-details-marker {
  display: none;
}

html[data-page-bundle="index"] .pro-download-trigger::marker {
  content: "";
}

html[data-page-bundle="index"] .pro-download-trigger:hover,
html[data-page-bundle="index"] .pro-download-menu[open] .pro-download-trigger {
  color: #fff;
  border-color: rgba(255,255,255,.25);
  background: rgba(255,255,255,.075);
}

html[data-page-bundle="index"] .pro-download-trigger:focus-visible,
html[data-page-bundle="index"] .pro-download-panel a:focus-visible {
  outline: 2px solid rgba(158,199,255,.85);
  outline-offset: 3px;
}

html[data-page-bundle="index"] .pro-download-trigger svg {
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

html[data-page-bundle="index"] .pro-download-label-short {
  display: none;
}

html[data-page-bundle="index"] .pro-download-chevron {
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .2s ease;
  opacity: .72;
}

html[data-page-bundle="index"] .pro-download-menu[open] .pro-download-chevron {
  transform: translateY(2px) rotate(225deg);
}

html[data-page-bundle="index"] .pro-download-panel {
  width: 270px;
  position: absolute;
  z-index: 85;
  top: calc(100% + 10px);
  right: 0;
  display: grid;
  gap: 4px;
  padding: 7px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  background: rgba(18,20,24,.96);
  box-shadow: 0 20px 55px rgba(0,0,0,.42);
  backdrop-filter: blur(22px);
}

html[data-page-bundle="index"] .pro-download-menu:not([open]) .pro-download-panel {
  display: none;
}

html[data-page-bundle="index"] .pro-download-panel a {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 12px;
  border-radius: 11px;
  color: #e8edf2;
  text-decoration: none;
  transition: background .18s ease, color .18s ease;
}

html[data-page-bundle="index"] .pro-download-panel a:hover {
  color: #fff;
  background: rgba(255,255,255,.08);
}

html[data-page-bundle="index"] .pro-download-panel strong,
html[data-page-bundle="index"] .pro-download-panel small {
  display: block;
}

html[data-page-bundle="index"] .pro-download-panel strong {
  font-size: 14px;
  font-weight: 680;
}

html[data-page-bundle="index"] .pro-download-panel small {
  margin-top: 4px;
  color: #939ca6;
  font-size: 12.5px;
}

html[data-page-bundle="index"][data-theme="light"] .pro-download-trigger {
  color: #30363d;
  border-color: rgba(42,47,54,.18);
  background: rgba(42,47,54,.045);
}

html[data-page-bundle="index"][data-theme="light"] .pro-download-trigger:hover,
html[data-page-bundle="index"][data-theme="light"] .pro-download-menu[open] .pro-download-trigger {
  background: rgba(42,47,54,.09);
}

html[data-page-bundle="index"][data-theme="light"] .pro-download-panel {
  border-color: rgba(42,47,54,.16);
  background: rgba(246,244,239,.97);
  box-shadow: 0 20px 50px rgba(47,43,37,.2);
}

html[data-page-bundle="index"][data-theme="light"] .pro-download-panel a {
  color: #20252b;
}

html[data-page-bundle="index"][data-theme="light"] .pro-download-panel a:hover {
  color: #11151a;
  background: rgba(42,47,54,.08);
}

html[data-page-bundle="index"][data-theme="light"] .pro-download-panel small {
  color: #68717a;
}

@media (max-width: 1500px) {
  html[data-page-bundle="index"] .pro-global-header { gap: 18px; }
  html[data-page-bundle="index"] .pro-global-nav { gap: 20px; }
  html[data-page-bundle="index"] .pro-download-label-long { display: none; }
  html[data-page-bundle="index"] .pro-download-label-short { display: inline; }
  html[data-page-bundle="index"] .pro-download-trigger { height: 40px; padding-inline: 11px; }
}

@media (max-width: 600px) {
  html[data-page-bundle="index"] .pro-download-panel {
    width: min(270px, calc(100vw - 24px));
  }
}

/* The shared four-corner desktop grid is emitted after the portrait rail rules.
   Restore the intended vertical content flow for swipeable product cards. */
@media (max-width: 760px) and (orientation: portrait) {
  html[data-page-bundle="index"] .product-rail .major > .product-body {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  html[data-page-bundle="index"] .product-rail .major .product-name,
  html[data-page-bundle="index"] .product-rail .major .product-desc,
  html[data-page-bundle="index"] .product-rail .major .card-actions,
  html[data-page-bundle="index"] .product-rail .major .card-bottom > .go {
    grid-area: auto;
  }

  html[data-page-bundle="index"] .product-rail .major .card-bottom {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  html[data-page-bundle="index"] .product-rail .major .card-actions {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }
}

/* Homepage utility replacements: inactive PRO Token preview and Partner Program. */
html[data-page-bundle="index"] .utility.token {
  --utility-image: url("assets/tile-pro-token-generated-v3.webp");
  --utility-image: image-set(url("assets/tile-pro-token-generated-v3.avif") type("image/avif"), url("assets/tile-pro-token-generated-v3.webp") type("image/webp"));
  cursor: default;
}

html[data-page-bundle="index"] .utility.partners {
  --utility-image: url("assets/tile-utility-developers-generated-v5.webp");
  --utility-image: image-set(url("assets/tile-utility-developers-generated-v5.avif") type("image/avif"), url("assets/tile-utility-developers-generated-v5.webp") type("image/webp"));
}

html[data-page-bundle="index"] .utility.token::after {
  background: linear-gradient(90deg, rgba(3,4,7,.91) 0%, rgba(3,4,7,.58) 48%, rgba(3,4,7,.18) 100%);
}

html[data-page-bundle="index"] .utility.token:hover,
html[data-page-bundle="index"] .utility.token:hover::before,
html[data-page-bundle="index"] .utility.token:hover .utility-copy {
  transform: none;
}

html[data-page-bundle="index"] .utility-status {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  padding: 5px 8px;
  border: 1px solid rgba(208,178,255,.25);
  border-radius: 999px;
  color: rgba(235,224,255,.82);
  background: rgba(79,52,113,.2);
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .08em;
  text-transform: uppercase;
}

html[data-page-bundle="index"][data-theme="light"] .utility-status {
  color: #5d3d7e;
  border-color: rgba(91,57,126,.25);
  background: rgba(149,104,193,.14);
}
