/* TechDX Core: Platform page (Figma 273:287 / mob 430:417). Loaded after pages.css; every rule is scoped with
   .tdx-page-body + .tdx-platform__… because the Elementor globals outrank single-class selectors.
   Values are 1920-frame pixels unless noted; the 440 mobile frame drives the ≤640 block. */

/* ---------- Hero (1085:5778 band #111 672px under the 97px Figma header; title 1016:3420 at y=199, x=237) ---------- */
.tdx-page-body .tdx-platform__hero { position: relative; overflow: hidden; background: var(--tdx-ink); color: #fff; border-radius: 0 0 40px 40px; }
/* The Elementor header is fixed (80px): the band starts under it, title at 199px from the page top like Figma. */
.tdx-page-body .tdx-platform__hero-inner { position: relative; z-index: 2; max-width: 1494px; margin: 0 auto; padding: 199px 24px 109px; }
.tdx-page-body .tdx-platform__hero-title { max-width: 861px; font: 500 55px/73px var(--tdx-head); color: #fff; }
.tdx-page-body .tdx-platform__hero-desc { max-width: 740px; margin-top: 26px; font: 400 25px/35px var(--tdx-body); color: #fff; }
.tdx-page-body .tdx-platform__hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 94px; }
.tdx-page-body .tdx-platform__hero-partner { gap: 10px; padding-left: 17px; border-radius: 6px; /* Figma 1016:3427: 6.18 */ }
.tdx-page-body .tdx-platform__play-ico { width: 23px; height: 23px; flex: none; }
/* "Designs" wave 1016:3283 (1159x480 at x=768.5, y=142.4) hard-clipped by Mask group 1016:3281 (1107x627 at x=821, y=141.7) */
.tdx-page-body .tdx-platform__hero-wave { position: absolute; z-index: 0; top: 142px; right: -8px; width: 1107px; max-width: 58vw; height: 627px; overflow: hidden; pointer-events: none; }
.tdx-page-body .tdx-platform__hero-wave img { position: absolute; left: -53px; top: 1px; width: 1159px; max-width: none; height: auto; }
/* Arena render 1061:4069 (923x703 at x=978, y=57, transparent PNG) */
.tdx-page-body .tdx-platform__hero-art { position: absolute; z-index: 1; top: 57px; right: 19px; width: 923px; max-width: 48vw; height: auto; pointer-events: none; }

/* ---------- "See TDX Arena in Action" (title 1019:3455 y=831, video 1019:3467 1060x593, Start Training 1019:3463 309x66) ---------- */
.tdx-page-body .tdx-platform__arena { position: relative; overflow: hidden; padding: 62px 0 109px; background: #fff; }
.tdx-page-body .tdx-platform__arena-inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; }
.tdx-page-body .tdx-platform__arena-desc { max-width: 858px; margin-top: 23px; font: 400 20px/30px var(--tdx-body); color: #000; text-align: center; }
/* Faded logo marks 1019:3453 (710x497 at x=107) and 1019:3468 (394x275 at x=1306), positions relative to the section top (y=769) */
.tdx-page-body .tdx-platform__mark { position: absolute; z-index: 0; opacity: .13; pointer-events: none; height: auto; }
.tdx-page-body .tdx-platform__mark--left { left: 5.6%; top: 335px; width: 710px; }
.tdx-page-body .tdx-platform__mark--right { left: 68%; top: 218px; width: 394px; }
.tdx-page-body .tdx-platform__video { width: 1060px; max-width: 100%; margin-top: 50px; }
.tdx-page-body .tdx-platform__video .tdx-arena__player { display: block; width: 100%; margin: 0; padding: 0; border: 0; background: none; color: inherit; font: inherit; -webkit-appearance: none; appearance: none; cursor: pointer; border-radius: 26px; }
.tdx-page-body .tdx-platform__video .tdx-arena__player:focus { outline: none; }
.tdx-page-body .tdx-platform__video .tdx-arena__player:focus-visible { outline: 3px solid var(--tdx-green); outline-offset: 3px; }
/* Figma 1019:3459: 2.66px white border (→ 2px + a 1px #E0E0E0 ring so the edge reads on the white page), 26px radius, 42% black overlay */
.tdx-page-body .tdx-platform__video .tdx-arena__frame { position: relative; display: block; width: 100%; aspect-ratio: 1060 / 593; overflow: hidden; border: 2px solid #fff; border-radius: 26px; background: #0b0f0c; box-shadow: 0 0 0 1px #E0E0E0; }
.tdx-page-body .tdx-platform__video .tdx-arena__poster { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.tdx-page-body .tdx-platform__video .tdx-arena__overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, .42); pointer-events: none; transition: background .18s ease; }
.tdx-page-body .tdx-platform__video .tdx-arena__player:hover .tdx-arena__overlay, .tdx-page-body .tdx-platform__video .tdx-arena__player:focus-visible .tdx-arena__overlay { background: rgba(0, 0, 0, .28); }
/* Play button 1019:3460: 114.5px centered */
.tdx-page-body .tdx-platform__video .tdx-arena__play { position: absolute; left: 50%; top: 50%; width: 114px; height: 114px; transform: translate(-50%, -50%); pointer-events: none; }
.tdx-page-body .tdx-platform__video .tdx-arena__iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.tdx-page-body .tdx-platform__start { display: inline-flex; align-items: center; justify-content: center; min-width: 309px; height: 66px; margin-top: 67px; padding: 0 24px; background: var(--tdx-orange); border: 2px solid var(--tdx-orange); border-radius: 8px; font: 600 16.7px/1 var(--tdx-link); /* Figma 1019:3465: Inter Semi Bold 16.68 / 28.76 */ color: #fff; box-shadow: 0 0 5px 3px rgba(0, 0, 0, .1); transition: background .18s ease; }
.tdx-page-body .tdx-platform__start:hover { background: #d9560a; border-color: #d9560a; color: #fff; }

/* ---------- "Training That Feels Like the Real Thing" (box 1021:3470 1587x560 #EFEFEF, cards 1030:3551 292px, gap 50) ---------- */
.tdx-page-body .tdx-platform__training { padding: 0 24px; }
.tdx-page-body .tdx-platform__training-box { position: relative; max-width: 1587px; margin: 0 auto; padding: 55px 24px 83px; background: #EFEFEF; border-radius: 20px; }
/* Decorative X 1022:3474 (561x277 at x=1438, y=2127): overhangs the box's right edge, clipped by the page's overflow-x */
.tdx-page-body .tdx-platform__training-glyph { top: 283px; right: -245px; z-index: 0; color: var(--tdx-bright); opacity: .55; }
.tdx-page-body .tdx-platform__training-glyph path { stroke-width: 1; }
.tdx-page-body .tdx-platform__tcards { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, 292px); justify-content: center; gap: 50px; margin-top: 84px; /* 50 + the 34px icon overhang */ }
.tdx-page-body .tdx-platform__tcard { position: relative; padding: 47px 16px 30px; background: #fff; border: 2px solid var(--tdx-line); border-radius: 14px; text-align: center; }
.tdx-page-body .tdx-platform__tcard-icon { position: absolute; left: 50%; top: -34px; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; width: 70px; height: 70px; border-radius: 8px; background: var(--tdx-green); }
.tdx-page-body .tdx-platform__tcard-icon svg { width: 50px; height: auto; }
.tdx-page-body .tdx-platform__tcard-title { max-width: 257px; min-height: 60px; margin: 0 auto; font: 500 20px/30px var(--tdx-head); letter-spacing: 1.2px; color: #000; }
.tdx-page-body .tdx-platform__tcard-text { max-width: 234px; margin: 12px auto 0; font: 400 18px/28px var(--tdx-body); color: #000; }

/* ---------- "From First Lesson to Certified" (title 1033:3552 y=2471, cards 1046:3636 441x441, badge 62px) ---------- */
.tdx-page-body .tdx-platform__journey { padding: 67px 0 53px; /* 148px to the validation title minus its own 95px top padding */ }
.tdx-page-body .tdx-platform__steps { display: grid; grid-template-columns: repeat(3, 441px); justify-content: center; gap: 36px; margin: 76px 0 0; /* 41 + the 35px badge overhang */ padding: 0; list-style: none; counter-reset: none; }
.tdx-page-body .tdx-platform__step { position: relative; min-height: 441px; padding: 32px 15px 24px; background: #000; border: 1px solid #ADADAD; /* Figma .873 */ border-radius: 17px; color: #fff; text-align: center; }
.tdx-page-body .tdx-platform__step-num { position: absolute; left: 50%; top: -35px; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; width: 62px; height: 62px; border-radius: 50%; background: var(--tdx-bright); font: 700 22px/1 var(--tdx-head); letter-spacing: 1.3px; color: #000; }
.tdx-page-body .tdx-platform__step-title { font: 700 22px/49px var(--tdx-head); letter-spacing: 1.3px; color: var(--tdx-bright); }
.tdx-page-body .tdx-platform__step-img { display: block; width: 100%; height: auto; margin-top: 10px; border-radius: 17px; }
.tdx-page-body .tdx-platform__step:first-child .tdx-platform__step-img { border-radius: 7px; /* Figma 1046:3622: 6.99 (the other two are 17.47) */ }
.tdx-page-body .tdx-platform__step-text { max-width: 400px; margin: 25px auto 0; padding: 0 4px; font: 400 15.7px/26px var(--tdx-body); color: #fff; }

/* ---------- Validation (shared partial) spacing: dark band 1016:3087 at y=3681 = 133px under the cards (shared padding gives 116) ---------- */
.tdx-page-body .tdx-platform__dark { margin-top: 17px; }
.tdx-page-body .tdx-platform__dark::before { display: none; /* Figma Rectangle 21 is pure black, no wave art */ }

/* ---------- "Your Academy. Your Brand. Our Platform." (title 1016:3188 y=3855, checklist x=382, button 1061:4061 283x68) ---------- */
.tdx-page-body .tdx-platform__academy { position: relative; padding: 174px 0 170px; }
.tdx-page-body .tdx-platform__academy-inner { position: relative; max-width: 1156px; margin: 0 auto; padding: 0 24px; }
.tdx-page-body .tdx-platform__academy-title { font: 500 35px/70px var(--tdx-head); letter-spacing: 1.75px; text-align: center; }
.tdx-page-body .tdx-platform__academy-orange { color: #FF862C; }
.tdx-page-body .tdx-platform__academy-green { color: var(--tdx-bright); }
.tdx-page-body .tdx-platform__academy-desc { max-width: 858px; margin: 0 auto; font: 400 20px/30px var(--tdx-body); color: #fff; text-align: center; }
/* Handshake 1054:3834 (1258x584 at x=431, y=3982 = 301px under the band top); the four black fade rectangles 1050:3808-3811 are the ::after gradients */
.tdx-page-body .tdx-platform__academy-photo { position: absolute; left: calc(50% - 529px); top: 127px; /* 301px under the band top minus the 174px section padding */ width: 1258px; pointer-events: none; }
.tdx-page-body .tdx-platform__academy-photo img { display: block; width: 100%; height: auto; }
.tdx-page-body .tdx-platform__academy-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #000 18%, transparent 76%), linear-gradient(270deg, #000 3%, transparent 31%), linear-gradient(180deg, #000 6%, transparent 40%), linear-gradient(0deg, #000 0, transparent 21%); }
.tdx-page-body .tdx-platform__checks { position: relative; z-index: 1; display: grid; gap: 26px; width: 555px; max-width: 100%; margin: 90px 0 0; padding: 0; list-style: none; }
.tdx-page-body .tdx-platform__check { display: flex; align-items: flex-start; gap: 24px; padding: 12px 0 12px 18px; }
.tdx-page-body .tdx-platform__check-ico { flex: none; width: 39px; height: 39px; margin-top: -2px; }
.tdx-page-body .tdx-platform__check span { max-width: 431px; font: 400 24px/34px var(--tdx-body); color: #fff; }
.tdx-page-body .tdx-platform__academy .tdx-platform__partner { display: flex; width: 283px; min-width: 0; height: 68px; margin: 154px auto 0; border-width: 3px; border-radius: 10px; box-shadow: 0 3px 18px 7px rgba(0, 0, 0, .35); font-size: 19px; letter-spacing: 1.14px; }

/* ---------- "Certification Programs Powered by the Arena" (title 1054:3835 y=4881, chips 52px pills, grid art 1061:4067 1414x947 at x=186, y=4540) ---------- */
.tdx-page-body .tdx-platform__programs { position: relative; }
.tdx-page-body .tdx-platform__grid { position: absolute; z-index: 0; left: 9.7%; top: -341px; width: 73.6%; height: auto; opacity: .13; /* Figma 1061:4067 */ pointer-events: none; -webkit-mask-image: linear-gradient(180deg, #000 55%, transparent 100%); mask-image: linear-gradient(180deg, #000 55%, transparent 100%); /* Rectangle 60 fade 1061:4068 */ }
.tdx-page-body .tdx-platform__programs-inner { position: relative; z-index: 1; }
.tdx-page-body .tdx-platform__chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 32px 23px; margin: 41px 0 0; padding: 0; list-style: none; }
.tdx-page-body .tdx-platform__chips--2 { margin-top: 32px; }
.tdx-page-body .tdx-platform__chip { display: inline-flex; align-items: center; justify-content: center; height: 52px; padding: 0 30px; background: #000; border: 1px solid var(--tdx-bright); border-radius: 40px; font: 500 20px/1 var(--tdx-head); letter-spacing: 1.2px; color: #fff; white-space: nowrap; }
.tdx-page-body .tdx-platform__chip--orange { border-color: #FF862C; }
.tdx-page-body .tdx-platform__chip--white { background: #fff; border-color: #fff; color: #000; }
.tdx-page-body .tdx-platform__all { margin-top: 50px; text-align: center; font: 500 18px/28px var(--tdx-link); }
.tdx-page-body .tdx-platform__all a { color: var(--tdx-bright); }
.tdx-page-body .tdx-platform__all a:hover { text-decoration: underline; }

/* ---------- Stats strip (1061:4121 1181x222 orange at y=5335, 154px under "View all"; dividers 1061:4056-4059; Vector 44 line at y=5451) ---------- */
.tdx-page-body .tdx-platform__stats { position: relative; margin-top: 154px; padding: 0 24px 58px; /* 261px to the CTA title minus the shared CTA's 71 + 132 */ }
.tdx-page-body .tdx-platform__stats::before { content: ""; position: absolute; left: 0; right: 0; top: 116px; height: 1px; background: rgba(255, 255, 255, .5); pointer-events: none; }
.tdx-page-body .tdx-platform__stats-box { position: relative; display: grid; grid-template-columns: 236px 237px 208px 228px 1fr; width: 1181px; max-width: 100%; min-height: 222px; margin: 0 auto; padding: 28px 0; background: var(--tdx-orange); border-radius: 9px; box-shadow: 0 1px 10px rgba(0, 0, 0, .19); color: #fff; }
.tdx-page-body .tdx-platform__stat { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 14px 12px 0; text-align: center; border-left: 1px solid rgba(255, 255, 255, .7); }
.tdx-page-body .tdx-platform__stat:first-child { border-left: 0; }
.tdx-page-body .tdx-platform__stat-value { font: 700 45px/64px var(--tdx-head); letter-spacing: 2.7px; color: #fff; }
.tdx-page-body .tdx-platform__stat-label { max-width: 160px; margin: 2px 0 0; font: 700 18px/27px var(--tdx-body); color: #fff; }

/* ---------- Tablet ---------- */
@media (max-width: 1500px) {
    /* Chip row 1 is 1460px wide in Figma: tighten the pills so the 4 + 3 grouping survives down to the 1440 breakpoint */
    .tdx-page-body .tdx-platform__chip { padding: 0 24px; font-size: 18px; letter-spacing: 1.08px; }
    .tdx-page-body .tdx-platform__chips { gap: 24px 16px; }
}
@media (max-width: 1400px) {
    .tdx-page-body .tdx-platform__tcards { grid-template-columns: repeat(auto-fit, minmax(260px, 292px)); }
    .tdx-page-body .tdx-platform__steps { grid-template-columns: repeat(auto-fit, minmax(300px, 441px)); }
    .tdx-page-body .tdx-platform__hero-art { max-width: 46vw; }
}
@media (max-width: 1100px) {
    .tdx-page-body .tdx-platform__hero-inner { padding-top: 160px; }
    .tdx-page-body .tdx-platform__hero-art { top: 60px; max-width: 50vw; opacity: .85; }
    .tdx-page-body .tdx-platform__academy-photo { position: relative; left: auto; top: auto; width: 100%; max-width: 750px; margin: 40px auto 0; }
    .tdx-page-body .tdx-platform__checks { margin: 40px auto 0; }
    .tdx-page-body .tdx-platform__stats-box { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px 0; }
}

/* ---------- Mobile (440 frame 430:417) ---------- */
@media (max-width: 640px) {
    /* Hero: title 430:463 y=119 (Bold 30/37, 3 lines), art 1085:5846 full width, paragraph 1085:5848 y=533, stacked buttons 1085:5849 / 1085:5852, band bottom 976 */
    /* The art is a sibling of the inner wrapper, so the section becomes the flex container (inner unwrapped with display:contents) and `order` interleaves title → art → copy → buttons */
    .tdx-page-body .tdx-platform__hero { display: flex; flex-direction: column; align-items: center; padding: 119px 14px 82px; border-radius: 0 0 24px 24px; text-align: center; }
    .tdx-page-body .tdx-platform__hero-inner { display: contents; }
    .tdx-page-body .tdx-platform__hero-title { order: 1; position: relative; z-index: 2; width: 100%; max-width: 412px; font-weight: 700; font-size: 30px; line-height: 37px; letter-spacing: 2.6px; /* Figma 3px; 2.6 keeps the 3-line break with a scrollbar present */ }
    .tdx-page-body .tdx-platform__hero-art { order: 2; position: relative; z-index: 1; top: auto; right: auto; width: 448px; max-width: calc(100% + 28px); margin: -7px -14px 0; }
    .tdx-page-body .tdx-platform__hero-wave { top: 61px; right: -4px; width: 448px; max-width: none; height: 521px; }
    .tdx-page-body .tdx-platform__hero-wave img { left: -21px; top: 0; width: 469px; }
    .tdx-page-body .tdx-platform__hero-desc { order: 3; position: relative; z-index: 2; max-width: 404px; margin-top: -31px; padding: 0 4px; font-size: 18px; line-height: 28px; }
    .tdx-page-body .tdx-platform__hero-actions { order: 4; position: relative; z-index: 2; flex-direction: column; gap: 28px; margin-top: 42px; }
    .tdx-page-body .tdx-platform__arena .tdx-section__title, .tdx-page-body .tdx-platform__training-box .tdx-section__title, .tdx-page-body .tdx-platform__journey .tdx-section__title, .tdx-page-body .tdx-platform__programs .tdx-section__title { max-width: 351px; margin-left: auto; margin-right: auto; /* Figma mobile titles are 351px wide */ }
    .tdx-page-body .tdx-platform__hero-actions .tdx-btn--primary { width: 260px; min-width: 0; height: 61px; border-radius: 8px; font-size: 18px; letter-spacing: 1.08px; }
    .tdx-page-body .tdx-platform__hero-actions .tdx-btn--ghost { width: 258px; min-width: 0; height: 62px; padding-left: 19px; border-radius: 7px; font-size: 18px; letter-spacing: 1.08px; }
    .tdx-page-body .tdx-platform__play-ico { width: 26px; height: 26px; }

    /* Arena: title 1085:6004 (30/38), paragraph 1085:6005, video 1085:6011 x=10, Start Training 1085:6019 y=1502, marks 1085:6009 / 1085:6010 */
    .tdx-page-body .tdx-platform__arena { padding: 62px 0 104px; }
    .tdx-page-body .tdx-platform__arena-inner { padding: 0 10px; }
    .tdx-page-body .tdx-platform__arena .tdx-section__title { font-size: 28px; line-height: 38px; }
    .tdx-page-body .tdx-platform__arena-desc { margin-top: 14px; padding: 0 20px; font-size: 18px; line-height: 28px; }
    .tdx-page-body .tdx-platform__video { margin-top: 30px; }
    .tdx-page-body .tdx-platform__video .tdx-arena__player, .tdx-page-body .tdx-platform__video .tdx-arena__frame { border-radius: 12px; }
    .tdx-page-body .tdx-platform__video .tdx-arena__play { width: 46px; height: 46px; }
    .tdx-page-body .tdx-platform__start { margin-top: 62px; }
    .tdx-page-body .tdx-platform__mark--left { left: -71px; top: 350px; width: 352px; }
    .tdx-page-body .tdx-platform__mark--right { left: auto; right: -56px; top: 262px; width: 195px; }

    /* Training: full-bleed box 1085:6025, 2x2 cards 1085:6080 (196.5px, gap 12, 47px icons) */
    .tdx-page-body .tdx-platform__training { padding: 0; }
    .tdx-page-body .tdx-platform__training-box { padding: 37px 20px 69px; border-radius: 20px; overflow: hidden; }
    .tdx-page-body .tdx-platform__training-box .tdx-section__title { font-size: 28px; line-height: 38px; }
    .tdx-page-body .tdx-platform__training-glyph { display: none; }
    .tdx-page-body .tdx-platform__tcards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px 12px; margin-top: 68px; /* 45 + the 23px icon overhang */ }
    .tdx-page-body .tdx-platform__tcard { padding: 32px 10px 20px; border-width: 1px; border-radius: 9px; }
    .tdx-page-body .tdx-platform__tcard-icon { top: -23px; width: 47px; height: 47px; border-radius: 5px; }
    .tdx-page-body .tdx-platform__tcard-icon svg { width: 34px; }
    .tdx-page-body .tdx-platform__tcard-title { min-height: 40px; font-size: 13.5px; line-height: 20px; letter-spacing: .81px; }
    .tdx-page-body .tdx-platform__tcard-text { margin-top: 8px; font-size: 12px; line-height: 19px; }

    /* Journey: stacked 411px cards 1085:6135 / 1085:6150 / 1085:6136 (x=15, gap 20, 58px badge) */
    .tdx-page-body .tdx-platform__journey { padding: 58px 0 42px; }
    .tdx-page-body .tdx-platform__journey .tdx-page__inner { padding: 0 15px; }
    .tdx-page-body .tdx-platform__journey .tdx-section__title { font-size: 28px; line-height: 38px; }
    .tdx-page-body .tdx-platform__steps { grid-template-columns: minmax(0, 1fr); gap: 53px; /* 20 + the 33px badge overhang */ margin-top: 77px; }
    .tdx-page-body .tdx-platform__step { min-height: 0; padding: 30px 14px 20px; border-radius: 16px; }
    .tdx-page-body .tdx-platform__step-num { top: -33px; width: 58px; height: 58px; font-size: 20px; }
    .tdx-page-body .tdx-platform__step-title { font-size: 20px; line-height: 46px; letter-spacing: 1.2px; }
    .tdx-page-body .tdx-platform__step-img { border-radius: 7px; }
    .tdx-page-body .tdx-platform__step-text { margin-top: 23px; padding: 0; font-size: 14.7px; line-height: 24px; }

    /* Validation → dark band: Rectangle 99 1096:6197 at y=5069, 190px under the last card (shared padding gives 70) */
    .tdx-page-body .tdx-platform__dark { margin-top: 120px; }

    /* Academy: title 1096:6198 y=5118, photo 1096:6191 full width, rows 1096:6200.. (icon x=36, text x=99, 20/28), button 1096:6217 284x69 */
    .tdx-page-body .tdx-platform__academy { padding: 49px 0 112px; }
    .tdx-page-body .tdx-platform__academy-inner { padding: 0 20px; }
    .tdx-page-body .tdx-platform__academy-title { font-size: 28px; line-height: 38px; letter-spacing: 0; }
    .tdx-page-body .tdx-platform__academy-orange, .tdx-page-body .tdx-platform__academy-green { display: block; }
    .tdx-page-body .tdx-platform__academy-desc { display: none; }
    .tdx-page-body .tdx-platform__academy-photo { position: relative; left: auto; top: auto; width: calc(100% + 40px); max-width: none; margin: -120px -20px 0; /* Figma 1096:6191: the photo starts 44px above the 76px title */ }
    .tdx-page-body .tdx-platform__academy-photo img { aspect-ratio: 447 / 484; object-fit: cover; }
    .tdx-page-body .tdx-platform__academy-photo::after { background: linear-gradient(180deg, #000 10%, transparent 48%), linear-gradient(0deg, #000 0, transparent 30%), linear-gradient(270deg, #000 0, transparent 25%); }
    .tdx-page-body .tdx-platform__academy-title { position: relative; z-index: 1; }
    .tdx-page-body .tdx-platform__checks { width: 100%; margin: 37px 0 0; gap: 26px; }
    .tdx-page-body .tdx-platform__check { gap: 24px; padding: 4px 0 4px 16px; }
    .tdx-page-body .tdx-platform__check-ico { margin-top: -4px; }
    .tdx-page-body .tdx-platform__check span { max-width: 267px; font-size: 20px; line-height: 28px; }
    .tdx-page-body .tdx-platform__academy .tdx-platform__partner { width: 284px; height: 69px; margin-top: 83px; border-width: 2px; border-radius: 8px; box-shadow: 0 2px 14px 6px rgba(0, 0, 0, .35); font-size: 17px; letter-spacing: 1.02px; }

    /* Programs (no mobile frame): chips wrap centered */
    .tdx-page-body .tdx-platform__grid { left: -20%; top: -200px; width: 140%; }
    .tdx-page-body .tdx-platform__programs .tdx-section__title { font-size: 28px; line-height: 38px; }
    .tdx-page-body .tdx-platform__chips { gap: 12px; margin-top: 32px; }
    .tdx-page-body .tdx-platform__chips--2 { margin-top: 12px; }
    .tdx-page-body .tdx-platform__chip { height: auto; min-height: 46px; padding: 10px 20px; font-size: 16px; line-height: 1.2; white-space: normal; text-align: center; }
    .tdx-page-body .tdx-platform__all { margin-top: 36px; }

    /* Stats: 1096:6244 405px box at x=17, two columns, 1px dividers; desktop numbers (the mobile frame's are stale) */
    .tdx-page-body .tdx-platform__stats { margin-top: 112px; padding: 0 17px 17px; }
    .tdx-page-body .tdx-platform__stats::before { display: none; }
    .tdx-page-body .tdx-platform__stats-box { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; min-height: 0; padding: 27px 18px; }
    .tdx-page-body .tdx-platform__stat { padding: 17px 8px 22px; border-left: 0; border-top: 1px solid rgba(255, 255, 255, .7); }
    .tdx-page-body .tdx-platform__stat:nth-child(-n+2) { border-top: 0; }
    .tdx-page-body .tdx-platform__stat:nth-child(odd) { border-right: 1px solid rgba(255, 255, 255, .7); }
    .tdx-page-body .tdx-platform__stat:last-child { grid-column: 1 / -1; border-right: 0; }
    .tdx-page-body .tdx-platform__stat-label { max-width: 150px; line-height: 28px; }
}
