/* v130: purple Discord CTA and section-based navigation. */
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip-link { position: fixed; top: -100px; left: 20px; z-index: 200; padding: 14px 20px; background: #211536; border-radius: 10px; }
.skip-link:focus { top: 12px; }
.site-header { gap: 24px; }
.main-nav { gap: 24px; margin-left: auto; }
.main-nav a, .nav-group summary { font-size: 14px; }
.header-actions { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.header-actions .nav-contact { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin: 0; padding: 10px 16px; font-size: 14px; }
.discord-cta { position: relative; isolation: isolate; display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; padding: 11px 18px; overflow: hidden; border: 1px solid #c3a0ff; border-radius: 12px; color: #fff !important; font-size: 14px; font-weight: 750; background: linear-gradient(115deg, #6233ce, #8c43dc 55%, #6438c9); box-shadow: 0 0 22px #9c5bff40, inset 0 1px 0 #ffffff40; transition: transform .2s, box-shadow .2s; }
.discord-cta svg { width: 21px; height: 21px; flex-shrink: 0; }
.discord-cta::before { position: absolute; z-index: -1; inset: -80% -50%; content: ''; background: linear-gradient(115deg, transparent 40%, #ffffff40 49%, transparent 57%); transform: translateX(-75%); animation: discord-shimmer 5s ease-in-out infinite; pointer-events: none; }
.discord-sparkles { position: absolute; top: 2px; right: 5px; font-size: 12px; color: #fff4ff; text-shadow: -37px 29px 2px #e8cdff, -84px 0 3px #fff; animation: discord-twinkle 3s ease-in-out infinite; pointer-events: none; }
.discord-cta:hover { transform: translateY(-2px); box-shadow: 0 6px 30px #a36aff80, inset 0 1px 0 #ffffff66; }
a:focus-visible, summary:focus-visible, select:focus-visible, button:focus-visible { outline: 2px solid #d3b3ff; outline-offset: 4px; }
@keyframes discord-shimmer { 0%, 55% { transform: translateX(-75%); } 85%, 100% { transform: translateX(75%); } }
@keyframes discord-twinkle { 0%, 100% { opacity: .45; transform: scale(.8); } 50% { opacity: 1; transform: scale(1.15); } }
/* Product-first layout: one visible navigation, four clear entry points. */
.site-redesign { --max-width: 1320px; background: #090c12; }
.site-redesign .site-header, .site-redesign .site-header.scrolled { top: 0 !important; width: 100% !important; height: 80px !important; padding: 0 32px !important; border: 0 !important; border-bottom: 1px solid #ffffff12 !important; border-radius: 0 !important; background: #0c1019 !important; backdrop-filter: none !important; box-shadow: none !important; gap: 20px; }
.site-redesign .site-header .brand-name { font-size: 14px; letter-spacing: .12em; }
.site-redesign .header-actions { margin-left: auto; }
.site-redesign .site-sidebar { position: fixed; z-index: 70; top: 80px; bottom: 0; left: 0; display: block; width: 228px; height: auto; max-height: none; margin: 0; padding: 24px 16px; overflow-y: auto; border: 0; border-right: 1px solid #ffffff12; border-radius: 0; background: #0c1019; opacity: 1; visibility: visible; transform: none; scrollbar-width: thin; }
.site-redesign .site-sidebar .sidebar-group { width: 100%; min-width: 0; margin: 0 0 20px; text-align: left; }
.site-redesign .site-sidebar .sidebar-group + .sidebar-group { padding-top: 20px; border-top: 1px solid #ffffff2b; }
.site-redesign .site-sidebar .sidebar-group > p { padding: 5px 10px; margin: 0 0 12px; border-left: 2px solid #e9a76b; color: #edb989; background: linear-gradient(90deg, #e5823610, transparent); font-size: 11px; line-height: 1.5; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.site-redesign .site-sidebar a { display: flex; align-items: center; min-height: 42px; width: 100%; margin: 3px 0; padding: 9px 12px; border: 1px solid transparent; border-radius: 8px; color: #bbc3d3; font: 400 14px/1.4 'Segoe UI', Arial, sans-serif; transition: color .15s, background .15s; }
.site-redesign .site-sidebar a::after { display: none; }
.site-redesign .site-sidebar a:hover { color: #fff; background: #ffffff09; }
.site-redesign .site-sidebar a[aria-current] { border-color: #e5823638; color: #ffc388; background: #e5823614; font-weight: 650; }
.site-redesign .site-sidebar .nav-ranking-link { font-weight: 900; }
.site-redesign .site-sidebar .nav-ranking-link:not([aria-current]) { color: #d0f7db; text-shadow: 0 0 12px #9ee9b33d; }
.site-redesign .site-sidebar .sidebar-all { color: #8a97af; border-top: 1px solid #ffffff14; border-radius: 0; padding-top: 18px; }
.site-redesign > main, .site-redesign > .site-footer { margin-left: 228px; width: calc(100% - 228px); }
.site-redesign > main { min-height: calc(100vh - 150px); padding-top: 80px; }
.site-redesign .section-shell { width: min(calc(100% - 64px), var(--max-width)); margin-inline: auto; }
.site-redesign > .site-footer { padding: 28px 32px; min-height: 100px; font-size: 12px; }
.site-redesign .site-footer .brand-name { font-size: 12px; }
.site-redesign .nav-toggle { display: none; }
.site-redesign .ambient-rays, .site-redesign .ambient-dust, .site-redesign .cursor-glow { display: none; }
.product-home { padding-top: 44px; padding-bottom: 40px; }
.home-heading { max-width: 780px; margin-bottom: 30px; }
.home-heading .eyebrow { margin: 0 0 12px; color: #edaa6f; font-size: 12px; letter-spacing: .13em; }
.home-heading h1 { margin: 0 0 14px; font-size: clamp(34px, 3.6vw, 56px); line-height: 1.08; letter-spacing: -.045em; font-weight: 650; }
.home-heading h1 em { color: #ffc08a; font-style: normal; }
.home-heading > p:last-child { max-width: 650px; margin: 0; color: #a8b2c5; font-size: 16px; line-height: 1.6; }
.product-overview { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.product-entry { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #ffffff1c; border-radius: 15px; background: #111722; transition: border-color .2s, transform .2s, box-shadow .2s; }
.product-entry:hover { transform: translateY(-4px); border-color: #e5823680; box-shadow: 0 14px 36px #0004; }
.product-entry.jtx-v3 { border-color: #e5823670; }
.product-entry-image { position: relative; height: 156px; overflow: hidden; border-bottom: 1px solid #ffffff14; background: #161d2a; }
.product-entry-image img { width: 100%; height: 100%; object-fit: cover; }
.jtx-prime .product-entry-image { background: radial-gradient(ellipse at center, #513821, #141923 75%); }
.jtx-prime .product-entry-image img { object-fit: contain; padding: 12px; }
.product-state { position: absolute; bottom: 10px; left: 10px; padding: 5px 8px; border: 1px solid #ffffff26; border-radius: 6px; background: #090c12e8; color: #e0e6f1; font-size: 12px; line-height: 1.3; }
.jtx-dx11 .product-state { color: #a2e5bb; }
.product-entry-copy { display: flex; flex: 1; flex-direction: column; padding: 20px; }
.product-category { margin: 0 0 10px; color: #e9a76b; font-size: 12px; }
.product-entry h2 { margin: 0 0 12px; font-size: 23px; letter-spacing: -.025em; line-height: 1.15; }
.product-entry-copy > p:not(.product-category) { margin: 0 0 24px; color: #aeb9cc; font-size: 15px; line-height: 1.6; }
.product-entry-action { display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 44px; margin-top: auto; padding-top: 14px; border-top: 1px solid #ffffff16; color: #f4d2ae; font-size: 14px; font-weight: 650; }
.lineup-refresh .product-entry.jtx-prime { border-color: #77c99d80; box-shadow: 0 0 22px #77c99d12; }
.lineup-refresh .product-entry.jtx-v3 { border-color: #e5a46d80; }
.lineup-refresh .product-entry-image { height: 174px; isolation: isolate; }
.lineup-refresh .product-entry-image img, .lineup-refresh .jtx-prime .product-entry-image img { width: 100%; height: 100%; object-fit: cover; padding: 0; transition: transform .45s ease; }
.lineup-refresh .product-entry:hover .product-entry-image img { transform: scale(1.055); }
.lineup-refresh .product-entry-image::after { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, #070b1375, transparent 45%, #070b13a8); }
.lineup-refresh .product-image-title { position: absolute; z-index: 1; top: 14px; left: 14px; color: #fff0df; font-family: 'JTX DIN','Bahnschrift','Segoe UI',sans-serif; font-size: clamp(17px, 1.7vw, 23px); font-weight: 800; line-height: 1.05; letter-spacing: .035em; text-shadow: 0 2px 12px #000d; }
.lineup-refresh .jtx-prime .product-image-title, .lineup-refresh .jtx-v2 .product-image-title { left: auto; right: 14px; text-align: right; }
.lineup-refresh .jtx-prime .product-image-title { color: #d6ffe5; }
.lineup-refresh .jtx-dx11 .product-entry-image img { object-position: 36% center; }
.lineup-refresh .jtx-dx11 .product-entry-image::after { background: linear-gradient(90deg,#070b1340,#070b1388 58%,#070b13dd),linear-gradient(0deg,#070b138c,transparent 65%); }
.lineup-refresh .jtx-dx11 .product-image-title { left: auto; right: 14px; text-align: right; color: #baf4d0; }
.lineup-refresh .product-image-disclaimer { position: absolute; z-index: 1; right: 10px; bottom: 10px; max-width: 52%; padding: 5px 7px; border: 1px solid #ffffff30; border-radius: 6px; background: #090c12db; color: #d9e1ee; font-size: 10px; line-height: 1.3; text-align: right; }
.lineup-refresh .product-state { z-index: 1; }
.lineup-refresh .product-entry-copy { min-height: 298px; }
.lineup-refresh .product-entry-copy > p:not(.product-category) { margin-bottom: 13px; }
.lineup-refresh .product-entry-action { margin-top: auto; }
.lineup-secondary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 16px; }
.lineup-secondary > a { display: flex; align-items: center; gap: 12px; min-height: 76px; padding: 14px 17px; border: 1px solid #ffffff24; border-radius: 13px; background: linear-gradient(110deg,#172332d9,#101721e8); transition: border-color .2s, transform .2s, box-shadow .2s; }
.lineup-secondary > a:hover { transform: translateY(-2px); border-color: #e5a46d90; box-shadow: 0 10px 25px #0005; }
.lineup-secondary > a:first-child { border-color: #70cfa255; background: linear-gradient(110deg,#163326dd,#101c1be8); }
.lineup-secondary > a:first-child:hover { border-color: #80e6af; box-shadow: 0 10px 25px #5bcf8a1b; }
.lineup-secondary > a:nth-child(2) { border-color: #75a9e055; background: linear-gradient(110deg,#172d45dd,#111923e8); }
.lineup-secondary > a:nth-child(2):hover { border-color: #8ec7ff; box-shadow: 0 10px 25px #5ba1e01b; }
.lineup-secondary > a:last-child { border-color: #e5a46d55; background: linear-gradient(110deg,#362519dd,#1c1920e8); }
.lineup-secondary > a:last-child:hover { border-color: #f8bf87; box-shadow: 0 10px 25px #e5a46d1b; }
.lineup-secondary-icon { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border: 1px solid #ffffff35; border-radius: 10px; color: #c4f4d5; background: #ffffff0d; font-size: 19px; font-weight: 800; }
.lineup-secondary > a:nth-child(2) .lineup-secondary-icon { color: #b7d8ff; }
.lineup-secondary > a:last-child .lineup-secondary-icon { color: #ffd5a9; }
.lineup-secondary > a > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.lineup-secondary strong { color: #f4f7ff; font-size: 14px; }
.lineup-secondary small { color: #aeb9cc; font-size: 12px; line-height: 1.4; }
.lineup-secondary > a > span:last-child { margin-left: auto; color: #d5e9f8; }
.lineup-refresh .product-overview { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.lineup-refresh .product-entry-copy { padding: 20px; }
.lineup-refresh .product-entry h2 { font-size: 23px; }
.lineup-refresh .product-entry-copy > p:not(.product-category) { font-size: 15px; line-height: 1.6; }
.lineup-refresh .lineup-legacy { border-color: #e5a46d55; background: linear-gradient(110deg,#171c23,#111722); }
.lineup-refresh .lineup-legacy .product-entry-image img { object-position: 55% center; }
.lineup-refresh .lineup-legacy .product-image-title { color: #fff0da; }
.lineup-refresh .lineup-wide { display: grid; grid-template-columns: minmax(0,42%) minmax(0,1fr); min-height: 226px; margin-top: 16px; border-color: #78cda155; background: linear-gradient(110deg,#11241e,#111722); }
.lineup-refresh .lineup-wide .product-entry-image { height: 100%; min-height: 226px; border-right: 1px solid #ffffff19; border-bottom: 0; }
.lineup-refresh .lineup-wide .product-entry-image img { object-position: left top; transform: translateY(-10px) scale(1.2); transform-origin: left top; }
.lineup-refresh .lineup-wide:hover .product-entry-image img { transform: translateY(-10px) scale(1.24); }
.lineup-refresh .lineup-wide .product-entry-copy { min-height: 0; padding: 24px 28px; }
.lineup-refresh .lineup-wide .product-entry-copy > p:not(.product-category) { max-width: 580px; }
@media(max-width:1200px) { .lineup-refresh .product-overview { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:900px) { .lineup-refresh .product-overview { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:900px) { .lineup-secondary { grid-template-columns: minmax(0,1fr); } }
@media(max-width:650px) { .lineup-refresh .product-overview { grid-template-columns: minmax(0,1fr); } .lineup-refresh .product-entry-image { height: auto; aspect-ratio: 16/8; } .lineup-refresh .product-entry-copy { min-height: 0; } .lineup-refresh .lineup-wide { grid-template-columns: minmax(0,1fr); } .lineup-refresh .lineup-wide .product-entry-image { height: auto; min-height: 0; border-right: 0; border-bottom: 1px solid #ffffff19; } .lineup-refresh .lineup-wide .product-entry-copy { padding: 20px; } }

/* Prime family and partner directory */
#clients { background: radial-gradient(ellipse at 50% 0,#22332842,transparent 42%),linear-gradient(180deg,#0c1118,#080c12 78%); }
#clients .section-heading { margin-bottom: 24px; }
#clients .clients-prime-family { position: relative; overflow: hidden; margin: 0 0 42px; padding: 27px; border: 1px solid #78cda174; border-radius: 20px; background: linear-gradient(125deg,#193126d9,#111a20ef 55%,#141720ee); box-shadow: 0 14px 42px #0004,0 0 32px #78cda110; }
#clients .clients-prime-family::before { content: ''; position: absolute; inset: 0 0 auto; height: 2px; background: linear-gradient(90deg,#7be3a5,#e5a46d,transparent); }
#clients .clients-prime-intro { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 23px; }
#clients .clients-prime-eyebrow { color: #94e7b7; font-size: 11px; font-weight: 800; letter-spacing: .15em; }
#clients .clients-prime-intro h3 { margin: 7px 0 0; color: #f4f7ff; font-family: 'JTX DIN','Bahnschrift','Segoe UI',sans-serif; font-size: clamp(25px,2.4vw,34px); letter-spacing: -.025em; }
#clients .clients-prime-intro p { max-width: 480px; margin: 0; color: #b5c4ca; font-size: 14px; line-height: 1.6; }
#clients .clients-prime-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
#clients .clients-prime-grid article { position: relative; min-height: 150px; padding: 18px; border: 1px solid #ffffff20; border-radius: 13px; background: #0d141aaf; }
#clients .clients-prime-count { position: absolute; top: 15px; right: 15px; display: grid; place-items: center; min-width: 28px; height: 28px; padding: 0 5px; border: 1px solid #ffffff29; border-radius: 8px; color: #c9d5d7; background: #ffffff0a; font-size: 11px; font-weight: 700; }
#clients .clients-prime-grid strong { display: block; padding-right: 32px; color: #f4f7ff; font-size: 17px; line-height: 1.25; }
#clients .clients-prime-grid p { margin: 25px 0 0; color: #91a5a5; font-size: 13px; line-height: 1.5; }
#clients .clients-prime-grid ul { margin: 20px 0 0; padding: 0; list-style: none; }
#clients .clients-prime-grid li { display: flex; align-items: center; flex-wrap: wrap; gap: 5px 8px; padding: 11px 12px; border: 1px solid #78cda14f; border-radius: 9px; background: #78cda10d; color: #e6f7ed; font-weight: 700; }
#clients .clients-prime-grid li + li { margin-top: 8px; }
#clients .clients-prime-grid .clients-prime-partner-name { white-space: nowrap; }
#clients .clients-prime-grid .clients-prime-license-note { flex-basis: 100%; color: #adc5b7; font-size: 11px; font-weight: 400; }
#clients .clients-list-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 18px; padding-bottom: 17px; border-bottom: 1px solid #e5a46d3d; }
#clients .clients-list-heading span { color: #e5a46d; font-size: 11px; font-weight: 800; letter-spacing: .13em; }
#clients .clients-list-heading h3 { margin: 4px 0 0; color: #f4f7ff; font-family: 'JTX DIN','Bahnschrift','Segoe UI',sans-serif; font-size: clamp(24px,2vw,30px); }
#clients .clients-list-heading p { max-width: 450px; margin: 0; color: #aeb9c9; font-size: 13px; line-height: 1.5; }
#clients .clients-summary { margin: 0 0 20px; border-color: #ffffff23; background: #121923b8; }
#clients .clients-summary strong { color: #f0d0ae; }
#clients .clients-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
#clients .client-group { padding: 21px; border-color: #ffffff20; border-radius: 15px; background: linear-gradient(145deg,#171e29ee,#0e141dee); }
#clients .client-group:nth-child(-n+2) { grid-column: span 2; border-color: #e5a46d5c; background: linear-gradient(115deg,#292014e8,#111924ee 70%); }
#clients .client-group:nth-child(-n+2) .client-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 16px; }
#clients .client-group-head { margin-bottom: 13px; padding-bottom: 13px; }
#clients .client-group h3 { font-size: 20px; }
#clients .client-list li { min-height: 35px; padding-top: 6px; padding-bottom: 6px; }
@media(max-width:1050px) { #clients .clients-prime-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } #clients .clients-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } #clients .client-group:nth-child(-n+2) { grid-column: span 1; } #clients .client-group:nth-child(-n+2) .client-list { grid-template-columns: minmax(0,1fr); } }
@media(max-width:650px) { #clients .clients-prime-family { padding: 20px 16px; } #clients .clients-prime-intro,#clients .clients-list-heading { align-items: start; flex-direction: column; gap: 10px; } #clients .clients-prime-grid,#clients .clients-grid { grid-template-columns: minmax(0,1fr); } #clients .clients-prime-grid article { min-height: 120px; } #clients .clients-summary { margin: 0 0 18px; } }
.home-bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding: 22px 0; font-size: 14px; }
.home-bottom p { margin: 0; color: #96a3b9; line-height: 1.8; }
.home-bottom strong { color: #e7edf6; }
.home-bottom p span { margin: 0 12px; color: #445065; }
.home-bottom > a { color: #e9b581; }
.home-shortcuts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #ffffff16; padding-top: 22px; gap: 22px; }
.home-shortcuts a { padding: 10px 0; }
.home-shortcuts strong { display: block; margin-bottom: 7px; font-size: 15px; font-weight: 600; }
.home-shortcuts span { color: #95a3ba; font-size: 14px; line-height: 1.5; }
.page-breadcrumb { display: flex; align-items: center; gap: 12px; padding-top: 26px; padding-bottom: 16px; font-size: 14px; }
.page-breadcrumb a { color: #99a7bd; }
.page-breadcrumb > span:not(.current-page) { color: #506079; }
.current-page { color: #f4d2ae; }
.site-redesign .section-space { padding-top: 44px !important; padding-bottom: 52px !important; }
.site-redesign .section-heading { gap: 24px; margin-bottom: 28px; }
.site-redesign .section-heading h2, .site-redesign .about h2, .site-redesign .contact h2, .site-redesign .worldwide h2 { font-size: clamp(30px, 3.1vw, 44px); line-height: 1.15; }
.site-redesign .section-heading h2 br { display: none; }
.site-redesign .section-heading > p, .site-redesign .highlight-copy, .site-redesign .highlight-points li, .site-redesign .addon-card p, .site-redesign .system-row p { font-size: 16px; line-height: 1.7; }
.site-redesign .highlight-status, .site-redesign .card-contact-link { font-size: 14px; }
.product-detail-view #highlights { padding-top: 12px !important; }
.product-detail-view #highlights > .section-shell > .section-heading { display: none; }
.product-detail-view .highlight-grid { display: block !important; }
.product-detail-view .highlight-grid > [hidden] { display: none !important; }
.product-detail-view .highlight-card { margin: 0; }
.product-detail-view .highlight-head h3 { font-size: clamp(26px, 3vw, 40px); }
.product-detail-view .highlight-card .mobile-detail-toggle { display: none; }
.product-detail-view .highlight-card .highlight-copy { display: block !important; overflow: visible !important; -webkit-line-clamp: unset !important; }
.product-detail-view .highlight-card .highlight-points, .product-detail-view .highlight-card .prime-grid { display: grid !important; }
.site-redesign main [id] { scroll-margin-top: 110px; }
.mobile-dock { display: none; }
.nav-backdrop { position: fixed; inset: 80px 0 0; z-index: 65; padding: 0; border: 0; background: #02050ab8; }
@media (max-width: 1350px) and (min-width: 1101px) {
    .site-redesign .site-sidebar { width: 204px; padding-inline: 12px; }
    .site-redesign > main, .site-redesign > .site-footer { margin-left: 204px; width: calc(100% - 204px); }
    .site-redesign .section-shell { width: calc(100% - 40px); }
    .product-overview { gap: 12px; }
    .product-entry-copy { padding: 16px; }
    .product-entry h2 { font-size: 20px; }
    .product-entry-image { height: 138px; }
}
@media (max-width: 1100px) {
    .site-redesign .site-header, .site-redesign .site-header.scrolled { height: 72px !important; padding: 0 20px !important; }
    .site-redesign .nav-toggle { display: inline-flex; align-items: center; justify-content: center; order: 3; width: auto; min-width: 54px; min-height: 44px; padding: 8px; border: 1px solid #ffffff29; border-radius: 9px; background: #ffffff06; color: #eef2f9; font-size: 14px; }
    .site-redesign .site-sidebar { top: 72px; bottom: 65px; width: 270px; opacity: 0; visibility: hidden; transform: translateX(-100%); transition: transform .2s, visibility .2s, opacity .2s; }
    .site-redesign .site-sidebar.open { opacity: 1; visibility: visible; transform: none; }
    .site-redesign .site-sidebar a { min-height: 44px; font-size: 15px; }
    .site-redesign > main, .site-redesign > .site-footer { width: 100%; margin-left: 0; }
    .site-redesign > main { padding-top: 72px; }
    .site-redesign > .site-footer { padding-bottom: 96px; }
    .site-redesign .section-shell { width: calc(100% - 40px); }
    .product-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .product-entry-image { height: 180px; }
    .home-heading h1 { font-size: 44px; }
    .home-heading h1 br { display: none; }
    .mobile-dock { position: fixed; bottom: 0; left: 0; right: 0; z-index: 85; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); padding: 7px 10px max(7px, env(safe-area-inset-bottom)); border-top: 1px solid #ffffff20; background: #0c1019; }
    .mobile-dock a, .mobile-dock button { display: flex; justify-content: center; align-items: center; min-height: 44px; padding: 6px; border: 0; border-radius: 8px; background: transparent; color: #b8c4d7; font-size: 14px; }
    .mobile-dock [aria-current], .mobile-dock [aria-expanded="true"] { color: #ffc388; background: #e5823619; }
    .nav-backdrop { top: 72px; bottom: 58px; }
    .navigation-open { overflow: hidden; }
}
@media (max-width: 600px) {
    .site-redesign .site-header, .site-redesign .site-header.scrolled { padding: 0 12px !important; gap: 8px; }
    .site-redesign .site-header .brand-name { display: none; }
    .site-redesign .header-actions { gap: 6px; }
    .site-redesign .header-actions .nav-contact { padding: 8px; }
    .discord-cta { padding: 9px 12px; gap: 7px; }
    .site-redesign .section-shell { width: calc(100% - 32px); }
    .product-home { padding-top: 28px; }
    .home-heading { margin-bottom: 22px; }
    .home-heading h1 { font-size: 34px; }
    .home-heading .eyebrow { font-size: 11px; }
    .product-overview { gap: 12px; }
    .product-entry-image { height: 115px; }
    .product-entry-copy { padding: 14px 12px; }
    .product-entry h2 { font-size: 20px; }
    .product-entry-copy > p:not(.product-category) { font-size: 14px; margin-bottom: 14px; }
    .product-category { font-size: 11px; }
    .product-state { font-size: 11px; left: 6px; bottom: 6px; padding: 4px 6px; }
    .product-entry-action { font-size: 14px; }
    .home-bottom p { font-size: 13px; }
    .home-bottom p span { margin-inline: 5px; }
    .home-shortcuts { grid-template-columns: 1fr; gap: 6px; }
    .home-shortcuts a { border-bottom: 1px solid #ffffff12; padding-block: 14px; }
    .site-redesign > .site-footer { padding-inline: 16px; }
    .site-redesign .section-space { padding-top: 26px !important; }
}
@media (max-width: 350px) { .product-overview { grid-template-columns: 1fr; } .product-entry-image { height: 160px; } }
@media (prefers-reduced-motion: reduce) { .discord-cta::before, .discord-sparkles { animation: none; } .product-entry, .site-redesign .site-sidebar { transition: none; } }
/* v132: original JTX story paired with the product-first homepage. */
.story-hero { display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: 38px; padding: 10px 0 42px; }
.story-hero-copy > .eyebrow { color: #e8aa72; font-size: 12px; letter-spacing: .12em; margin: 0 0 18px; }
.story-hero h1 { margin: 0 0 22px; font-size: clamp(38px, 4vw, 62px); line-height: 1.06; letter-spacing: -.045em; font-weight: 650; }
.story-hero h1 em { color: #ffc08a; font-style: normal; }
.story-hero .hero-story { max-width: none; margin: 0; padding: 0; }
.story-hero .hero-story p { display: block !important; color: #aeb9cb; font-size: 16px; line-height: 1.7; margin: 0 0 16px; }
.story-hero .hero-story .hero-motto { color: #f3d1ae; font-size: 18px; line-height: 1.5; margin: 22px 0 12px; }
.story-hero .hero-story-link { display: inline-flex; font-size: 14px; margin: 0; }
.story-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.story-hero-actions .button { min-height: 46px; padding: 12px 17px; font-size: 14px; }
.story-hero-visual { position: relative; display: block; align-self: stretch; min-height: 380px; max-height: 600px; overflow: hidden; border: 1px solid #e5823640; border-radius: 20px; background: #161b25; box-shadow: 0 18px 60px #0004; }
.story-hero-visual > img { width: 100%; height: 100%; object-fit: cover; }
.story-hero-visual::after { position: absolute; inset: 35% 0 0; content: ''; background: linear-gradient(transparent, #060a12ee); pointer-events: none; }
.story-visual-caption { position: absolute; left: 26px; bottom: 26px; right: 26px; z-index: 1; display: grid; gap: 10px; }
.story-visual-caption > span { color: #ffd0a0; font-size: 12px; letter-spacing: .14em; }
.story-visual-caption strong { font-size: clamp(26px, 2.6vw, 38px); font-weight: 600; line-height: 1.15; }
.story-visual-caption small { display: flex; justify-content: space-between; color: #d0d8e7; font-size: 14px; }
.lineup-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding-top: 26px; margin-bottom: 24px; border-top: 1px solid #ffffff16; }
.lineup-heading .eyebrow { color: #dfa46f; font-size: 12px; margin-bottom: 8px; }
.lineup-heading h2 { font-size: clamp(25px, 2.5vw, 34px); margin: 0; letter-spacing: -.025em; }
.lineup-heading > a { padding: 10px 0; color: #e9b581; font-size: 14px; }
.catalog-collections { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 32px; padding: 16px 18px; border: 1px solid #ffffff18; border-radius: 12px; background: #101621; font-size: 14px; }
.catalog-collections > span { margin-right: auto; color: #aeb9cc; }
.catalog-collections > a { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 14px; border: 1px solid #e5823638; border-radius: 8px; color: #f4c99e; }
.catalog-group-heading { grid-column: 1 / -1; padding: 22px 0 10px; border-top: 1px solid #ffffff16; }
.catalog-group-heading:first-child { border: 0; padding-top: 0; }
.catalog-group-heading h3 { margin: 10px 0 8px; font-size: 27px; font-weight: 600; letter-spacing: -.02em; }
.catalog-group-heading p { margin: 0; color: #a5b1c7; font-size: 16px; line-height: 1.6; }
.catalog-status { display: inline-flex; align-items: center; gap: 8px; color: #e2b486; font-size: 12px; }
.catalog-status::before { width: 6px; height: 6px; border-radius: 50%; background: currentColor; content: ''; }
.catalog-status-available { color: #a2e5bb; }
.catalog-status-exclusive { color: #b5bbcf; }
.product-detail-view .catalog-group-heading, .product-detail-view .catalog-collections { display: none !important; }
@media (max-width: 1250px) { .story-hero { gap: 26px; grid-template-columns: 1.2fr 1fr; } .story-hero h1 { font-size: 44px; } }
@media (max-width: 760px) {
    .story-hero { grid-template-columns: 1fr; gap: 24px; padding-bottom: 30px; }
    .story-hero h1 { font-size: 42px; }
    .story-hero-visual { min-height: 0; height: 280px; }
    .story-visual-caption { left: 20px; bottom: 20px; right: 20px; }
    .story-hero-actions .button { width: auto; flex: 1 1 180px; }
    .lineup-heading { align-items: start; flex-direction: column; gap: 8px; }
    .catalog-collections { gap: 8px; padding: 14px; }
    .catalog-collections > span { width: 100%; }
    .catalog-collections > a { flex: 1; }
}
/* v133: a clearer marketing hierarchy and comfortable touch layouts. */
.product-home { background: radial-gradient(ellipse at 75% 8%, #e5823609, transparent 48%); }
.story-hero { gap: 40px; padding-bottom: 30px; }
.story-hero-copy { min-width: 0; }
.story-hero .hero-story p { max-width: 62ch; }
.implementation-note { margin: 14px 0 0; max-width: 52ch; color: #8e9db3; font-size: 14px; line-height: 1.6; }
.story-hero-visual { min-height: 440px; }
.home-bottom { padding: 22px 24px; margin-bottom: 32px; border: 1px solid #ffffff16; border-radius: 12px; background: #111722; }
.home-bottom strong { font-size: 19px; }
.lineup-heading { border-top: 0; padding-top: 8px; }
.product-entry-copy > p:not(.product-category) { font-size: 16px; }
.project-invitation { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 38px; padding: 32px; border: 1px solid #e5823640; border-radius: 18px; background: linear-gradient(120deg, #e5823612, #121823 70%); }
.project-invitation > div { max-width: 620px; }
.project-invitation .eyebrow { font-size: 12px; color: #eab784; }
.project-invitation h2 { font-size: clamp(26px, 2.5vw, 36px); line-height: 1.2; margin: 10px 0 12px; }
.project-invitation p:not(.eyebrow) { color: #afbbcf; font-size: 16px; line-height: 1.65; margin: 0; }
.project-invitation > a { flex-shrink: 0; font-size: 14px; }
.site-redesign button, .site-redesign a { touch-action: manipulation; }
.site-redesign .highlight-card, .site-redesign .addon-card, .site-redesign .system-row { min-width: 0; }
@media (max-width: 1100px) {
    .site-redesign .site-sidebar { bottom: calc(64px + env(safe-area-inset-bottom)); overscroll-behavior: contain; }
    .site-redesign > .site-footer { padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
    .project-invitation { align-items: start; flex-direction: column; }
}
@media (max-width: 760px) {
    .story-hero { gap: 24px; }
    .story-hero h1 { font-size: clamp(34px, 8.7vw, 48px); }
    .story-hero-visual { min-height: 0; height: 260px; }
    .story-hero-copy > .eyebrow { font-size: 12px; line-height: 1.6; letter-spacing: .07em; }
    .story-hero .hero-story p { font-size: 16px; line-height: 1.65; }
    .story-hero .hero-story-link { min-height: 44px; align-items: center; }
    .story-hero-actions { margin-top: 16px; }
    .story-hero-actions .button { min-height: 50px; flex-basis: 100%; }
    .home-bottom { align-items: start; flex-direction: column; padding: 18px; gap: 10px; margin-bottom: 28px; }
    .home-bottom p { font-size: 14px; }
    .home-bottom > a { display: inline-flex; align-items: center; min-height: 44px; }
    .lineup-heading > a { display: inline-flex; align-items: center; min-height: 44px; }
    .product-state { max-width: calc(100% - 20px); white-space: normal; font-size: 12px; }
    .site-redesign .highlight-head { align-items: start; }
    .site-redesign .highlight-head > div { min-width: 0; }
    .site-redesign .highlight-head h3 { overflow-wrap: anywhere; font-size: 25px; }
    .site-redesign .highlight-status { display: inline-flex; white-space: normal; height: auto; font-size: 13px; line-height: 1.5; padding: 6px 10px; }
    .site-redesign .highlight-sub, .site-redesign .addon-compat, .site-redesign .performance-video-note { font-size: 14px; line-height: 1.6; }
    .site-redesign .highlight-bundle { grid-template-columns: 1fr; gap: 8px; }
    .site-redesign .highlight-actions .button, .site-redesign .card-contact-link, .site-redesign .mobile-collection-toggle, .site-redesign .mobile-detail-toggle { min-height: 48px; font-size: 14px; }
    .site-redesign .system-row { grid-template-columns: 32px minmax(0, 1fr); }
    .site-redesign .system-icon { display: none; }
    .site-redesign .contact-card { padding: 34px 20px; }
    .site-redesign .contact-card > p:not(.eyebrow), .site-redesign .about-copy > p:not(.eyebrow) { font-size: 16px; line-height: 1.7; }
    .project-invitation { padding: 24px; gap: 22px; }
    .project-invitation > a { width: 100%; white-space: normal; min-height: 50px; }
}
@media (max-width: 600px) {
    .product-overview { grid-template-columns: 1fr; gap: 18px; }
    .product-entry-image { height: auto; aspect-ratio: 16 / 8; }
    .product-entry-copy { padding: 20px; }
    .product-entry h2 { font-size: 26px; }
    .product-entry-copy > p:not(.product-category) { font-size: 16px; }
    .product-category { font-size: 13px; }
    .product-state { left: 12px; bottom: 12px; font-size: 13px; padding: 6px 9px; }
    .product-entry-action { min-height: 48px; font-size: 15px; }
    .home-bottom p span { margin-inline: 4px; }
    .home-bottom strong { font-size: 17px; }
    .mobile-dock a, .mobile-dock button { font-size: 13px; min-height: 48px; }
    .site-redesign .site-header, .site-redesign .site-header.scrolled { gap: 6px; }
    .site-redesign .site-header .brand-mark { width: 30px; height: 30px; }
    .site-redesign .nav-toggle { min-width: 48px; }
    .site-redesign .site-sidebar { width: min(290px, calc(100vw - 32px)); }
    .site-redesign .highlight-card .highlight-media { grid-template-columns: 1fr; }
}
/* v134: an open, brand-led introduction without a featured product visual. */
.story-hero.story-hero-open { display: block; position: relative; padding: 42px 24px 54px; text-align: center; }
.story-hero-open .story-hero-copy { max-width: 860px; margin-inline: auto; }
.story-hero-open h1 { font-size: clamp(44px, 5.2vw, 78px); line-height: 1.07; letter-spacing: -.045em; margin-bottom: 30px; }
.story-hero-open .hero-story { max-width: 720px; margin-inline: auto; }
.story-hero-open .hero-story p { max-width: none; margin-bottom: 18px; font-size: 17px; line-height: 1.8; }
.story-hero-open .hero-story .hero-motto { margin-top: 26px; margin-bottom: 8px; font-size: 21px; color: #f5cea6; }
.story-hero-open .story-hero-actions { justify-content: center; margin-top: 28px; }
.story-hero-open .implementation-note { max-width: none; margin: 16px auto 0; }
.product-entry.jtx-v3 { border-color: #ffffff1c; }
.product-entry.jtx-v3:hover { border-color: #e5823680; }
.product-preview-note { margin: 0; padding: 8px 12px; border-bottom: 1px solid #ffffff12; color: #aab6ca; font-size: 12px; line-height: 1.5; background: #0d131d; }
@media (max-width: 760px) {
    .story-hero.story-hero-open { padding: 22px 0 36px; }
    .story-hero-open h1 { font-size: clamp(37px, 8.8vw, 58px); margin-bottom: 24px; }
    .story-hero-open .hero-story p { font-size: 16px; line-height: 1.7; }
    .story-hero-open .hero-story .hero-motto { font-size: 19px; }
    .story-hero-open .story-hero-actions { margin-top: 20px; }
    .story-hero-open .implementation-note { max-width: 36ch; }
    .product-preview-note { font-size: 13px; }
}
/* v135: restore the original JTX landing composition within the new navigation. */
.site-redesign .restored-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; gap: clamp(28px, 3vw, 56px) !important; padding-top: 36px !important; padding-bottom: 64px !important; min-height: 0; }
.site-redesign .restored-hero .hero-content { padding-top: 22px !important; min-width: 0; }
.site-redesign .restored-hero h1 { font-size: clamp(54px, 5vw, 84px) !important; }
.site-redesign .restored-hero .hero-visual { width: 100%; min-width: 0; max-width: none; }
.site-redesign .restored-hero .visual-frame { width: 100%; }
.site-redesign .restored-hero .hero-story p { font-size: 16px; line-height: 1.75; }
.site-redesign .restored-hero .hero-motto { font-size: 18px; }
.site-redesign .restored-hero .hero-actions { flex-wrap: wrap; }
.site-redesign .restored-hero .hero-actions .button { font-size: 14px; min-height: 48px; padding-inline: 18px; }
.site-redesign .restored-hero .hero-custom-note { font-size: 14px; line-height: 1.6; }
.site-redesign .restored-hero .hero-proof span { font-size: 12px; }
.site-redesign .restored-hero .replace-note { font-size: 13px; line-height: 1.5; }
.site-redesign .product-home { background: none; padding-top: 38px; }
@media (min-width: 761px) and (max-width: 1100px) { .site-redesign .restored-hero h1 { font-size: clamp(48px, 6.5vw, 68px) !important; } }
@media (max-width: 760px) {
    .site-redesign .restored-hero { grid-template-columns: minmax(0, 1fr) !important; padding-top: 16px !important; padding-bottom: 32px !important; gap: 24px !important; }
    .site-redesign .restored-hero .hero-content { grid-column: 1 !important; padding: 24px 18px !important; width: 100%; }
    .site-redesign .restored-hero .hero-visual { grid-column: 1 !important; justify-self: stretch !important; }
    .site-redesign .restored-hero h1 { font-size: clamp(40px, 11.5vw, 68px) !important; }
    .site-redesign .restored-hero .hero-story p { display: block !important; font-size: 16px; line-height: 1.65; }
    .site-redesign .restored-hero .hero-story-link { display: inline-flex !important; align-items: center; min-height: 44px; }
    .site-redesign .restored-hero .hero-actions { display: grid; grid-template-columns: 1fr; }
    .site-redesign .restored-hero .hero-proof { gap: 10px; flex-wrap: wrap; }
    .site-redesign .restored-hero .hero-proof span { font-size: 11px; }
    .site-redesign .restored-hero .visual-frame img { aspect-ratio: 16 / 10; object-fit: cover; }
}
/* v138: DX11 performance results and implementation options. */
.dx11-performance-story { margin: 30px 0 22px; padding: 26px; border: 1px solid #e5823640; border-radius: 16px; background: linear-gradient(130deg, #e582360d, #111823); }
.dx11-performance-story .eyebrow { font-size: 12px; margin-bottom: 12px; color: #edb47e; }
.dx11-performance-story h4, .dx11-release-note h4 { margin: 0 0 14px; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.25; letter-spacing: -.02em; }
.dx11-performance-story > p:not(.eyebrow), .dx11-release-note p { color: #adb9cd; font-size: 16px; line-height: 1.7; }
.performance-results { display: grid; grid-template-columns: 1.2fr 1fr; gap: 14px; margin: 24px 0 18px; }
.performance-result { min-width: 0; padding: 20px; border: 1px solid #ffffff16; border-radius: 12px; background: #0a101a; }
.performance-result > span { display: block; color: #a5b4ca; font-size: 13px; line-height: 1.5; margin-bottom: 16px; }
.performance-result > strong { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; color: #ffd09e; font-size: clamp(26px, 2.7vw, 38px); line-height: 1.25; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.performance-result .fps-before { color: #9ba7bb; font-size: .72em; }
.performance-result .fps-arrow { color: #c18d5f; font-size: .7em; }
.performance-result small { font-size: .5em; letter-spacing: 0; }
.performance-result p { color: #90a0b8; font-size: 14px; line-height: 1.6; margin: 14px 0 0; }
.dx11-performance-story > .performance-conditions { margin: 0; font-size: 14px !important; font-style: italic; }
.dx11-release-note { margin: 24px 0; padding: 24px; border: 1px solid #ffffff22; border-radius: 14px; background: #131a26; }
.dx11-release-status { display: inline-block; color: #f1bf8e; font-size: 13px; line-height: 1.6; margin-bottom: 12px; }
.dx11-release-note strong { color: #e9eef7; }
.dx11-release-note .dx11-standalone-note { padding-top: 14px; border-top: 1px solid #ffffff14; font-size: 14px; }
.dx11-release-note .card-contact-link { display: inline-flex; align-items: center; min-height: 48px; }
@media (max-width: 760px) {
    .dx11-performance-story, .dx11-release-note { padding: 20px 16px; }
    .performance-results { grid-template-columns: 1fr; }
    .performance-result { padding: 18px; }
    .performance-result > strong { font-size: 30px; }
    .dx11-release-note .card-contact-link { font-size: 14px; line-height: 1.6; }
}
/* v139: two concise DX11 packages, both available. */
.dx11-packages { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 22px 0 18px; }
.dx11-package { min-width: 0; padding: 24px; border: 1px solid #ffffff24; border-radius: 14px; background: #111823; }
.dx11-package-prime { border-color: #e5823660; background: linear-gradient(135deg, #e5823612, #111823); }
.dx11-package-label { display: block; color: #e5b487; font-size: 13px; margin-bottom: 12px; }
.dx11-package h4 { margin: 0 0 18px; color: #f1f5fc; font-size: 23px; line-height: 1.3; letter-spacing: -.02em; }
.dx11-package ul { margin: 0; padding-left: 18px; color: #b8c4d7; font-size: 16px; line-height: 1.7; }
.dx11-package li + li { margin-top: 6px; }
.dx11-package li::marker { color: #e5a46d; }
.dx11-license-summary { padding: 18px 20px; border-left: 3px solid #e5a46d; background: #ffffff04; font-size: 15px; line-height: 1.65; }
.dx11-license-summary strong { color: #ead3bb; font-weight: 600; }
.dx11-license-summary p { color: #a9b7cd; margin: 5px 0 0; }
#jtx-dx11 .dx11-performance-story { padding: 20px; margin: 22px 0 18px; }
#jtx-dx11 .performance-results { margin-block: 16px; }
@media (max-width: 760px) {
    .dx11-packages { grid-template-columns: 1fr; gap: 12px; }
    .dx11-package { padding: 20px; }
    .dx11-package h4 { font-size: 22px; }
    .dx11-license-summary { padding: 16px; }
    #jtx-dx11 .dx11-performance-story { padding: 18px 14px; }
}
/* v140: DX11 demo uses the full card width, without cropping the performance overlay. */
#jtx-dx11 .highlight-media.dx11-demo { display: block; width: 100%; max-width: none; margin: 24px auto; }
#jtx-dx11 .dx11-demo .addon-preview { display: block; width: 100%; max-width: none; min-height: 0; margin: 0; padding: 0; overflow: hidden; aspect-ratio: 16 / 9; border: 1px solid #ffffff20; border-radius: 16px; background: #080c13; }
#jtx-dx11 .dx11-demo .addon-preview img, #jtx-dx11 .dx11-demo .addon-preview video { display: block; width: 100%; height: 100%; max-height: none; aspect-ratio: 16 / 9; object-fit: contain; object-position: center; transform: none; }
@media (max-width: 760px) {
    #jtx-dx11 .highlight-media.dx11-demo { margin-block: 20px; }
    #jtx-dx11 .dx11-demo .addon-preview { border-radius: 10px; }
}
/* v141: make licensing protection explicit and easy to scan. */
:is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary { border: 1px solid #e5a46d70; border-left: 4px solid #e5a46d; border-radius: 10px; background: linear-gradient(110deg, #e5823615, #141b27); padding: 22px; }
:is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary > strong { display: block; font-size: 19px; line-height: 1.4; color: #ffd3a6; }
:is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary b { font-weight: 600; color: #edf1f8; }
:is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary .license-contact-note { margin-top: 12px; font-size: 14px; color: #a9b7cd; }

/* Version media: medium video previews and uncropped v3 screenshots. */
.site-redesign .highlight-card .product-video-stack { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 22px; width: 100%; max-width: 1080px; margin: 28px auto; }
.site-redesign .highlight-card .product-video-stack .addon-preview { width: 100%; min-width: 0; margin: 0; aspect-ratio: 16 / 9; background: #080c13; border-radius: 14px; }
.site-redesign .highlight-card .product-video-stack .addon-preview img,
.site-redesign .highlight-card .product-video-stack .addon-preview video { display: block; width: 100%; height: 100%; max-height: none; object-fit: contain; transform: none; }
.product-media-heading { margin: 30px 0 16px; font-size: 22px; color: #f1f5fc; }
.site-redesign .highlight-card .product-screenshot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.site-redesign .highlight-card .product-screenshot-grid .addon-preview:last-child { grid-column: 1 / -1; }
.site-redesign .highlight-card .product-screenshot-grid img { width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; transform: none; }
@media (max-width: 760px) {
    .site-redesign .highlight-card .product-video-stack { grid-template-columns: minmax(0, 1fr); max-width: 560px; gap: 16px; margin-block: 20px; }
    .site-redesign .highlight-card .product-screenshot-grid { grid-template-columns: minmax(0, 1fr); }
}

/* v143: available Prime Performance package. */
.site-redesign .prime-tier.prime-tier-available { border: 1px solid rgba(112, 207, 153, .48); background: linear-gradient(135deg, rgba(85, 174, 123, .10), rgba(15, 22, 29, .96) 75%); box-shadow: 0 0 24px rgba(90, 190, 133, .08), inset 0 0 18px rgba(90, 190, 133, .035); }
.prime-available-status { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 14px; padding: 5px 10px; border: 1px solid rgba(112, 207, 153, .28); border-radius: 999px; background: rgba(85, 174, 123, .10); color: #a9dfbd; font-size: 12px; font-weight: 600; letter-spacing: .04em; }
.prime-available-status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #8bd5a7; box-shadow: 0 0 9px rgba(112, 207, 153, .35); }

/* Dedicated video collections, separated from the product description. */
.product-video-section { margin: 48px 0 36px; padding: 30px 24px 24px; border: 1px solid rgba(255, 255, 255, .09); border-top-color: rgba(229, 164, 109, .32); border-radius: 18px; background: linear-gradient(150deg, rgba(229, 130, 54, .045), rgba(7, 12, 20, .65) 55%); }
.product-video-heading { max-width: 1080px; margin: 0 auto 24px; }
.product-video-kicker { display: block; margin-bottom: 10px; color: #d6a67e; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.product-video-heading h4 { margin: 0 0 10px; color: #f1f5fc; font-size: clamp(22px, 2.4vw, 28px); line-height: 1.25; }
.product-video-heading p { margin: 0; color: #a9b7cd; font-size: 14px; line-height: 1.6; }
.site-redesign .highlight-card .product-video-section .product-video-stack { margin-block: 0; }
@media (max-width: 760px) {
 .product-video-section { margin: 32px 0 28px; padding: 22px 12px 12px; border-radius: 14px; }
 .product-video-heading { margin-bottom: 20px; }
 .product-video-heading p { font-size: 13px; }
}
/* Keep the existing tint and layering over the moving background. */
.page-bg { overflow: hidden; background-image: none; }
.page-bg-video { display: block; width: 100%; height: 100%; object-fit: cover; }
.page-bg::after { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 18% 14%, rgba(255, 212, 151, .16), transparent 26%), linear-gradient(180deg, rgba(4, 6, 10, .28) 0%, rgba(4, 6, 10, .415) 28%, rgba(4, 6, 10, .595) 100%); }
.render-paused, .render-paused::before, .render-paused::after,
.render-paused *, .render-paused *::before, .render-paused *::after,
.document-paused *, .document-paused *::before, .document-paused *::after { animation-play-state: paused !important; }
/* Stacked v3 previews: equal full-width frames with the full scene visible. */
.site-redesign .restored-hero .hero-preview-pair { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 22px; }
.site-redesign .restored-hero .hero-preview-pair .visual-frame { min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(229, 164, 109, .3); border-radius: 16px; background: #080c13; box-shadow: 0 14px 34px #0004; transform: none; }
.site-redesign .restored-hero .hero-preview-pair .visual-frame img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.site-redesign .restored-hero .hero-preview-pair .visual-label { position: relative; inset: auto; margin: 0; padding: 13px 14px; border: 0; border-top: 1px solid #ffffff12; border-radius: 0; background: #0c111b; font-size: 10px; }
.site-redesign .restored-hero .hero-preview-pair .visual-badge { top: 10px; right: 10px; width: 44px; height: 44px; font-size: 8px; }
.site-redesign .restored-hero .hero-preview-pair .visual-overlay { bottom: 40px; }
.site-redesign .highlight-card .product-screenshot-grid .addon-preview:last-child { grid-column: auto; }
@media (max-width: 760px) {
    .site-redesign .restored-hero .hero-preview-pair { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
/* Fill the first Overview frame edge to edge. */
.site-redesign .restored-hero .hero-preview-pair .visual-frame:first-child img { object-fit: cover; }
.site-redesign .restored-hero .hero-preview-pair .classic-preview img { object-fit: cover; }

/* Shared licensing notice for DX11 and Prime, in every language. */
:is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary {
    display: grid;
    grid-template-columns: clamp(46px, 7vw, 80px) minmax(0, 1fr);
    column-gap: 20px;
}
.dx11-license-summary::before {
    content: "!";
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffd3a6;
    font-size: clamp(80px, 10vw, 132px);
    font-weight: 800;
    line-height: 1;
    border-right: 1px solid #e5a46d40;
    padding-right: 16px;
}
.dx11-license-summary > * { grid-column: 2; }
#jtx-prime .dx11-license-summary { margin: 20px 0; }
@media (max-width: 600px) {
    .site-redesign :is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary { padding: 16px; column-gap: 14px; }
    .site-redesign :is(#jtx-dx11, #jtx-prime, #jtx-v3, .prime-product-detail) .dx11-license-summary > strong { font-size: 16px; }
}

#jtx-v3 .dx11-license-summary { margin: 20px 0; }
.prime-intro { margin-bottom: 24px; }
.site-redesign .prime-intro-lead { margin: 0 0 14px; color: #f4e5d7; font-size: clamp(22px, 2.5vw, 30px); line-height: 1.25; font-weight: 600; max-width: 28ch; }
.prime-intro .highlight-copy { margin: 0 0 12px; }
.site-redesign :is(.prime-tier, .dx11-package) { position: relative; isolation: isolate; overflow: hidden; }
:is(.prime-tier, .dx11-package)::before { content: attr(data-package-number); position: absolute; right: 8px; top: 50%; transform: translateY(-50%); font-size: 180px; line-height: 1; font-weight: 800; color: rgba(229, 164, 109, .10); pointer-events: none; z-index: -1; }

/* Aligned package titles and a consistent portfolio grid. */
.prime-tier .prime-available-status { align-self: flex-start; margin: 4px 0 14px; }
.site-redesign #showcase .showcase-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row; grid-auto-columns: auto; gap: 20px; overflow: visible; padding: 0; scroll-snap-type: none; }
.site-redesign #showcase .showcase-item { grid-column: auto; width: 100%; min-width: 0; min-height: 0; height: auto; aspect-ratio: 16 / 10; }
.site-redesign #showcase .showcase-item :is(img,video) { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.site-redesign #showcase .showcase-item figcaption { left: 18px; right: 18px; bottom: 16px; }
.site-redesign #showcase .showcase-item figcaption span { font-size: 18px; }
@media(max-width: 700px) { .site-redesign #showcase .showcase-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; } .mobile-dock a[href$="#showcase"] { font-size: 9px; } }

.prime-package-descriptions { display: grid; gap: 22px; margin-top: 24px; }
.prime-package-descriptions .highlight-copy { margin: 0; }
.prime-package-descriptions strong { display: inline-block; margin-bottom: 6px; color: #f4e5d7; font-size: 17px; font-weight: 700; }

.site-redesign .prime-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media(max-width: 600px) { .site-redesign .prime-grid { grid-template-columns: minmax(0, 1fr); } }

/* Keep the introduction above all four full-width Prime packages. */
.site-redesign .prime-main { display: contents; }
.site-redesign .prime-layout { align-items: start; }
.site-redesign .prime-opening { grid-column: 1 / -1; grid-row: 1; }
.site-redesign .prime-opening .highlight-copy { margin: 0; }
.site-redesign .prime-intro { grid-column: 1; grid-row: 3; }
.site-redesign .prime-logo-figure { grid-column: 2; grid-row: 3; align-self: center; }
.site-redesign #jtx-prime .dx11-license-summary { grid-column: 1 / -1; grid-row: 4; margin: 0; }
.site-redesign .prime-grid { grid-column: 1 / -1; grid-row: 2; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; }
.site-redesign .prime-main > .highlight-actions { grid-column: 1 / -1; grid-row: 5; }
@media(max-width: 1120px) {
 .site-redesign .prime-logo-figure { grid-column: 1; grid-row: 4; }
 .site-redesign #jtx-prime .dx11-license-summary { grid-row: 5; }
 .site-redesign .prime-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .site-redesign .prime-main > .highlight-actions { grid-row: 6; }
}
@media(max-width: 600px) { .site-redesign .prime-grid { grid-template-columns: minmax(0, 1fr); } }

/* Keep section introductions readable below their headings. */
.site-redesign .section-heading { grid-template-columns: minmax(0, 1fr); align-items: start; gap: 20px; }
.site-redesign .section-heading > p {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 20px 24px;
    border: 1px solid rgba(229, 164, 109, .24);
    border-left: 3px solid #e5a46d;
    border-radius: 12px;
    background: rgba(15, 21, 31, .94);
    color: #dbe2ec;
    font-size: 17px;
    line-height: 1.75;
    text-wrap: pretty;
}
@media(max-width: 700px) {
    .site-redesign .section-heading > p { padding: 16px 18px; font-size: 15px; line-height: 1.7; }
}

/* Dedicated presentation for the DirectX 9 generation. */
.v1-product-hero { display: grid; grid-template-columns: 1.1fr 1fr; gap: 32px; align-items: center; padding: 32px; margin-bottom: 32px; border: 1px solid #e5a46d40; border-radius: 20px; background: linear-gradient(125deg, #262019ed, #101722f5 60%); }
.v1-product-copy { min-width: 0; }
.v1-product-copy h2 { margin: 0; font-size: clamp(28px, 3vw, 40px); line-height: 1.15; letter-spacing: -.035em; }
.v1-product-description { color: #dbe2ec; font-size: 17px; line-height: 1.75; margin: 22px 0; }
.v1-product-facts { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.v1-product-facts span { padding: 8px 14px; border: 1px solid #ffffff20; border-radius: 8px; color: #f0d1af; background: #ffffff05; font-size: 14px; }
.v1-product-preview { margin: 0; border: 1px solid #ffffff20; border-radius: 14px; overflow: hidden; background: #090f18; }
.v1-product-preview img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; cursor: zoom-in; }
.v1-product-preview figcaption { padding: 13px 16px; color: #dbe2ec; font-size: 14px; }
@media(max-width: 850px) { .v1-product-hero { grid-template-columns: minmax(0, 1fr); padding: 22px; gap: 24px; } }
@media(max-width: 500px) { .v1-product-hero { padding: 18px; } .v1-product-description { font-size: 15px; } }

.prime-family-products { color: #eac7a4; font-size: 15px; line-height: 1.7; margin: 16px 0 24px; }
.site-redesign .prime-tier .prime-product-spec { flex: 0 0 auto; color: #eac7a4; font-size: 12px; line-height: 1.6; margin: 0 0 16px; }

.v1-product-hero { grid-template-columns: minmax(0, 1fr); }
.v1-product-description { max-width: 85ch; }

/* Prime family pages and nested navigation. */
.site-redesign .site-sidebar .prime-subnav { margin: 0 0 10px 14px; padding-left: 8px; border-left: 1px solid #ffffff20; }
.site-redesign .site-sidebar .prime-subnav a { font-size: 13px; min-height: 40px; padding: 8px; }
.prime-nav-parent[aria-expanded="true"] { color: #edb989; }
.site-redesign .prime-product-detail .prime-mystery { display: inline-block; margin: 8px 0 0; padding: 5px 10px; border: 1px solid rgba(145, 197, 164, .3); border-radius: 999px; color: #91c5a4; font-size: 14px; font-weight: 600; line-height: 1.5; }
.site-redesign .prime-product-detail .dx11-license-summary { margin: 24px 0; }



/* Persistent, understated Prime navigation group. */
.site-redesign .site-sidebar .prime-nav-group { margin: 8px 0 12px; }
.site-redesign .site-sidebar .prime-nav-group > .prime-nav-parent { font-weight: 600; border: 1px solid rgba(229, 164, 109, .35); border-radius: 8px; }
.site-redesign .site-sidebar .prime-nav-group .prime-subnav { margin: 0 0 4px 8px; padding-left: 4px; border-left: 0; }

.site-redesign .prime-upgrade-callout { margin: 24px 0; padding: 18px 0; border-top: 1px solid #ffffff16; border-bottom: 1px solid #ffffff16; display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; flex-wrap: wrap; }
.site-redesign .prime-upgrade-callout p { margin: 0; color: #c4cedb; font-size: 15px; line-height: 1.6; flex: 1 1 260px; }
.site-redesign .prime-upgrade-callout .button { gap: 14px; min-height: 44px; border-color: #e5a46d70; color: #ffd3a6; }
@media(max-width: 600px) { .site-redesign .prime-upgrade-callout .button { width: 100%; } }

.site-redesign .product-heading-contact { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 28px; margin-bottom: 24px; padding-right: 0; }
.site-redesign .product-heading-contact .highlight-head { margin-bottom: 0; padding-right: 0; }
.site-redesign .product-contact-action { flex-shrink: 0; }
@media(max-width: 600px) { .site-redesign .product-heading-contact { align-items: flex-start; } }

/* Fine branch connectors for the four Prime products. */
.site-redesign .site-sidebar .prime-nav-group .prime-subnav { margin-left: 14px; padding-left: 14px; }
.site-redesign .site-sidebar .prime-subnav a { position: relative; }
.site-redesign .site-sidebar .prime-subnav a::before { content: ''; position: absolute; left: -12px; top: -4px; bottom: -4px; width: 1px; background: rgba(229, 164, 109, .3); }
.site-redesign .site-sidebar .prime-subnav a:last-child::before { bottom: 50%; }
.site-redesign .site-sidebar .prime-subnav a::after { content: ''; display: block; position: absolute; left: -12px; top: 50%; width: 10px; height: 1px; background: rgba(229, 164, 109, .3); transform: none; }

.site-redesign .prime-tier .prime-included-note { flex: 0 0 auto; margin: 0 0 16px; color: #b6c5ba; font-size: 13px; line-height: 1.6; }
.site-redesign .prime-card-inclusions { margin: 12px 0 18px; padding-top: 12px; border-top: 1px solid #ffffff18; }
.site-redesign .prime-card-inclusions-label { display: block; margin-bottom: 8px; color: #aeb9c8; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.site-redesign .prime-card-inclusions ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.site-redesign .prime-card-inclusions li { display: flex; align-items: baseline; gap: 8px; color: #e4eaf1; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.site-redesign .prime-card-inclusions li::before { content: "✓"; flex: 0 0 auto; color: #a9dfbd; }

/* Prime Performance: compact benefit summary. */
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes{margin:26px 0;padding:22px;border:1px solid #e5a46d40;border-radius:14px;background:linear-gradient(135deg,#e5a46d09,#101620)}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes h4{font-size:23px;line-height:1.3;margin:0 0 6px;color:#f4e5d7}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes-intro{margin:0 0 18px;color:#bac3d1;font-size:15px;line-height:1.6}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.65}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes th,:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes td{text-align:left;padding:14px 16px;vertical-align:top;border-bottom:1px solid #ffffff12;overflow-wrap:break-word}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes th:first-child{width:28%;padding-left:0}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes thead th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#94a1b6;padding-top:0}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes tbody th{color:#edbd90;font-weight:600}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes td{color:#c3ccd9;padding-right:0}
:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes-note{font-size:13px;line-height:1.6;color:#94a1b6;margin:14px 0 0}
@media(max-width:600px){
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes{padding:18px 16px;margin:20px 0}
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes h4{font-size:21px}
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes table,:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes tbody{display:block}
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes tr{display:block;padding:14px 0;border-bottom:1px solid #ffffff12}
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes th:first-child,:is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes td{display:block;width:auto;padding:0;border:0;font-size:14px}
 :is(#jtx-prime-performance,#jtx-prime-classic) .prime-includes tbody th{margin-bottom:5px}
}

#jtx-prime-classic .classic-lead{margin:24px 0 14px;color:#f4e5d7;font-size:clamp(20px,2.1vw,28px);font-weight:700;line-height:1.35;letter-spacing:-.025em}
#jtx-prime-classic .classic-performance-foundation{margin:22px 0;padding:18px 22px;border-left:3px solid #79d9a8;border-radius:4px;background:linear-gradient(90deg,#79d9a80d,transparent)}
#jtx-prime-classic .classic-performance-foundation p{margin:0;color:#c3ccd9;font-size:15px;line-height:1.8}
#jtx-prime-classic .classic-performance-foundation strong{color:#d4eddf}

#jtx-prime-classic .classic-closing-banner{display:grid;grid-template-columns:minmax(0,1fr) 180px;grid-template-rows:1fr auto;gap:22px 32px;align-items:center;margin-top:36px;padding:30px 32px;border:1px solid #ffffff26;border-radius:28px;background:linear-gradient(135deg,#141923,#080d15 70%);overflow:hidden}
#jtx-prime-classic .classic-closing-banner blockquote{grid-column:1;grid-row:1;margin:0;color:#b7bdca;font-family:'Bahnschrift','Segoe UI',sans-serif;font-size:clamp(24px,2.6vw,36px);line-height:1.22;letter-spacing:-.045em}
#jtx-prime-classic .classic-closing-banner blockquote strong{color:#fff;font-weight:650}
#jtx-prime-classic .classic-closing-meta{grid-column:1;grid-row:2;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 18px;color:#8893a5;font-size:9px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
#jtx-prime-classic .classic-closing-banner>img{grid-column:2;grid-row:1 / span 2;width:100%;height:auto;max-height:180px;object-fit:contain}
@media(max-width:600px){#jtx-prime-classic .classic-closing-banner{grid-template-columns:minmax(0,1fr) 80px;gap:18px 10px;padding:22px 18px;border-radius:20px}#jtx-prime-classic .classic-closing-banner blockquote{font-size:23px}#jtx-prime-classic .classic-closing-meta{grid-column:1 / -1;font-size:8px}#jtx-prime-classic .classic-closing-banner>img{grid-row:1}}

.site-redesign .product-contact-action{display:flex;flex-wrap:wrap;gap:10px}
.site-redesign .site-sidebar .prime-subnav .nav-prices-link {
  margin-top: 5px;
  border: 0;
  border-radius: 7px;
  color: #baffd2;
  font-weight: 800;
  background: linear-gradient(90deg, rgba(31, 131, 73, .27), rgba(75, 202, 126, .10));
  box-shadow: inset 0 1px 0 rgba(218, 255, 231, .07);
}
.site-redesign .site-sidebar .prime-subnav .nav-prices-link:hover,
.site-redesign .site-sidebar .prime-subnav .nav-prices-link:focus-visible {
  color: #effff5;
  background: linear-gradient(90deg, rgba(36, 153, 84, .39), rgba(83, 218, 138, .16));
  box-shadow: 0 0 20px rgba(58, 196, 113, .15), inset 0 1px 0 rgba(225, 255, 236, .11);
}
