/* ===================================================================
   Intel AI Software Bundle — responsive one-pager
   Breakpoints: Desktop 1440, Mobile 402
   All numeric positions derive from Figma frame coordinates and are
   expressed in container-query units (cqw) so each section scales
   fluidly to its viewport width.
   =================================================================== */

@font-face {
  font-family: "IntelOne Display";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-display-latin-light.e8ee702d.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Display";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-display-latin-regular.7d30ccfa.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Display";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-display-latin-medium.38e8d51a.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Display";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-display-latin-bold.1e07e246.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Display Heading";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-headline-bolditalic.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Text";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-text-regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Text";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-text-medium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IntelOne Text";
  src: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/intelone-text-bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
html::-webkit-scrollbar { display: none; }

html, body {
  background: #000;
  color: #fff;
  font-family: "IntelOne Display", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body { overflow-x: hidden; }

.page {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  background: #000;
}

section {
  position: relative;
  width: 100%;
  container-type: inline-size;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center top;
  overflow: hidden;
}

img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
sup { font-size: 0.55em; vertical-align: super; line-height: 0; }

/* ===================================================================
   DESKTOP  (default: up to 1440)
   All positions in cqw derived from a 1440-wide design.
   =================================================================== */

/* ---------- Section 1 — Hero Header ---------- */
.s1 {
  aspect-ratio: 1440 / 1086;
  background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/DesktopHeaderBladeBackground.png");
}

.s1-badge {
  position: absolute;
  left: 5.76cqw;
  top: 5.69cqw;
  width: 7.64cqw;
  height: 7.64cqw;
  object-fit: contain;
  filter: drop-shadow(0 0 3.22cqw rgba(216,163,245,0.66));
}

.s1-chip {
  position: absolute;
  left: 5.76cqw;
  top: 20.28cqw;
  font-size: 2.15cqw;
  font-weight: 400;
  font-style: italic;
  letter-spacing: 0.01em;
}

.s1-heading {
  position: absolute;
  left: 5.76cqw;
  top: 24.31cqw;
  width: 47.22cqw;
  font-family: "IntelOne Display Heading", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-style: italic;
  line-height: 1.02;
  display: flex;
  flex-direction: column;
}
.s1-heading .l1 { font-size: 6.60cqw; }
.s1-heading .l2 { font-size: 6.60cqw; }
.s1-heading em { color: #d8a3f5; font-style: italic; }

.s1-adobe {
  position: absolute;
  left: 13.68cqw;
  top: 49.51cqw;
  display: flex;
  align-items: center;
  gap: 1.39cqw;
}
.s1-adobe-icon {
  width: 4.86cqw;
  height: 4.72cqw;
  object-fit: contain;
}
.s1-adobe-text {
  font-size: 0.97cqw;
  line-height: 1.59;
}
.s1-adobe-text strong {
  font-size: 1.39cqw;
  font-weight: 500;
  line-height: 1;
  display: block;
  margin-bottom: 0.28cqw;
}

.s1-sub {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 59.51cqw;
  width: 79.24cqw;
  font-size: 3.13cqw;
  line-height: 1.2;
  text-align: center;
  text-shadow: 0 0.28cqw 1.01cqw #66009d;
}
.s1-sub em { color: #d8a3f5; font-style: normal; font-weight: 700; }

.s1-cta {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 70.49cqw;
  font-size: 2.43cqw;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}

/* ---------- Section 2 — Unlock More Everything ---------- */
.s2 {
  aspect-ratio: 1440 / 685;
  background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/DesktopInfoBladeBackground.png");
}

.s2-heading {
  position: absolute;
  left: 49.24cqw;
  top: 8.96cqw;
  width: 41.81cqw;
  font-size: 5.21cqw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05cqw;
}

.s2-body {
  position: absolute;
  left: 49.24cqw;
  top: 21.53cqw;
  width: 42.43cqw;
  font-size: 1.04cqw;
  line-height: 1.2;
}
.s2-body p { margin-bottom: 1em; }
.s2-body p:last-child { margin-bottom: 0; }

.s2-cta {
  position: absolute;
  left: 49.24cqw;
  top: 35.18cqw;
  font-size: 1.39cqw;
  font-weight: 500;
}

/* ---------- Section 3 — Experiences Powered by Intel ---------- */
.s3 {
  aspect-ratio: 1440 / 1054;
  background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/DesktopSlideBladeBackground.png");
}

.s3-heading {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 2.85cqw;
  width: 100cqw;
  font-size: 5.21cqw;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.05cqw;
  white-space: nowrap;
}

.slides {
  position: absolute;
  top: 15.42cqw;
  left: 0;
  width: 100%;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.slides::-webkit-scrollbar { display: none; }

.slide {
  flex: 0 0 38.61cqw;     /* 556/1440 */
  height: 47.71cqw;       /* 687/1440 */
  position: relative;
  scroll-snap-align: start;
}
.slide img {
  position: absolute;
  left: 3.82cqw;          /* 55/1440 */
  top: 0;
  width: 27.29cqw;        /* 393/1440 */
  height: 32.78cqw;       /* 472/1440 */
  object-fit: cover;
  border-radius: 8px;
}
.slide h3 {
  position: absolute;
  left: 3.89cqw;          /* 56/1440 */
  top: 34.58cqw;          /* 498/1440 */
  width: 30.90cqw;        /* 445/1440 */
  font-size: 1.39cqw;     /* 20/1440 */
  font-weight: 700;
  line-height: 1.2;
}
.slide p {
  position: absolute;
  left: 3.82cqw;          /* 55/1440 */
  top: 38.54cqw;          /* 555/1440 */
  width: 30.97cqw;        /* 446/1440 */
  font-size: 1.04cqw;     /* 15/1440 */
  font-weight: 400;
  line-height: 1.2;
}

/* ---------- Slide dot indicators ---------- */
.slide-dots {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 2.08cqw;        /* 30/1440 */
  display: flex;
  gap: 0.83cqw;            /* 12/1440 */
  z-index: 10;
}
.dot {
  width: 0.89cqw;          /* 10/1440 */
  height: 0.89cqw;
  min-width: 8px;
  min-height: 8px;
  border-radius: 50%;
  border: 1.5px solid rgba(255,255,255,0.6);
  background: transparent;
  cursor: pointer;
  padding: 0;
  transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
.dot:hover {
  border-color: #fff;
  background: rgba(255,255,255,0.3);
}
.dot.active {
  background: #fff;
  border-color: #fff;
  transform: scale(1.25);
}
/* Desktop: show 2 dots, hide mobile set */
.dot-mobile { display: none; }
.dot-desktop { display: inline-block; }

/* ---------- Section 4 — Unlock More with Ultra (Software Titles) ---------- */
.s4 {
  aspect-ratio: 1440 / 3179;
  background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/DesktopTitlesBackgroundBlade.png");
}

.s4-heading {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 7.92cqw;
  width: 100cqw;
  font-size: 5.21cqw;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.05cqw;
  white-space: nowrap;
}

.s4-sub {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 15.00cqw;
  width: 78.82cqw;
  font-size: 2.08cqw;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.02cqw;
}

.titles-grid {
  position: absolute;
  left: 15.14cqw;
  top: 72.43cqw;
  width: 72.01cqw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 6.11cqw;
  row-gap: 6.32cqw;       /* 91/1440 — visual gap between card rows */
}

.title-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.title-card-img {
  width: 100%;
  aspect-ratio: 473 / 307;
  overflow: hidden;
  border-radius: 6px;
}
.title-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.title-card h3 {
  font-family: "IntelOne Display", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.39cqw;     /* 20/1440 */
  font-weight: 700;
  line-height: 1.2;
  margin-top: 2.01cqw;
  max-width: 29.10cqw;    /* 419/1440 */
  width: 100%;
  text-align: left;
}

.title-card-sub {
  font-family: "IntelOne Text", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.04cqw;     /* 15/1440 */
  font-weight: 500;
  line-height: 1.2;
  margin-top: 1.04cqw;
  max-width: 29.10cqw;    /* 419/1440 */
  width: 100%;
  text-align: left;
}

.title-card-body {
  font-family: "IntelOne Text", "Helvetica Neue", Arial, sans-serif;
  font-size: 0.90cqw;     /* 13/1440 */
  font-weight: 400;
  line-height: 1.2;
  margin-top: 1.04cqw;
  max-width: 29.10cqw;    /* 419/1440 */
}

.s4-foot {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 211.46cqw;
  width: 58.19cqw;
  font-size: 2.08cqw;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.02cqw;
}

.s4-cta {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 215.42cqw;
  font-size: 1.39cqw;
  font-weight: 500;
  text-align: center;
}

/* ---------- Section 6 — How to Claim + Power + Legal ---------- */
.s6 {
  aspect-ratio: 1440 / 2293;
  background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/DesktopLegalBackground.png");
}

.s6-heading {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 7.92cqw;
  width: 59.51cqw;
  font-size: 5.21cqw;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.05cqw;
}

.s6-sub {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 17.22cqw;
  width: 70.63cqw;
  font-size: 1.74cqw;
  font-weight: 500;
  line-height: 1.28;
  text-align: center;
  letter-spacing: 0.02cqw;
}

/* Decorative instruction box */
.s6::before {
  content: "";
  position: absolute;
  left: 8.54cqw;
  top: 3.75cqw;
  width: 80.76cqw;
  height: 73.61cqw;
  background: rgba(70,13,97,0.53);
  border: 1px solid #6a4280;
  border-radius: 10px;
  pointer-events: none;
}

.steps {
  position: absolute;
  left: 13.54cqw;
  top: 27.05cqw;
  width: 72.15cqw;
  list-style: none;
  font-size: 1.79cqw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0..02cqw;
}
.steps li {
  display: flex;
  gap: 1.39cqw;
  margin-bottom: 3.47cqw;
}
.steps li:nth-child(2),
.steps li:nth-child(3) { line-height: 1.3; }
.steps .num {
  flex: 0 0 2.22cqw;
  font-weight: 500;
}
.steps .txt { flex: 1; }
.steps a { text-decoration: none; }

.s6-install {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 64.79cqw;
  width: 56.94cqw;
  font-size: 1.04cqw;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}

.s6-cta {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 69.24cqw;
  font-size: 2.08cqw;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.02cqw;
  white-space: nowrap;
}

.s6-power {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 82.99cqw;
  width: 100cqw;
  font-size: 5.21cqw;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.05cqw;
  white-space: nowrap;
}

.s6-badges {
  position: absolute;
  left: 34.03cqw;
  top: 93.61cqw;
  width: 28.89cqw;
  height: 7.78cqw;
  object-fit: contain;
  filter: drop-shadow(-1.32cqw 0.83cqw 7.38cqw rgba(122,65,255,0.28));
}

.s6-legal {
  position: absolute;
  left: 4.86cqw;
  top: 105.42cqw;
  width: 91.67cqw;
  font-size: 1.04cqw;
  line-height: 1.2;
  text-align: left;
  overflow-wrap: break-word;
  word-break: break-word;
}
.s6-legal p { margin-bottom: 1.4em; }
.s6-legal p:last-child { margin-bottom: 0; }
.s6-legal a { text-decoration: underline; overflow-wrap: break-word; word-break: break-all; }

/* ===================================================================
   MOBILE  (≤ 600px — design at 402 wide)
   =================================================================== */
@media (max-width: 600px) {

  /* ---------- S1 Hero ---------- */
  .s1 {
    aspect-ratio: 402 / 1156;
    background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/MobileHeaderBladeBackground.png");
  }

  .s1-badge {
    left: 35.57cqw;
    top: 229.60cqw;
    width: 28.86cqw;
    height: 28.86cqw;
  }

  .s1-chip {
    left: 10.95cqw;
    top: 16.42cqw;
    font-size: 4.48cqw;
  }

  .s1-heading {
    left: 10.95cqw;
    top: 21.14cqw;
    width: 87.06cqw;
  }
  .s1-heading .l1 { font-size: 11.94cqw; }
  .s1-heading .l2 { font-size: 11.94cqw; }

  .s1-adobe {
    left: 14.68cqw;
    top: 200.50cqw;
    gap: 3.98cqw;
  }
  .s1-adobe-icon {
    width: 18.41cqw;
    height: 17.91cqw;
  }
  .s1-adobe-text {
    font-size: 3.73cqw;
    line-height: 1.59;
  }
  .s1-adobe-text strong {
    font-size: 6.22cqw;
    margin-bottom: 0.50cqw;
  }

  .s1-sub {
    left: 9.70cqw;
    right: 3.23cqw;
    transform: none;
    top: 150.00cqw;
    width: auto;
    font-size: 7.96cqw;
    line-height: 1.1;
    text-shadow: none;
    font-weight: 400;
    text-align: left;
  }
  .s1-sub em { font-weight: 400; }

  .s1-cta {
    top: 270.15cqw;
    font-size: 6.22cqw;
    font-weight: 500;
  }

  /* ---------- S2 Unlock More Everything ---------- */
  .s2 {
    aspect-ratio: 402 / 921;
    background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/MobileInfoBladeBackground.png");
  }

  .s2-heading {
    left: 50%;
    transform: translateX(-50%);
    top: 6.22cqw;
    width: 100cqw;
    font-size: 11.19cqw;
    text-align: center;
    letter-spacing: 0.11cqw;
  }

  .s2-body {
    left: 14.68cqw;
    top: 134.83cqw;
    width: 80.60cqw;
    font-size: 3.73cqw;
  }

  .s2-cta {
    left: 50%;
    transform: translateX(-50%);
    top: 216.42cqw;
    font-size: 6.22cqw;
    text-align: center;
  }

  /* ---------- S3 Experiences ---------- */
  .s3 {
    aspect-ratio: 402 / 924;
    background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/MobileSlideBladeBackground.png");
  }

  .s3-heading {
    top: 11.69cqw;
    font-size: 11.19cqw;
    letter-spacing: 0.11cqw;
    white-space: normal;
  }

  .slides {
    top: 43.78cqw;
  }

  .slide {
    flex: 0 0 138.31cqw;  /* 556/402 — keeps slides at Figma proportions */
    height: 170.90cqw;    /* 687/402 */
  }
  .slide img {
    left: 13.68cqw;       /* 55/402 */
    width: 97.76cqw;      /* 393/402 */
    height: 117.41cqw;    /* 472/402 */
  }
  .slide h3 {
    left: 13.93cqw;       /* 56/402 */
    top: 123.88cqw;       /* 498/402 */
    width: 110.70cqw;     /* 445/402 */
    font-size: 4.98cqw;   /* 20/402 */
  }
  .slide p {
    left: 13.68cqw;       /* 55/402 */
    top: 138.06cqw;       /* 555/402 */
    width: 92.04cqw;      /* 370/402 */
    font-size: 3.48cqw;   /* 14/402 */
  }

  /* Slide dots — mobile: show 4 dots, hide desktop set */
  .dot-desktop { display: none; }
  .dot-mobile { display: inline-block; }
  .slide-dots {
    bottom: 4.98cqw;
    gap: 2.99cqw;          /* 12/402 */
  }
  .dot {
    width: 2.49cqw;        /* 10/402 */
    height: 2.49cqw;
  }

  /* ---------- S4 Software Titles ---------- */
  .s4 {
    aspect-ratio: 402 / 4498;
    background-image: url("https://intelredemptionstorage.blob.core.windows.net/promo/26Q1-04/assets/MobileTitlebladebackground.png");
  }

  .s4-heading {
    top: 24.88cqw;
    font-size: 13.93cqw;
    width: 84.83cqw;
    letter-spacing: 0.14cqw;
    white-space: normal;
  }

  .s4-sub {
    top: 62.19cqw;
    width: 82.59cqw;
    font-size: 4.98cqw;
    font-weight: 400;
  }

  .titles-grid {
    left: 0;
    top: 200.75cqw;
    width: 100cqw;
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 0;
  }

  .title-card {
    align-items: flex-start; /* left-align text on mobile */
  }

  .title-card-img {
    aspect-ratio: 403 / 262;
    border-radius: 0;
    width: 100%;             /* full-bleed images */
  }

  .title-card h3 {
    font-size: 4.98cqw;     /* 20/402 */
    margin-top: 8.46cqw;    /* ~34px (+10px) */
    padding: 0 4.73cqw;     /* ~19px from edge */
    max-width: none;
    width: 100%;
    text-align: left;
  }

  .title-card-sub {
    font-size: 3.73cqw;     /* 15/402 */
    margin-top: 4.98cqw;    /* ~20px (+10px) */
    padding: 0 4.73cqw;
    max-width: none;
    width: 100%;
    text-align: left;
  }

  .title-card-body {
    font-size: 3.23cqw;     /* 13/402 */
    margin-top: 4.98cqw;    /* ~20px (+10px) */
    padding: 0 4.73cqw;
    margin-bottom: 0;
    max-width: none;
    width: 100%;
    min-height: 200px;      /* default 200px per Figma */
  }

  /* Canvid card (4th) — 250px per Figma */
  .titles-grid .title-card:nth-child(4) .title-card-body {
    min-height: 250px;
  }

  .s4-foot {
    top: 1087.57cqw;        /* Figma: (7365-3001)/402 */
    font-size: 4.98cqw;
    width: 84.83cqw;
    line-height: 1.37;
  }

  .s4-cta {
    top: 1106.73cqw;        /* Figma: (7442-3001)/402 */
    font-size: 3.73cqw;
  }


  /* ---------- S6 How to Claim + Power + Legal ---------- */
  .s6 {
    aspect-ratio: 402 / 2200;
    background-image: none;
    background-color: #000;
  }

  .s6::before {
    left: 6.97cqw;
    top: 3.98cqw;
    width: 86.57cqw;
    height: 180.35cqw;
  }

  .s6-heading {
    top: 20.15cqw;
    width: 73.63cqw;
    font-size: 7.46cqw;
    letter-spacing: 0.07cqw;
  }

  .s6-sub {
    top: 33.33cqw;
    width: 68.16cqw;
    font-size: 3.73cqw;
    font-weight: 400;
    letter-spacing: 0.04cqw;
  }

  .steps {
    left: 12.69cqw;
    top: 52.74cqw;
    width: 75.12cqw;
    font-size: 3.3cqw;
    line-height: 1.2;
    letter-spacing: 0;
  }
  .steps li {
    margin-bottom: 5.97cqw;
    gap: 3.49cqw;
  }
  .steps .num { flex: 0 0 5cqw; }

  .s6-install {
    top: 151.49cqw;
    width: 66.92cqw;
    font-size: 2.99cqw;
  }

  .s6-cta {
    top: 172.14cqw;
    font-size: 4.98cqw;
  }

  .s6-power {
    top: 199.00cqw;
    width: 84.33cqw;
    font-size: 9.95cqw;
    letter-spacing: 0.10cqw;
    white-space: normal;
  }

  .s6-badges {
    left: 18.91cqw;
    top: 232.09cqw;
    width: 61.69cqw;
    height: 16.67cqw;
  }

  .s6-legal {
    left: 4.98cqw;
    top: 263.68cqw;
    width: 90.30cqw;
    font-size: 2.99cqw;
    text-align: left;
  }
}
