.press-page {
  background:
    radial-gradient(circle at 16% 6%, rgba(255, 48, 99, .12), transparent 30rem),
    radial-gradient(circle at 84% 8%, rgba(47, 161, 255, .13), transparent 32rem),
    #02050d;
}

.press-hero {
  position: relative;
  display: grid;
  min-height: 820px;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .62fr);
  align-items: center;
  gap: clamp(55px, 8vw, 110px);
  overflow: hidden;
  padding: 145px max(24px, calc((100vw - var(--max)) / 2)) 105px;
  isolation: isolate;
}

.press-hero::after {
  position: absolute;
  z-index: -3;
  inset: auto 0 0;
  height: 220px;
  content: "";
  background: linear-gradient(transparent, var(--ink));
}

.press-grid {
  position: absolute;
  z-index: -5;
  inset: 0;
  opacity: .4;
  background-image:
    linear-gradient(rgba(68, 137, 211, .11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(68, 137, 211, .11) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(circle at 50% 40%, black, transparent 78%);
}

.press-hero-copy { max-width: 720px; }
.press-hero h1,
.press-section h2,
.press-download h2 { margin: 0; letter-spacing: -.055em; line-height: .98; }
.press-hero h1 { font-size: clamp(3.4rem, 7vw, 7.7rem); }
.press-deck { max-width: 680px; margin: 28px 0 0; color: #a9b5c8; font-size: clamp(1.05rem, 1.55vw, 1.32rem); line-height: 1.7; }

.press-icon-wrap { position: relative; justify-self: center; width: min(100%, 430px); text-align: center; }
.press-icon-wrap img { position: relative; z-index: 1; width: 100%; border-radius: 24%; box-shadow: 0 40px 100px rgba(0, 0, 0, .66), 0 0 0 1px rgba(255, 255, 255, .12); }
.press-icon-wrap p { margin: 19px 0 0; color: #728199; font-size: .68rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.press-icon-glow { position: absolute; inset: 8%; border-radius: 30%; background: linear-gradient(90deg, rgba(255, 35, 83, .55), rgba(28, 145, 255, .58)); filter: blur(70px); opacity: .6; }

.press-section { width: min(calc(100% - 48px), var(--max)); margin: 0 auto; padding: clamp(85px, 11vw, 145px) 0; }
.press-intro { max-width: 850px; }
.press-intro h2,
.press-heading h2,
.developer-story h2 { font-size: clamp(2.65rem, 5.4vw, 5.2rem); }
.press-intro > p:last-child,
.press-heading > p,
.developer-story > p:last-child { margin: 26px 0 0; color: var(--muted); font-size: 1.04rem; line-height: 1.8; }

.fact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 58px 0 0; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--line); }
.fact-grid div { min-height: 124px; padding: 28px; background: rgba(6, 14, 28, .96); }
.fact-grid dt { margin-bottom: 13px; color: #667791; font-size: .65rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.fact-grid dd { margin: 0; color: #edf6ff; font-size: 1rem; font-weight: 800; }
.fact-link { color: #8fd1ff; }
.fact-link:hover, .fact-link:focus-visible { color: #fff; }

.video-card { display: grid; grid-template-columns: minmax(260px, .62fr) minmax(0, 1.38fr); align-items: center; gap: 50px; margin-top: 72px; padding: clamp(24px, 4vw, 48px); border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(135deg, rgba(255, 50, 96, .055), rgba(7, 16, 32, .95) 38% 68%, rgba(48, 158, 255, .065)); }
.video-copy h3 { margin: 0; font-size: clamp(2rem, 3.2vw, 3.5rem); letter-spacing: -.045em; }
.video-copy > p:last-child { margin: 19px 0 0; color: #8d9bae; line-height: 1.7; }
.video-card video { width: 100%; aspect-ratio: 910 / 512; border: 1px solid rgba(108, 166, 227, .25); border-radius: 18px; background: #000; box-shadow: 0 28px 70px rgba(0, 0, 0, .48); object-fit: contain; }

.feature-summary { width: 100%; max-width: none; padding-right: max(24px, calc((100vw - var(--max)) / 2)); padding-left: max(24px, calc((100vw - var(--max)) / 2)); border-top: 1px solid rgba(88, 145, 206, .13); border-bottom: 1px solid rgba(88, 145, 206, .13); background: rgba(5, 12, 24, .57); }
.press-feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: 58px; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--line); }
.press-feature-grid article { min-height: 260px; padding: 30px; background: linear-gradient(150deg, rgba(13, 29, 52, .97), rgba(4, 10, 21, .97)); }
.press-feature-grid article > span { color: #52627a; font-size: .68rem; font-weight: 900; letter-spacing: .15em; }
.press-feature-grid h3 { margin: 69px 0 13px; font-size: 1rem; }
.press-feature-grid p { margin: 0; color: #8391a6; font-size: .8rem; line-height: 1.65; }

.press-heading { display: grid; grid-template-columns: 1fr .72fr; align-items: end; gap: 70px; margin-bottom: 54px; }
.press-heading > p { margin-bottom: 7px; }
.press-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.press-shot { margin: 0; overflow: hidden; border: 1px solid rgba(91, 153, 218, .21); border-radius: 20px; background: rgba(7, 16, 31, .86); box-shadow: 0 25px 60px rgba(0, 0, 0, .25); }
.press-shot > a:first-child { display: block; overflow: hidden; background: #02050b; }
.press-shot img { width: 100%; transition: transform .35s ease, filter .35s ease; }
.press-shot:hover img { transform: scale(1.018); filter: brightness(1.06); }
.press-shot figcaption { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px; }
.press-shot figcaption span { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
.press-shot figcaption b { font-size: .78rem; }
.press-shot figcaption small { overflow: hidden; color: #697a91; font-size: .62rem; text-overflow: ellipsis; white-space: nowrap; }
.press-shot figcaption > a { flex: 0 0 auto; color: #8ed0ff; font-size: .64rem; font-weight: 900; }
.press-shot:last-child { grid-column: 2 / 3; }

.artwork-section { border-top: 1px solid rgba(89, 146, 208, .13); }
.artwork-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.artwork-card { display: grid; grid-template-columns: minmax(180px, .9fr) 1fr; align-items: center; gap: 30px; padding: 28px; border: 1px solid var(--line); border-radius: 24px; background: rgba(7, 16, 31, .78); }
.artwork-preview { display: grid; min-height: 270px; place-items: center; overflow: hidden; border: 1px solid rgba(91, 153, 218, .18); border-radius: 18px; background: linear-gradient(rgba(64, 127, 196, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(64, 127, 196, .07) 1px, transparent 1px), #030812; background-size: 28px 28px; }
.icon-preview img { width: 72%; border-radius: 23%; box-shadow: 0 23px 50px rgba(0, 0, 0, .55); }
.wordmark-preview { padding: 25px; color: var(--red); font-size: clamp(1.6rem, 3.6vw, 3rem); font-weight: 950; letter-spacing: .035em; }
.wordmark-preview b { color: var(--blue); }
.artwork-card h3 { margin: 0 0 7px; font-size: 1.28rem; }
.artwork-card p { margin: 0 0 24px; color: #74849a; font-size: .75rem; }
.asset-download { display: inline-flex; padding: 11px 14px; border: 1px solid rgba(70, 171, 255, .28); border-radius: 999px; color: #bde6ff; background: rgba(43, 151, 255, .07); font-size: .7rem; font-weight: 850; }

.developer-section { display: grid; grid-template-columns: 1.25fr .75fr; gap: 70px; align-items: start; }
.developer-story > p:last-child { max-width: 720px; }
.contact-card { padding: 33px; border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(145deg, rgba(14, 30, 54, .96), rgba(5, 11, 22, .95)); }
.contact-card h3 { margin: 0 0 10px; font-size: 1.65rem; }
.contact-card > a { color: #8dd0ff; font-size: .84rem; font-weight: 750; }
.contact-links { display: flex; flex-direction: column; gap: 12px; margin-top: 30px; padding-top: 25px; border-top: 1px solid rgba(98, 154, 216, .17); }
.contact-links a { color: #9ba9bc; font-size: .77rem; font-weight: 750; }
.contact-links a::after { float: right; color: #4e89bb; content: "↗"; }

.press-download { display: flex; width: min(calc(100% - 48px), var(--max)); align-items: center; justify-content: space-between; gap: 48px; margin: 0 auto 110px; padding: clamp(35px, 5vw, 62px); border: 1px solid rgba(78, 161, 241, .26); border-radius: 28px; background: radial-gradient(circle at 88% 22%, rgba(49, 159, 255, .12), transparent 34%), radial-gradient(circle at 5% 90%, rgba(255, 53, 98, .1), transparent 30%), rgba(7, 16, 31, .92); }
.press-download h2 { font-size: clamp(2.2rem, 4.2vw, 4.4rem); }
.press-download > div > p:last-child { max-width: 680px; margin: 19px 0 0; color: #8f9db1; line-height: 1.7; }
.press-download .button { flex: 0 0 auto; }

@media (max-width: 1000px) {
  .press-hero { grid-template-columns: 1fr minmax(260px, .48fr); }
  .press-feature-grid { grid-template-columns: 1fr 1fr; }
  .press-gallery { grid-template-columns: repeat(3, 1fr); }
  .press-shot:last-child { grid-column: auto; }
  .artwork-card { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .press-hero { min-height: auto; grid-template-columns: 1fr; gap: 62px; padding-top: 122px; text-align: center; }
  .press-hero-copy { display: flex; align-items: center; flex-direction: column; }
  .press-icon-wrap { width: min(72vw, 360px); }
  .fact-grid { grid-template-columns: 1fr 1fr; }
  .video-card { grid-template-columns: 1fr; gap: 28px; }
  .press-heading { grid-template-columns: 1fr; gap: 5px; }
  .press-gallery { grid-template-columns: 1fr 1fr; }
  .artwork-grid { grid-template-columns: 1fr; }
  .developer-section { grid-template-columns: 1fr; gap: 45px; }
  .press-download { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 520px) {
  .press-section { width: min(calc(100% - 30px), var(--max)); }
  .press-hero { padding-right: 18px; padding-left: 18px; }
  .press-hero h1 { font-size: clamp(3rem, 15vw, 4.35rem); }
  .press-deck { font-size: 1rem; }
  .fact-grid { grid-template-columns: 1fr; }
  .fact-grid div { min-height: 105px; }
  .press-feature-grid { grid-template-columns: 1fr; }
  .press-feature-grid article { min-height: 210px; }
  .press-feature-grid h3 { margin-top: 45px; }
  .press-gallery { grid-template-columns: 1fr; }
  .press-shot { max-width: 390px; margin: 0 auto; }
  .artwork-card { padding: 19px; }
  .artwork-preview { min-height: 230px; }
  .press-download { width: min(calc(100% - 30px), var(--max)); margin-bottom: 75px; }
}

@media (prefers-reduced-motion: reduce) {
  .press-shot img { transition: none; }
}
