/* Product front composition: reuses the Sovereign liquid-glass engine. */
.product-glass-page .spatial-stage { min-height: min(790px, 92vh); }

.product-glass-page .hero-content-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(270px, 0.8fr);
  align-items: end;
}

.product-glass-page .hero-headline { max-width: 720px; }

.product-glass-page .hero-action-panel {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.product-glass-page .hero-subparagraph { margin-top: 0; max-width: 360px; }

.product-glass-page .hero-actions-row { flex-wrap: wrap; }

.product-glass-page .product-lanes-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.product-glass-page .product-lane-card {
  min-height: 310px;
}

.product-glass-page .product-lane-card .vector-card-desc { font-size: 13px; }

.product-glass-page .product-lane-card .btn-sovereign-secondary {
  margin-top: auto;
  align-self: flex-start;
}

.product-glass-page .release-state {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 16px;
  color: var(--text-dim);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-glass-page .release-state::before {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--accent-emerald);
  box-shadow: 0 0 10px var(--accent-emerald);
  content: "";
}

.product-glass-page .release-state.planned::before {
  background: var(--accent-violet);
  box-shadow: 0 0 10px var(--accent-violet);
}

.product-glass-page .support-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.product-glass-page .support-grid .contracting-item { min-height: 170px; }

.product-glass-page .sovereign-footer { margin-top: 0; }

/* Shared routed intake surface — the form uses the existing /api/contact contract. */
.product-glass-page .intake-stage { min-height: min(760px, 91vh); }

.product-glass-page .intake-layout {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(380px, 1.08fr);
  gap: 28px;
  align-items: start;
}

.product-glass-page .intake-intro { padding: 28px 10px 24px 0; }
.product-glass-page .intake-intro .hero-headline { margin-bottom: 18px; }
.product-glass-page .intake-intro .hero-description { max-width: 510px; }

.product-glass-page .intake-points {
  display: grid;
  gap: 12px;
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
}

.product-glass-page .intake-points li {
  display: flex;
  gap: 12px;
  align-items: baseline;
  color: var(--text-dim);
  font-size: 13px;
  line-height: 1.55;
}

.product-glass-page .intake-points strong { color: var(--text-high); }
.product-glass-page .intake-points li::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: 7px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--accent-emerald);
  box-shadow: 0 0 14px var(--accent-emerald);
}

.product-glass-page .intake-form-card {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid rgba(208, 230, 255, .2);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(17, 30, 55, .69), rgba(5, 12, 28, .5));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .3), inset 0 1px rgba(255, 255, 255, .13);
  backdrop-filter: blur(24px) saturate(142%);
  -webkit-backdrop-filter: blur(24px) saturate(142%);
}

.product-glass-page .intake-form-card::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 0 0, rgba(90, 202, 255, .16), transparent 33%);
  content: "";
}

.product-glass-page .intake-form-card > * { position: relative; }
.product-glass-page .intake-form-title { margin: 0; color: var(--text-high); font-size: 26px; letter-spacing: -.04em; }
.product-glass-page .intake-form-kicker { margin: 8px 0 25px; color: var(--text-dim); font-size: 13px; line-height: 1.55; }
.product-glass-page .intake-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.product-glass-page .intake-field { display: grid; gap: 8px; }
.product-glass-page .intake-field.full { grid-column: 1 / -1; }
.product-glass-page .intake-field label { color: var(--text-high); font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

.product-glass-page .intake-field input,
.product-glass-page .intake-field select,
.product-glass-page .intake-field textarea {
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  border: 1px solid rgba(213, 231, 255, .17);
  border-radius: 12px;
  outline: none;
  padding: 12px 13px;
  color: var(--text-high);
  background: rgba(3, 9, 22, .48);
  font: inherit;
  font-size: 14px;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.product-glass-page .intake-field textarea { min-height: 136px; resize: vertical; }
.product-glass-page .intake-field select { appearance: auto; }
.product-glass-page .intake-field input::placeholder,
.product-glass-page .intake-field textarea::placeholder { color: rgba(218, 230, 250, .42); }
.product-glass-page .intake-field input:focus,
.product-glass-page .intake-field select:focus,
.product-glass-page .intake-field textarea:focus { border-color: rgba(86, 207, 255, .8); background: rgba(7, 22, 43, .7); box-shadow: 0 0 0 3px rgba(79, 188, 255, .12); }
.product-glass-page .intake-field .field-error { min-height: 15px; color: #ff9fa9; font-size: 11px; }
.product-glass-page .intake-field.is-invalid input,
.product-glass-page .intake-field.is-invalid select,
.product-glass-page .intake-field.is-invalid textarea { border-color: rgba(255, 130, 148, .9); }
.product-glass-page .intake-submit-row { display: flex; align-items: center; gap: 16px; margin-top: 8px; }
.product-glass-page .intake-submit-row .btn-sovereign-primary { border: 0; cursor: pointer; }
.product-glass-page .intake-submit-row .btn-sovereign-primary:disabled { cursor: wait; filter: saturate(.5); opacity: .7; }
.product-glass-page .intake-status { min-height: 20px; margin: 0; color: var(--text-dim); font-size: 12px; line-height: 1.45; }
.product-glass-page .intake-status.success { color: #9cf7cf; }
.product-glass-page .intake-status.error { color: #ffb0bb; }
.product-glass-page .intake-disclosure { margin: 20px 0 0; color: rgba(220, 230, 246, .55); font-size: 11px; line-height: 1.5; }
.product-glass-page .intake-disclosure a { color: var(--text-dim); }

@media (max-width: 900px) {
  .product-glass-page .hero-content-grid,
  .product-glass-page .product-lanes-grid,
  .product-glass-page .support-grid,
  .product-glass-page .intake-layout { grid-template-columns: 1fr; }
  .product-glass-page .spatial-stage { min-height: auto; padding-bottom: 84px; }
  .product-glass-page .hero-action-panel { margin-top: 12px; }
  .product-glass-page .intake-intro { padding: 0; }
}

@media (max-width: 560px) {
  .product-glass-page .intake-form-card { padding: 21px 17px; border-radius: 19px; }
  .product-glass-page .intake-fields { grid-template-columns: 1fr; }
  .product-glass-page .intake-field.full { grid-column: auto; }
  .product-glass-page .intake-submit-row { align-items: flex-start; flex-direction: column; gap: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .product-glass-page *,
  .product-glass-page *::before,
  .product-glass-page *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
