/* Pixel-locked desktop art direction from the 1920 x 6212 XD artboard. */
@media (min-width: 1200px) {
  .tn-shell { width: 1640px; }
  .tn-hero, .tn-stats, .tn-paths, .tn-experience, .tn-downloads, .tn-focus,
  .tn-offer, .tn-recruit, .tn-registration, .tn-institutions, .tn-footer { position: relative; }
  .tn-hero::after, .tn-stats::after, .tn-paths::after, .tn-experience::after,
  .tn-downloads::after, .tn-focus::after, .tn-offer::after, .tn-recruit::after,
  .tn-registration::after, .tn-institutions::after, .tn-footer::after {
    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: url("../images/termonova-xd-overlay.svg") center top / 1920px 6212px no-repeat;
  }
  .tn-hero > *, .tn-stats > *, .tn-paths > *, .tn-experience > *,
  .tn-downloads > *, .tn-focus > *, .tn-offer > *, .tn-recruit > *,
  .tn-registration > *, .tn-institutions > *, .tn-footer > * { z-index: 2; }
  .tn-stats::after { background-position-y: -1078px; }
  .tn-paths::after { background-position-y: -1555px; }
  .tn-experience::after { background-position-y: -2380px; }
  .tn-downloads::after { background-position-y: -3442px; }
  .tn-focus::after { background-position-y: -4007px; }
  .tn-offer::after { background-position-y: -4477px; }
  .tn-recruit::after { background-position-y: -4780px; }
  .tn-registration::after { background-position-y: -5150px; }
  .tn-institutions::after { background-position-y: -5670px; }
  .tn-footer::after { background-position-y: -5850px; }

  .tn-hero { height: 1078px; min-height: 1078px; }
  .tn-hero::before { top: -13px; right: auto; bottom: auto; left: 0; width: 1951px; height: 1091px; }
  .tn-hero-logo, .tn-motif { opacity: 0; }
  .tn-hero-top-cta { top: 82px; right: 140px; width: 292px; min-height: 44px; padding: 0; border-radius: 15px; background: transparent; font-size: 16px; }
  .tn-hero-date { top: 354px; width: 921px; min-width: 921px; min-height: 112px; padding: 0 0 0 140px; justify-content: flex-start; border-radius: 0; background: transparent; font-size: 65px; line-height: 1; letter-spacing: 0; }
  .tn-hero-info { top: 487px; left: 140px; width: 476px; font-size: 34px; line-height: 38px; }
  .tn-hero-copy { top: 728px; bottom: auto; left: 140px; width: 715px; }
  .tn-hero-copy h1 { width: 715px; margin: 0 0 2px; font-size: 75px; line-height: 63px; letter-spacing: 0; }
  .tn-hero-copy h2 { width: 598px; margin: 0; font-size: 25px; line-height: 39px; text-transform: uppercase; }
  .tn-hero-copy p { width: 506px; margin: -4px 0 0; font-size: 20px; line-height: 23px; }

  .tn-stats { height: 477px; padding: 0; }
  .tn-stats-cta { position: absolute; top: 62px; left: 632px; width: 659px; min-width: 659px; min-height: 94px; margin: 0; padding: 0; border-radius: 33px; background: transparent; font-size: 26px; }
  .tn-stats-grid { position: absolute; inset: 0; display: block; margin: 0; }
  .tn-stat { position: absolute; top: 219px; width: 371px; }
  .tn-stat:nth-child(1) { left: 370px; }
  .tn-stat:nth-child(2) { left: 799px; width: 344px; }
  .tn-stat:nth-child(3) { left: 1199px; width: 351px; }
  .tn-stat strong { height: 98px; font-size: 90px; line-height: 98px; }
  .tn-stat span { margin-top: 22px; font-size: 20px; line-height: 22px; }

  .tn-paths { height: 825px; padding: 0; }
  .tn-paths-head { position: absolute; top: 57px; left: 329px; width: 1250px; max-width: none; margin: 0; }
  .tn-paths-head p { height: 39px; margin: 0; font-size: 20px; line-height: 24px; }
  .tn-paths-head h2 { margin: -3px 0 0; font-size: 45px; line-height: 44px; font-weight: 400; }
  .tn-path-grid { position: absolute; top: 337px; left: 140px; display: grid; grid-template-columns: repeat(4, 398px); gap: 16px; }
  .tn-path { position: relative; width: 398px; height: 430px; }
  .tn-path-number { position: absolute; top: 0; left: 0; width: 200px; height: 68px; margin: 0; }
  .tn-path-icon { opacity: 0; }
  .tn-path-number b { position: absolute; top: 14px; left: 130px; font-size: 40px; line-height: 54px; }
  .tn-path:nth-child(3) .tn-path-number b { left: 118px; }
  .tn-path h3 { position: absolute; top: 82px; left: 7px; width: 391px; margin: 0; font-size: 22px; line-height: 35px; }
  .tn-path .tn-lead { position: absolute; top: 124px; left: 7px; width: 391px; min-height: 0; margin: 0; font-size: 28px; line-height: 35px; }
  .tn-exhibitors { position: absolute; top: 233px; left: 0; width: 398px; margin: 0; font-size: 20px; line-height: 24px; }
  .tn-exhibitors summary { margin: 9px 0 0; font-size: 15px; line-height: 27px; }

  .tn-experience { height: 1062px; padding: 0; }
  .tn-experience > .tn-shell { position: static; }
  .tn-experience .tn-kicker { position: absolute; top: 22px; left: 691px; width: 497px; margin: 0; font-size: 20px; line-height: 39px; }
  .tn-experience h2 { position: absolute; top: 61px; left: 289px; width: 1301px; margin: 0; font-size: 45px; line-height: 60px; }
  .tn-intro { position: absolute; top: 128px; left: 451px; width: 1007px; max-width: none; margin: 0; font-size: 20px; line-height: 24px; }
  .tn-cards { position: absolute; top: 233px; left: 140px; display: grid; grid-template-columns: repeat(3, 536px); gap: 16px; }
  .tn-card { width: 536px; height: 419px; border-radius: 33px; }
  .tn-card::after { display: none; }
  .tn-card-content { display: block; padding: 0; }
  .tn-card h3 { position: absolute; top: 141px; left: 13px; width: 511px; margin: 0; font-size: 70px; line-height: 60px; }
  .tn-card:nth-child(2) h3 { top: 119px; }
  .tn-card p { position: absolute; top: 291px; left: 25px; width: 486px; margin: 0; font-size: 18px; line-height: 22px; }
  .tn-lounge { position: static; padding: 0; }
  .tn-glasses { opacity: 0; }
  .tn-lounge h3 { position: absolute; top: 791px; left: 348px; width: 1260px; margin: 0; font-size: 40px; line-height: 50px; }
  .tn-lounge p { position: absolute; top: 859px; left: 602px; width: 752px; max-width: none; margin: 0; font-size: 17px; line-height: 22px; }
  .tn-lounge .tn-cta { position: absolute; top: 925px; left: 632px; width: 659px; min-width: 659px; min-height: 94px; padding: 0; border-radius: 33px; background: transparent; font-size: 26px; }

  .tn-downloads { height: 565px; min-height: 565px; grid-template-columns: 951px 969px; }
  .tn-download { position: relative; padding: 0; background: transparent; }
  .tn-download-label { position: absolute; top: 82px; left: 140px; width: 400px; height: 37px; margin: 0; padding: 5px 11px; background: transparent !important; font-size: 20px; line-height: 27px; }
  .tn-download-exhibitors .tn-download-label { left: 59px; }
  .tn-download h2 { position: absolute; top: 163px; left: 143px; width: 549px; margin: 0; font-size: 50px; line-height: 50px; }
  .tn-download-exhibitors h2 { left: 59px; width: 536px; }
  .tn-download p { position: absolute; top: 341px; left: 143px; width: 733px; margin: 0; font-size: 18px; line-height: 22px; }
  .tn-download-exhibitors p { left: 59px; }
  .tn-file-link { position: absolute; top: 390px; left: 143px; width: 360px; min-height: 50px; padding: 0 24px 0 8px; background: transparent !important; font-size: 16px; }
  .tn-download-exhibitors .tn-file-link { top: 391px; left: 59px; margin: 0; }
  .tn-download-exhibitors .tn-file-link + .tn-file-link { top: 452px; }

  .tn-focus { height: 470px; min-height: 470px; display: block; }
  .tn-focus-image { position: absolute; top: 0; right: auto; bottom: auto; left: 0; width: 951px; height: 615px; min-height: 615px; background-size: 690px auto; background-position: 55px -3px; }
  .tn-focus-copy { position: absolute; top: 50px; left: 968px; width: 812px; padding: 0; display: block; }
  .tn-focus-copy .tn-kicker { margin: 0; font-size: 20px; line-height: 39px; }
  .tn-focus-copy h2 { margin: 0; font-size: 45px; line-height: 55px; }
  .tn-focus-copy p:not(.tn-kicker) { width: 701px; margin: 20px 0 0; font-size: 17px; line-height: 20px; }
  .tn-focus-copy h2 + p { margin-top: 22px !important; }

  .tn-offer { height: 303px; padding: 0; }
  .tn-offer h2 { position: absolute; top: 45px; left: 416px; width: 1130px; max-width: none; margin: 0; font-size: 45px; line-height: 55px; }
  .tn-offer p { position: absolute; top: 179px; left: 645px; width: 646px; max-width: none; margin: 0; font-size: 17px; line-height: 22px; }

  .tn-recruit { height: 370px; min-height: 370px; display: block; overflow: hidden; }
  .tn-recruit-copy { position: absolute; top: 19px; left: 140px; width: 709px; padding: 0; }
  .tn-recruit-copy .tn-kicker { margin: 0; font-size: 20px; line-height: 39px; }
  .tn-recruit-copy h2 { margin: 1px 0 0; font-size: 45px; line-height: 55px; }
  .tn-recruit-copy p:not(.tn-kicker) { width: 635px; margin: 17px 0 0; font-size: 17px; line-height: 20px; }
  .tn-recruit-image { position: absolute; top: -17px; left: 968px; width: 997px; height: 386px; }
  .tn-recruit-image::after { display: none; }

  .tn-registration { height: 520px; padding: 0; display: block; }
  .tn-registration-copy { position: absolute; top: 73px; left: 140px; width: 700px; }
  .tn-registration-copy .tn-kicker { margin: 0; font-size: 20px; line-height: 39px; }
  .tn-registration-copy h2 { margin: 55px 0 0; font-size: 45px; line-height: 55px; }
  .tn-registration-copy > p:not(.tn-kicker) { width: 635px; max-width: none; margin: 13px 0 0; font-size: 17px; line-height: 20px; }
  .tn-form-motif { opacity: 0; }
  .tn-registration-form-wrap { position: absolute; top: 40px; left: 965px; width: 638px; }
  .tn-registration-form-wrap h3 { margin: 0 0 35px 3px; font-size: 30px; line-height: 30px; }
  .tn-fields { display: grid; grid-template-columns: 304px 312px; gap: 19px 22px; }
  .tn-fields input { height: 60px; padding: 0 25px; background: transparent; font-size: 16px; }
  .tn-fields label:nth-child(5) { width: 301px; margin-left: 3px; }
  .tn-fields label:nth-child(6) { width: 301px; margin-left: -4px; }
  .tn-check { width: 620px; margin: 34px 0 0 3px; font-size: 11px; line-height: 13px; }
  .tn-check + .tn-check { margin-top: 0; }
  .tn-form button { width: 360px; height: 50px; margin: 28px 0 0 3px; background: transparent; font-size: 16px; }
  .tn-form-message { position: absolute; top: 400px; left: 0; }

  .tn-institutions { height: 180px; padding: 0; }
  .tn-institutions h2 { position: absolute; top: 19px; left: 815px; width: 294px; margin: 0; font-size: 15px; line-height: 42px; }
  .tn-logo-slots { position: absolute; top: 60px; left: 482px; display: grid; grid-template-columns: repeat(3, 268px); gap: 78px; margin: 0; }
  .tn-logo-slot { height: 95px; border: 0; background: transparent; }

  .tn-footer { height: 362px; padding: 0; border-bottom: 63px solid #000; }
  .tn-footer-brands { position: absolute; top: 0; left: 140px; width: 1640px; height: 130px; grid-template-columns: 240px 1fr 230px; }
  .tn-footer-brands img, .tn-footer-rule { opacity: 0; }
  .tn-footer-info { position: absolute; top: 177px; left: 140px; width: 1640px; display: grid; grid-template-columns: 240px 1fr 260px; gap: 36px; margin: 0; align-items: start; }
  .tn-footer-info p { font-size: 17px; line-height: 20px; }
  .tn-footer-info strong { margin: 0 0 14px; font-size: 20px; line-height: 20px; }
  .tn-footer-links { padding-top: 9px; font-size: 14px !important; justify-self: end; width: 260px; }
}
@media (min-width: 1200px) {
  .tn-hero::before { background-size: 3460px auto; background-position: 0 -439px; }
  .tn-paths-head, .tn-path-grid,
  .tn-experience .tn-kicker, .tn-experience h2, .tn-intro,
  .tn-card-content, .tn-lounge h3, .tn-lounge p, .tn-lounge .tn-cta { z-index: 2; }
  .tn-cards, .tn-card { z-index: auto; }
  .tn-focus-image { background-color: transparent; background-size: 707px auto; background-position: 57px -254px; }
  .tn-recruit-image { z-index: 0; background: none; }
  .tn-recruit-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("../images/recruitment.webp") center 77.6% / cover no-repeat;
    transform: scaleX(-1);
  }
  .tn-recruit-image::after {
    display: none;
  }
  .tn-recruit-copy { z-index: 2; }
}
@media (min-width: 1200px) {
  html { scrollbar-width: none; }
  html::-webkit-scrollbar { width: 0; height: 0; }
}
