.sne-v3 {
  --pub-max: 1440px;
  --pub-gutter: clamp(24px, 3.35vw, 60px);
  --pub-grid-gap: clamp(18px, 1.45vw, 24px);
  --sne-surface-0: #080a0b;
  --sne-surface-1: #0a0d0f;
  --sne-surface-2: #0c1012;
  --sne-surface-line: rgba(243, 242, 238, .09);
  --sne-surface-line-strong: rgba(243, 242, 238, .16);
  --sne-paper: #dcdbd4;
  --sne-paper-text: #15191b;
  --sne-micro-fast: 150ms;
  --sne-micro-normal: 220ms;
  font-family: var(--sne-font-text);
  font-weight: var(--sne-text-weight);
  letter-spacing: var(--sne-text-tracking);
  background: var(--sne-surface-0);
}

/* Masthead */
.sne-v3 .pub-nav {
  border-bottom-color: rgba(243, 242, 238, .065);
  background: rgba(8, 10, 11, .74);
  backdrop-filter: blur(18px) saturate(112%);
  box-shadow: 0 10px 28px rgba(0,0,0,.08);
}
.sne-v3 .pub-nav__inner {
  min-height: 56px;
  gap: clamp(22px, 2.7vw, 40px);
}
.sne-v3 .pub-brand--candidate {
  display: inline-flex;
  width: 102px;
  color: var(--pub-text);
  --sne-wordmark-bg: var(--pub-bg);
}
.sne-v3 .pub-brand--candidate svg { display:block; width:100%; height:auto; }
.sne-v3 .pub-links { gap: clamp(15px, 1.35vw, 22px); }
.sne-v3 .pub-links a,
.sne-v3 .pub-nav__cta {
  font-family: var(--sne-font-text);
  font-size: 10.5px;
  letter-spacing: .018em;
  opacity: .76;
  transition: color var(--sne-micro-fast) ease, opacity var(--sne-micro-fast) ease;
}
.sne-v3 .pub-links a:hover,
.sne-v3 .pub-links a[aria-current='page'],
.sne-v3 .pub-nav__cta:hover { opacity: 1; }
.sne-v3 .pub-links a::after {
  right: 0;
  bottom: -6px;
  transform: scaleX(0);
  transform-origin: left center;
  opacity: .72;
  transition: transform var(--sne-micro-normal) cubic-bezier(.2,0,.38,.9), opacity var(--sne-micro-fast) ease;
}
.sne-v3 .pub-links a:hover::after,
.sne-v3 .pub-links a[aria-current='page']::after { transform: scaleX(1); }

/* Hero */
.sne-v3 .pub-hero {
  min-height: clamp(500px, 58svh, 620px);
  padding-top: clamp(58px, 7vh, 78px);
  padding-bottom: clamp(64px, 7.5vh, 86px);
  align-content: center;
  border-bottom: 0;
}
.sne-v3 .pub-hero .pub-kicker {
  grid-column: 1 / 7;
  margin-bottom: 16px;
  font-family: var(--sne-font-text);
  font-size: 9px;
  line-height: 1.25;
  letter-spacing: .155em;
}
.sne-v3 .pub-hero h1 {
  grid-column: 1 / 8;
  max-width: 12.4ch;
  margin: 0;
  font-family: var(--sne-font-display);
  font-size: clamp(41px, 3.42vw, 54px);
  font-weight: var(--sne-display-hero-weight);
  line-height: 1.075;
  letter-spacing: -.018em;
  text-wrap: pretty;
}
.sne-v3 .pub-hero > p {
  grid-column: 9 / 13;
  max-width: 39ch;
  align-self: start;
  margin: 2px 0 0;
  font-family: var(--sne-font-text);
  font-size: clamp(15.5px, .96vw, 17px);
  line-height: 1.76;
  letter-spacing: -.002em;
}
.sne-v3 .pub-hero .pub-actions {
  grid-column: 9 / 13;
  align-self: start;
  margin-top: 24px;
}

/* Optical type scale */
.sne-v3 .pub-copy h2,
.sne-v3 .pub-band h2 {
  max-width: 560px;
  margin: 16px 0 20px;
  font-family: var(--sne-font-display);
  font-size: clamp(36px, 3.15vw, 50px);
  font-weight: var(--sne-display-section-weight);
  line-height: 1.035;
  letter-spacing: -.031em;
  text-wrap: pretty;
}
.sne-v3 .pub-copy p,
.sne-v3 .pub-band p {
  max-width: 500px;
  font-family: var(--sne-font-text);
  font-size: clamp(16px, 1.04vw, 18px);
  line-height: 1.66;
  letter-spacing: -.004em;
}
.sne-v3 .pub-depth { margin-top: 24px; }

/* Statements and artifacts */
.sne-v3 .pub-statement {
  position: relative;
  padding-top: clamp(86px, 8.2vw, 122px);
  padding-bottom: clamp(94px, 8.8vw, 132px);
  border-bottom: 0;
}
.sne-v3 .pub-statement--artifact { align-items: center; }
.sne-v3 .pub-statement--artifact .pub-copy,
.sne-v3 .pub-statement--reverse .pub-copy { padding-top: 0; }
.sne-v3 .pub-statement--artifact:not(.pub-statement--reverse) { box-shadow: 0 0 0 100vmax var(--sne-surface-1); clip-path: inset(0 -100vmax); }
.sne-v3 .pub-statement--reverse { padding-top: clamp(96px, 8.8vw, 134px); box-shadow: 0 0 0 100vmax var(--sne-surface-0); clip-path: inset(0 -100vmax); }
.sne-v3 .pub-statement--artifact:not(.pub-statement--reverse) .pub-artifact { width:94%; justify-self:end; transform: translateY(-6px); }
.sne-v3 .pub-statement--reverse .pub-artifact { width:91%; justify-self:start; transform: translateY(4px); }

/* Reality */
.sne-v3 .pub-reality {
  position: relative;
  padding-top: clamp(94px, 8.7vw, 132px);
  padding-bottom: clamp(100px, 9.2vw, 140px);
  border-bottom: 0;
  box-shadow: 0 0 0 100vmax var(--sne-surface-2);
  clip-path: inset(0 -100vmax);
}
.sne-v3 .pub-reality .pub-index { grid-column:1 / 2; padding-top:4px; }
.sne-v3 .pub-reality blockquote {
  grid-column: 2 / 9;
  max-width: 820px;
  font-family: var(--sne-font-display);
  font-size: clamp(32px, 2.85vw, 44px);
  font-weight: 450;
  line-height: 1.105;
  letter-spacing: -.024em;
  text-wrap: pretty;
}
.sne-v3 .pub-reality > p {
  grid-column: 10 / 13;
  max-width: 36ch;
  margin-top: 2px;
  font-size: 14px;
  line-height: 1.76;
}

/* Paper band */
.sne-v3 .pub-band {
  padding-top: clamp(92px, 8.5vw, 128px);
  padding-bottom: clamp(96px, 8.8vw, 134px);
  align-items: center;
  background: var(--sne-paper);
  color: var(--sne-paper-text);
  border-top: 1px solid rgba(16,20,22,.1);
  border-bottom: 1px solid rgba(16,20,22,.12);
}
.sne-v3 .pub-band__copy { align-self:center; padding-top:0; }
.sne-v3 .pub-band > .pub-artifact { width:96%; justify-self:end; align-self:center; transform:translate(-2%,-4px); }
.sne-v3 .pub-band p { color:#575d60; }
.sne-v3 .pub-band .pub-index { color:#496476; }
.sne-v3 .pub-band .pub-depth { color:#202629; border-color:rgba(32,38,41,.34); }

/* Research */
.sne-v3 .pub-research-callout {
  position: relative;
  padding-top: clamp(92px, 8.6vw, 130px);
  padding-bottom: clamp(102px, 9.4vw, 142px);
  border-bottom: 0;
  box-shadow: 0 0 0 100vmax var(--sne-surface-0);
  clip-path: inset(0 -100vmax);
}
.sne-v3 .pub-research-callout > div { grid-column:1 / 8; }
.sne-v3 .pub-research-callout h2 {
  max-width:760px;
  margin:16px 0 0;
  font-family:var(--sne-font-display);
  font-size:clamp(34px,2.85vw,44px);
  line-height:1.07;
  letter-spacing:-.026em;
  text-wrap:pretty;
}
.sne-v3 .pub-research-callout > p { grid-column:9 / 13; max-width:38ch; align-self:end; font-size:16px; line-height:1.7; padding-bottom:2px; }
.sne-v3 .pub-research-callout .pub-depth { grid-column:9 / 13; justify-self:start; margin-top:24px; }

/* Field */
.sne-v3 .pub-terminal {
  position: relative;
  padding-top: clamp(104px, 9.6vw, 146px);
  padding-bottom: clamp(116px, 10.6vw, 160px);
  box-shadow: 0 0 0 100vmax var(--sne-surface-1);
  clip-path: inset(0 -100vmax);
}
.sne-v3 .pub-terminal h2 {
  max-width:760px;
  margin:16px 0 20px;
  font-family:var(--sne-font-display);
  font-size:clamp(38px,3.15vw,50px);
  line-height:1.045;
  letter-spacing:-.03em;
  text-wrap:pretty;
}
.sne-v3 .pub-terminal p { max-width:54ch; font-size:17px; line-height:1.68; }
.sne-v3 .pub-terminal .pub-action { margin-top:24px; }

/* Fading dividers */
.sne-v3 .pub-hero::after,
.sne-v3 .pub-statement::after,
.sne-v3 .pub-reality::after,
.sne-v3 .pub-research-callout::after {
  content:'';
  position:absolute;
  left:0; right:0; bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent 0%,var(--sne-surface-line) 9%,var(--sne-surface-line-strong) 50%,var(--sne-surface-line) 91%,transparent 100%);
  pointer-events:none;
}

/* Artifact intensity */
.sne-v3 .pub-artifact::before { inset:10% 6%; opacity:.68; background:radial-gradient(circle at 56% 46%,rgba(150,190,214,.055),transparent 64%); }
.sne-v3 .pub-artifact img { opacity:.84; filter:contrast(.94) saturate(.76) brightness(.96); }
.sne-v3 .pub-statement--reverse .pub-artifact img { opacity:.79; }
.sne-v3 .pub-band .pub-artifact img { opacity:.78; filter:invert(1) hue-rotate(180deg) contrast(.88) saturate(.7); mix-blend-mode:multiply; }

/* Causal motion */
.sne-v3 .pub-artifact--motion {
  --motion-bg: var(--pub-bg);
  --motion-text: var(--pub-text);
  --motion-muted: #929aa0;
  --motion-line: #434c53;
  --motion-accent: var(--pub-blue);
  --motion-denied: #717d84;
  --sne-motion-step:150ms;
  --sne-motion-transition:240ms;
  --sne-motion-causal:400ms;
  min-width:0;
  opacity:.9;
}
.sne-v3 .sne-causal-motion { margin:0; }
.sne-v3 .sne-causal-motion svg { display:block; width:100%; height:auto; overflow:visible; }
.sne-v3 .sne-causal-motion figcaption { display:none; }
.sne-v3 .sne-causal-baseline { stroke:var(--motion-line); stroke-width:1; opacity:.48; }
.sne-v3 .sne-causal-edge,.sne-v3 .sne-causal-fork-edge { stroke:var(--motion-line); stroke-width:2; fill:none; stroke-dasharray:1; stroke-dashoffset:1; opacity:.68; }
.sne-v3 .sne-causal-edge.is-admitted { stroke:var(--motion-accent); }
.sne-v3 .sne-causal-stage { opacity:.18; transform-box:fill-box; transform-origin:center; }
.sne-v3 .sne-causal-stage .sne-causal-node { fill:var(--motion-bg); stroke:var(--motion-muted); stroke-width:2; }
.sne-v3 .sne-causal-stage.is-key .sne-causal-node { stroke:var(--motion-accent); }
.sne-v3 .sne-causal-index { fill:var(--motion-muted); font-size:10px; font-weight:560; letter-spacing:1.1px; font-family:var(--sne-font-mono); }
.sne-v3 .sne-causal-label { fill:#d2d6d8; font-size:13px; font-weight:500; font-family:var(--sne-font-text); }
.sne-v3 .sne-causal-fork { opacity:0; }
.sne-v3 .sne-causal-fork-edge { stroke:var(--motion-denied); stroke-dasharray:.035 .04; }
.sne-v3 .sne-causal-fork-node { fill:var(--motion-bg); stroke:var(--motion-denied); stroke-width:2; }
.sne-v3 .sne-causal-fork-label { fill:#bbc1c4; font:500 11px/1 var(--sne-font-text); letter-spacing:1.1px; }
.sne-v3 .sne-causal-fork-note { fill:var(--motion-muted); font:400 10px/1 var(--sne-font-text); }
.sne-v3 .sne-causal-motion.is-playing .sne-causal-stage { animation:v3-causal-stage var(--sne-motion-step) ease-out var(--causal-delay) forwards; }
.sne-v3 .sne-causal-motion.is-playing .sne-causal-edge { animation:v3-causal-edge var(--sne-motion-causal) cubic-bezier(.2,0,.38,.9) var(--causal-delay) forwards; }
.sne-v3 .sne-causal-motion.is-playing .sne-causal-fork { animation:v3-causal-fork var(--sne-motion-transition) ease-out var(--causal-delay) forwards; }
.sne-v3 .sne-causal-motion.is-playing .sne-causal-fork-edge { animation:v3-causal-edge var(--sne-motion-transition) cubic-bezier(.2,0,.38,.9) var(--causal-delay) forwards; }
.sne-v3 .sne-causal-motion.is-settled .sne-causal-stage { opacity:1; }
.sne-v3 .sne-causal-motion.is-settled .sne-causal-stage.is-key .sne-causal-node { fill:var(--motion-accent); stroke:var(--motion-accent); }
.sne-v3 .sne-causal-motion.is-settled .sne-causal-edge,.sne-v3 .sne-causal-motion.is-settled .sne-causal-fork-edge { stroke-dashoffset:0; }
.sne-v3 .sne-causal-motion.is-settled .sne-causal-fork { opacity:.7; }
.sne-v3 .pub-motion-fallback { display:none; width:100%; height:auto; }
@keyframes v3-causal-stage { from { opacity:.18; transform:scale(.96); } to { opacity:1; transform:scale(1); } }
@keyframes v3-causal-edge { from { stroke-dashoffset:1; } to { stroke-dashoffset:0; } }
@keyframes v3-causal-fork { from { opacity:0; } to { opacity:.7; } }

/* Microinteraction */
.sne-v3 .pub-action,.sne-v3 .pub-depth { transition:color var(--sne-micro-fast) ease,border-color var(--sne-micro-normal) ease,background-color var(--sne-micro-normal) ease; }
.sne-v3 .pub-action::after,.sne-v3 .pub-depth span { transition:transform var(--sne-micro-normal) cubic-bezier(.2,0,.38,.9),color var(--sne-micro-fast) ease; }
.sne-v3 .pub-action:hover::after { transform:translateX(2px); }
.sne-v3 .pub-depth:hover span { transform:translate(2px,-1px); }
.sne-v3 a:focus-visible { outline:1px solid rgba(167,200,220,.88); outline-offset:5px; }

@media (prefers-reduced-motion: reduce) {
  .sne-v3 .pub-links a,.sne-v3 .pub-links a::after,.sne-v3 .pub-nav__cta,.sne-v3 .pub-action,.sne-v3 .pub-action::after,.sne-v3 .pub-depth,.sne-v3 .pub-depth span { transition:none !important; }
  .sne-v3 .sne-causal-motion .sne-causal-stage { opacity:1 !important; animation:none !important; transform:none !important; }
  .sne-v3 .sne-causal-motion .sne-causal-edge,.sne-v3 .sne-causal-motion .sne-causal-fork-edge { stroke-dashoffset:0 !important; animation:none !important; }
  .sne-v3 .sne-causal-motion .sne-causal-fork { opacity:.7 !important; animation:none !important; }
}

@media (max-width: 1180px) {
  .sne-v3 .pub-hero h1 { max-width:12.7ch; font-size:clamp(39px,3.95vw,50px); letter-spacing:-.016em; }
  .sne-v3 .pub-hero > p,.sne-v3 .pub-hero .pub-actions { grid-column:8 / 13; }
}
@media (max-width: 900px) {
  .sne-v3 .pub-hero { min-height:auto; padding-top:68px; padding-bottom:74px; }
  .sne-v3 .pub-hero h1 { grid-column:1 / 11; max-width:14.2ch; font-size:clamp(37px,5.7vw,48px); line-height:1.085; letter-spacing:-.014em; }
  .sne-v3 .pub-hero > p,.sne-v3 .pub-hero .pub-actions { grid-column:5 / 13; }
  .sne-v3 .pub-hero > p { margin-top:30px; }
  .sne-v3 .pub-statement,.sne-v3 .pub-reality,.sne-v3 .pub-research-callout,.sne-v3 .pub-terminal { padding-top:78px; padding-bottom:86px; }
  .sne-v3 .pub-band { padding-top:82px; padding-bottom:90px; }
  .sne-v3 .pub-statement--artifact .pub-artifact,.sne-v3 .pub-statement--reverse .pub-artifact,.sne-v3 .pub-band > .pub-artifact { width:100%; transform:none; }
}
@media (max-width: 700px) {
  .sne-v3 { --pub-gutter:18px; }
  .sne-v3 .pub-brand--candidate { width:98px; }
  .sne-v3 .pub-nav__inner { padding-top:14px; padding-bottom:12px; gap:11px; }
  .sne-v3 .pub-hero { padding-top:52px; padding-bottom:62px; }
  .sne-v3 .pub-hero h1 { grid-column:1 / 13; max-width:100%; font-size:clamp(34px,9.1vw,42px); line-height:1.1; letter-spacing:-.012em; }
  .sne-v3 .pub-hero > p,.sne-v3 .pub-hero .pub-actions { grid-column:1 / 13; }
  .sne-v3 .pub-hero > p { max-width:34ch; margin-top:26px; line-height:1.72; }
  .sne-v3 .pub-hero .pub-actions { margin-top:20px; }
  .sne-v3 .pub-copy h2,.sne-v3 .pub-band h2 { font-size:clamp(30px,8.3vw,39px); }
  .sne-v3 .pub-research-callout h2 { font-size:clamp(29px,7.8vw,37px); }
  .sne-v3 .pub-terminal h2 { font-size:clamp(32px,8.5vw,40px); }
  .sne-v3 .pub-reality blockquote { font-size:clamp(28px,7.7vw,36px); }
  .sne-v3 .pub-artifact--motion .sne-causal-motion { display:none; }
  .sne-v3 .pub-artifact--motion .pub-motion-fallback { display:block; }
}
