/* Hermes press kit: one left-aligned column, built on hermes.css tokens. */
.p-hero { position: relative; padding: clamp(28px, 5vw, 64px) 0 clamp(40px, 6vw, 72px); isolation: isolate; overflow-x: clip; }
.p-hero::before {
  content: "";
  position: absolute; left: -300px; top: -300px; width: 1200px; height: 900px;
  background:
    radial-gradient(closest-side at 35% 45%, rgba(76, 141, 255, 0.28), transparent),
    radial-gradient(closest-side at 60% 55%, rgba(91, 51, 240, 0.35), transparent);
  filter: blur(20px);
  z-index: -1;
}
.p-icon { width: 112px; height: 112px; margin: 0 0 24px -8px; }
.p-hero h1 { font-size: clamp(48px, 8vw, 96px); line-height: 1.02; font-weight: 800; letter-spacing: -0.035em; }
.p-hero .lede { max-width: 620px; margin-top: 28px; font-size: clamp(19px, 2.2vw, 22px); color: var(--text-2); }
.p-actions { display: flex; align-items: center; gap: 16px 28px; flex-wrap: wrap; margin-top: 32px; }
.p-mail { color: #949eff; font-weight: 600; text-underline-offset: 3px; }
.p-mail:hover { color: #c3c8ff; }

.press { padding-bottom: 120px; display: grid; gap: 56px; }
.press > section { max-width: 720px; }
.press > .p-wide { max-width: none; }
.press h2 { font-size: clamp(28px, 4vw, 36px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; margin-bottom: 16px; }
.press h3 { font-family: var(--sans); font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--text-3); margin: 24px 0 8px; }
.press h3:first-of-type { margin-top: 0; }
.press p, .press li { font-size: 18px; line-height: 1.6; color: var(--text-2); }
.press b { color: var(--text); font-weight: 600; }
.press ul { padding-left: 1.2em; display: grid; gap: 10px; }
.press li::marker { color: #949eff; }
.press a:not(.button):not(.asset) { color: #949eff; text-underline-offset: 3px; }
.press a:not(.button):not(.asset):hover { color: #c3c8ff; }
.press p + p { margin-top: 14px; }
.press .fine { margin-top: 20px; }

.p-deal { max-width: 720px; padding: 18px 22px; border-radius: 16px; border: 1px solid rgba(148, 158, 255, 0.4); background: radial-gradient(80% 160% at 0% 0%, rgba(76, 141, 255, 0.22), transparent 70%), var(--card); font-size: 18px; color: var(--text-2); }

.facts { display: grid; border-top: 1px solid var(--card-line); }
.facts > div { display: grid; grid-template-columns: 140px 1fr; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--card-line); font-size: 18px; }
.facts dt { color: var(--text-3); }
.facts dd { color: var(--text); overflow-wrap: anywhere; }

.shots { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 24px; }
.shots figure { display: grid; gap: 10px; }
.shots img { width: 100%; height: auto; border-radius: 12px; border: 1px solid var(--card-line); transition: transform .2s ease-out; }
.shots a:hover img { transform: translateY(-2px); }
.shots figcaption { font-size: 15px; color: var(--text-3); }

.assets { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.asset { display: flex; align-items: center; gap: 16px; padding: 16px; border-radius: 16px; background: var(--card); border: 1px solid var(--card-line); color: var(--text); text-decoration: none; transition: border-color .15s; }
.asset:hover { border-color: rgba(148, 158, 255, 0.5); }
.asset > img, .asset-wing, .asset-play { width: 64px; height: 64px; flex: none; }
.asset > img.asset-wide { width: 114px; height: 60px; object-fit: cover; border-radius: 8px; }
.asset-wing, .asset-play { display: grid; place-items: center; border-radius: 14px; background: linear-gradient(135deg, var(--a), var(--b)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); }
.asset-play svg { width: 26px; height: 26px; fill: #fff; }
.asset span:last-child { display: grid; font-size: 15px; color: var(--text-3); line-height: 1.4; }
.asset b { font-size: 17px; }

@media (max-width: 760px) {
  .shots { grid-template-columns: 1fr; }
  .facts > div { grid-template-columns: 1fr; gap: 2px; }
  .p-icon { width: 88px; height: 88px; }
}
