/* V3.C1 — Page Composition Authority
 * Owns deep/deploy page-specific typography and semantic composition only.
 * Structural grids: v3-structure.css
 * Palette/surfaces: surface-system.css
 * Vertical rhythm: spatial-system.css
 * Artifacts: artifact-system.css
 */

.sne-v3.pub-deep .deep-intro h1,
.sne-v3.pub-deploy .deploy-intro h1 {
  max-width: 12.8ch;
  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-deep .deep-intro p,
.sne-v3.pub-deploy .deploy-intro p {
  max-width: 39ch;
  margin: 0;
  font-family: var(--sne-font-text);
  font-size: clamp(15.5px, .96vw, 17px);
  line-height: 1.76;
  letter-spacing: -.002em;
}

/* Shared deep page type. */
.sne-v3.pub-deep .deep-problem h2,
.sne-v3.pub-deep .deep-work h2,
.sne-v3.pub-deep .depth-evidence__head h2,
.sne-v3.pub-deep .depth-capability h2,
.sne-v3.pub-deep .depth-research h2,
.sne-v3.pub-deep .depth-company-flow h2,
.sne-v3.pub-deep .depth-rule h2,
.sne-v3.pub-deploy .deploy-form legend {
  margin: 0;
  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-deep .deep-lead,
.sne-v3.pub-deep .depth-capability p,
.sne-v3.pub-deep .depth-research p,
.sne-v3.pub-deep .depth-company-statement p,
.sne-v3.pub-deep .depth-company-flow p,
.sne-v3.pub-deep .depth-rule p {
  margin-bottom: 0;
  font-family: var(--sne-font-text);
  font-size: clamp(16px, 1.04vw, 18px);
  line-height: 1.66;
  letter-spacing: -.004em;
}

.sne-v3.pub-deep .deep-signals,
.sne-v3.pub-deep .deep-proof {
  max-width: 680px;
  border-top: 1px solid var(--pub-line);
}
.sne-v3.pub-deep .deep-signals span,
.sne-v3.pub-deep .deep-proof span {
  color: var(--sne-blue-soft);
  font-size: 9px;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 760;
}
.sne-v3.pub-deep .deep-signals p,
.sne-v3.pub-deep .deep-proof p {
  margin: 11px 0 0;
  color: #7f919e;
  font-size: 13px;
  line-height: 1.65;
}
.sne-v3.pub-deep .deep-problem blockquote {
  max-width: 720px;
  margin-bottom: 0;
  padding-left: 22px;
  border-left: 1px solid var(--pub-line-strong);
  color: var(--pub-muted-strong);
  font-family: var(--sne-font-display);
  font-size: clamp(25px, 2.15vw, 34px);
  line-height: 1.18;
  letter-spacing: -.024em;
  font-weight: 450;
}
.sne-v3.pub-deep .deep-boundary {
  max-width: 650px;
  color: #7f919e;
  font-size: 13px;
  line-height: 1.68;
}

/* Evidence. */
.sne-v3.pub-deep .depth-claim {
  max-width: 760px;
  margin: 0;
  font-family: var(--sne-font-display);
  font-size: clamp(28px, 2.55vw, 40px);
  line-height: 1.14;
  letter-spacing: -.026em;
  font-weight: 450;
}
.sne-v3.pub-deep .depth-source {
  margin-bottom: 0;
  font-size: 12px;
  line-height: 1.55;
  letter-spacing: .01em;
}
.sne-v3.pub-deep .depth-infrastructure { color: #7f919e; }

/* Computing. */
.sne-v3.pub-deep .depth-capability h2 { max-width: 760px; }
.sne-v3.pub-deep .depth-rule h2 { max-width: 760px; }
.sne-v3.pub-deep .depth-rule p { max-width: 54ch; }

/* Research. */
.sne-v3.pub-deep .depth-research h2 { max-width: 700px; }
.sne-v3.pub-deep .depth-research p { max-width: 690px; }

/* Company. */
.sne-v3.pub-deep .depth-company-statement blockquote {
  margin: 0;
  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-deep .depth-company-flow > div { border-top: 1px solid var(--pub-line); }
.sne-v3.pub-deep .depth-company-flow span {
  color: var(--sne-blue-soft);
  font-size: 10px;
  letter-spacing: .15em;
  text-transform: uppercase;
  font-weight: 700;
}

/* Deploy. */
.sne-v3.pub-deploy .deploy-expectation span {
  color: var(--sne-blue-soft);
  font-family: var(--sne-font-text);
  font-size: 9px;
  letter-spacing: .155em;
  text-transform: uppercase;
  font-weight: 650;
}
.sne-v3.pub-deploy .deploy-expectation p { margin-bottom: 0; font-size: 14px; line-height: 1.76; }
.sne-v3.pub-deploy .deploy-commissioning {
  display: flex;
  gap: 12px;
  align-items: baseline;
  color: #71818d;
  font-size: 11px;
  line-height: 1.55;
}
.sne-v3.pub-deploy .deploy-commissioning::before {
  content: '';
  width: 5px;
  height: 5px;
  flex: 0 0 auto;
  margin-top: 6px;
  border-radius: 50%;
  background: var(--sne-orange-vivid);
}
.sne-v3.pub-deploy .deploy-commissioning strong { color: var(--sne-orange-soft); font-weight: 620; white-space: nowrap; }

.sne-v3.pub-deploy .deploy-form label {
  font-family: var(--sne-font-text);
  font-size: 12px;
  letter-spacing: .01em;
  font-weight: 620;
}
.sne-v3.pub-deploy .deploy-form label small { font-size: 11px; font-weight: 400; line-height: 1.5; }
.sne-v3.pub-deploy .deploy-form input,
.sne-v3.pub-deploy .deploy-form textarea,
.sne-v3.pub-deploy .deploy-form select {
  border: 0;
  border-bottom: 1px solid;
  border-radius: 0;
  padding: 14px 0 15px;
  font: inherit;
  font-size: 15px;
  outline: none;
  transition: border-color var(--sne-micro-fast) ease, box-shadow var(--sne-micro-fast) ease;
}
.sne-v3.pub-deploy .deploy-form textarea { resize: vertical; line-height: 1.58; min-height: 118px; }
.sne-v3.pub-deploy .deploy-form select { min-height: 50px; }
.sne-v3.pub-deploy .deploy-submit button {
  min-height: 46px;
  padding: 0 20px;
  border: 1px solid;
  font: inherit;
  font-size: 12px;
  font-weight: 620;
  cursor: pointer;
  transition: background var(--sne-micro-fast) ease, transform var(--sne-micro-fast) ease;
}
.sne-v3.pub-deploy .deploy-submit button::after { content: ' →'; }
.sne-v3.pub-deploy .deploy-submit button:hover { transform: translateY(-1px); }
.sne-v3.pub-deploy .deploy-submit button:disabled { opacity: .55; cursor: wait; transform: none; }
.sne-v3.pub-deploy #form-status { margin: 0; font-size: 12px; line-height: 1.55; }

@media (max-width: 700px) {
  .sne-v3.pub-deep .deep-intro h1,
  .sne-v3.pub-deploy .deploy-intro h1 { margin-bottom: 24px; }
  .sne-v3.pub-deep .depth-company-flow h2 { font-size: clamp(32px, 8.5vw, 40px); }
  .sne-v3.pub-deploy .deploy-commissioning { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  .sne-v3.pub-deploy .deploy-form input,
  .sne-v3.pub-deploy .deploy-form textarea,
  .sne-v3.pub-deploy .deploy-form select,
  .sne-v3.pub-deploy .deploy-submit button { transition: none; }
}
