/* VQ-UI-03 Terminal Noir â€” public marketing subpage compositions.
   Extends vortriq-terminal-noir.css. This is a family stylesheet, not a global shell. */

.terminal-page {
  min-height: 100vh;
  background: var(--vq-canvas);
  color: var(--vq-ink);
}

.terminal-page .site-header {
  color: #fff;
}

.terminal-subhero {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  isolation: isolate;
  background: var(--vq-deep-ink);
  color: #fff;
}

.terminal-subhero-media {
  position: absolute;
  inset: 0;
  z-index: -3;
  background-position: center;
  background-size: cover;
  transform: scale(1.01);
}

.terminal-subhero-media--quiet{
  background:
    radial-gradient(circle at 78% 28%, rgba(56,189,248,.14), transparent 24%),
    radial-gradient(circle at 68% 76%, rgba(163,230,53,.08), transparent 22%),
    linear-gradient(135deg,#071525 0%,#0B1F3B 58%,#0c2948 100%);
}
.terminal-subhero-media--agency{
  background-image:url("/assets/images/agencies/proposal-planning-desk.webp");
  background-position:58% 50%;
}

.terminal-subhero-shade {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(7,21,37,.9) 0%, rgba(7,21,37,.7) 46%, rgba(7,21,37,.28) 76%, rgba(7,21,37,.5) 100%),
    linear-gradient(180deg, rgba(7,21,37,.18) 0%, rgba(7,21,37,.04) 40%, rgba(7,21,37,.82) 100%);
}

.terminal-subhero-inner {
  width: min(var(--vq-content), calc(100% - 64px));
  margin-inline: auto;
  min-height: 530px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .65fr);
  gap: 76px;
  align-items: end;
  padding: 84px 0 64px;
}

.terminal-subhero-copy {
  max-width: 820px;
}

.terminal-subhero h1 {
  margin: 15px 0 0;
  max-width: 900px;
  font-family: var(--font-display), sans-serif;
  font-size: clamp(56px, 7vw, 96px);
  line-height: .92;
  letter-spacing: -.055em;
  font-weight: 540;
}

.terminal-subhero h1 em {
  color: var(--vq-signal);
  font-style: normal;
}

.terminal-subhero-copy > p:last-of-type {
  max-width: 700px;
  margin: 26px 0 0;
  color: rgba(255,255,255,.74);
  font-size: 17px;
  line-height: 1.66;
}

.terminal-subhero-panel {
  align-self: end;
  padding: 26px 0 0;
  border-top: 1px solid rgba(255,255,255,.22);
}

.terminal-subhero-panel small {
  display: block;
  color: rgba(255,255,255,.48);
  font-size: 9px;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.terminal-subhero-panel strong {
  display: block;
  margin-top: 12px;
  font-size: 18px;
  font-weight: 650;
}

.terminal-subhero-panel p {
  margin: 10px 0 0;
  color: rgba(255,255,255,.66);
  line-height: 1.55;
  font-size: 13px;
}

.terminal-section {
  padding: 104px 0;
}

.terminal-section--tight {
  padding: 72px 0;
}

.terminal-section--dark {
  background: var(--vq-deep-ink);
  color: #fff;
}

.terminal-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, .6fr);
  gap: 80px;
  align-items: end;
  margin-bottom: 46px;
}

.terminal-section-head h2,
.terminal-split-copy h2,
.terminal-cta h2 {
  margin: 12px 0 0;
  font-family: var(--font-display), sans-serif;
  font-size: clamp(44px, 5.2vw, 72px);
  line-height: .98;
  letter-spacing: -.05em;
  font-weight: 540;
}

.terminal-section-head > p {
  margin: 0;
  color: var(--vq-muted);
  line-height: 1.68;
}

.terminal-section--dark .terminal-section-head > p,
.terminal-section--dark .terminal-section-head .eyebrow {
  color: rgba(255,255,255,.68);
}

.agency-proof-preview{
  min-height:520px;
  display:grid;
  align-content:start;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--vq-radius-media);
  background:#f7fafc;
  color:var(--vq-ink);
  box-shadow:0 28px 80px rgba(0,0,0,.2);
}
.agency-proof-bar{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 22px;
  background:var(--vq-deep-ink);
  color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
}
.agency-proof-bar span{color:var(--vq-signal)}
.agency-proof-bar a{color:#fff;text-decoration:none}
.agency-proof-context{
  display:grid;
  gap:5px;
  padding:24px 22px 18px;
  border-bottom:1px solid rgba(11,31,59,.12);
}
.agency-proof-context small{font-size:9px;font-weight:800;letter-spacing:.13em;color:var(--vq-muted)}
.agency-proof-context strong{font-family:var(--font-display),sans-serif;font-size:25px;letter-spacing:-.03em}
.agency-proof-option{
  min-height:82px;
  display:grid;
  grid-template-columns:92px 1fr auto;
  gap:14px;
  align-items:center;
  padding:14px 22px;
  border-bottom:1px solid rgba(11,31,59,.1);
}
.agency-proof-option span{font-size:10px;font-weight:800;color:var(--vq-muted)}
.agency-proof-option strong{font-size:16px}
.agency-proof-option b{font-family:var(--font-display),sans-serif;font-size:19px}
.agency-proof-preview>p{margin:0!important;padding:18px 22px;color:var(--vq-muted)!important;font-size:11px;line-height:1.55}
@media(max-width:640px){
  .terminal-subhero-media--agency{background-position:62% 50%}
  .agency-proof-preview{min-height:auto}
  .agency-proof-option{grid-template-columns:1fr auto}
  .agency-proof-option span{grid-column:1/-1}
}

.terminal-split-copy p {
  color: rgba(255,255,255,.68);
}

.terminal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--vq-border);
}

.terminal-grid--inverted {
  border-top-color: rgba(255,255,255,.16);
}

.terminal-grid--inverted .terminal-card {
  border-color: rgba(255,255,255,.16);
}

.terminal-grid--inverted .terminal-card small {
  color: rgba(255,255,255,.48);
}

.terminal-grid--inverted .terminal-card p {
  color: rgba(255,255,255,.64);
}

.terminal-card {
  min-height: 260px;
  padding: 26px 26px 30px 0;
  border-bottom: 1px solid var(--vq-border);
}

.terminal-card + .terminal-card {
  padding-left: 26px;
  border-left: 1px solid var(--vq-border);
}

.terminal-card small {
  display: block;
  color: var(--vq-muted);
  font-size: 9px;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.terminal-card h3 {
  margin: 48px 0 0;
  font-size: 22px;
  letter-spacing: -.025em;
}

.terminal-card p {
  margin: 11px 0 0;
  color: var(--vq-muted);
  font-size: 13px;
  line-height: 1.62;
}

.terminal-card a {
  display: inline-flex;
  margin-top: 22px;
  color: var(--vq-ink);
  font-size: 12px;
  font-weight: 750;
  border-bottom: 1px solid var(--vq-signal);
}

.terminal-split {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 86px;
  align-items: center;
}

.terminal-media {
  min-height: 520px;
  overflow: hidden;
  border-radius: var(--vq-radius-media);
  background: var(--vq-surface-strong);
}

.terminal-media img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.terminal-split-copy p {
  margin: 22px 0 0;
  color: var(--vq-muted);
  line-height: 1.68;
}

.terminal-section--dark .terminal-split-copy p {
  color: rgba(255,255,255,.72);
}

.terminal-facts {
  margin-top: 28px;
  border-top: 1px solid var(--vq-border);
}

.terminal-fact {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 24px;
  padding: 16px 0;
  border-bottom: 1px solid var(--vq-border);
}

.terminal-fact small {
  color: var(--vq-muted);
  font-size: 9px;
  letter-spacing: .12em;
}

.terminal-fact strong {
  font-size: 13px;
  font-weight: 700;
}

.terminal-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: end;
  padding: 44px 0;
  border-top: 1px solid rgba(255,255,255,.16);
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.terminal-cta p {
  max-width: 650px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.68);
  line-height: 1.65;
}

.terminal-page .site-footer {
  background: #071525;
  color: #fff;
  border-top: 1px solid rgba(255,255,255,.12);
}

.terminal-page .site-footer .footer-row {
  min-height: 118px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 28px;
  align-items: center;
}

.terminal-page .site-footer p {
  margin: 0;
  color: rgba(255,255,255,.56);
  font-size: 10px;
}

.terminal-page .site-footer .footer-note {
  text-align: right;
}

@media (max-width: 900px) {
  .terminal-subhero-inner,
  .terminal-section-head,
  .terminal-split,
  .terminal-cta {
    grid-template-columns: 1fr;
  }
  .terminal-subhero-inner {
    min-height: 560px;
    gap: 40px;
  }
  .terminal-grid {
    grid-template-columns: 1fr;
  }
  .terminal-card {
    min-height: 0;
    padding-top: 28px;
    padding-bottom: 28px;
  }
  .terminal-card + .terminal-card {
    padding-left: 0;
    border-left: 0;
  }
  .terminal-media,
  .terminal-media img {
    min-height: 360px;
  }
  .terminal-page .site-footer .footer-row {
    grid-template-columns: 1fr;
    padding: 32px 0;
  }
  .terminal-page .site-footer .footer-note {
    text-align: left;
  }
}

@media (max-width: 640px) {
  .terminal-subhero {
    min-height: 620px;
  }
  .terminal-subhero-inner {
    width: min(100% - 32px, var(--vq-content));
    min-height: 540px;
    padding: 52px 0 44px;
  }
  .terminal-subhero h1 {
    font-size: clamp(44px, 13vw, 58px);
  }
  .terminal-subhero-copy > p:last-of-type {
    font-size: 15px;
  }
  .terminal-section {
    padding: 72px 0;
  }
  .terminal-section--tight {
    padding: 54px 0;
  }
  .terminal-section-head {
    gap: 20px;
  }
  .terminal-card {
    min-height: 0;
    padding: 24px 0;
  }
  .terminal-card h3 {
    margin-top: 24px;
  }
}
