/* Intel Desk public terminal system
   Code-only surface: no generated illustration layer, no decorative image
   dependency. The public site should feel like an operating manual attached
   to a live desk. */

:root {
  --terminal-paper: #e4e9e3;
  --terminal-paper-2: #d9e0d9;
  --terminal-paper-3: #cbd5cf;
  --terminal-ink: #101214;
  --terminal-muted: #4e585a;
  --terminal-rule: rgba(16, 18, 20, 0.32);
  --terminal-rule-hard: rgba(16, 18, 20, 0.82);
  --terminal-ox: #8b1424;
  --terminal-warn: #b44a31;
  --terminal-go: #4a7a41;
  --terminal-yellow: #c1a24b;
  --terminal-blue: #3f6379;
  --terminal-mono:
    'IBM Plex Mono', 'SFMono-Regular', Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}

html,
body {
  background:
    repeating-linear-gradient(90deg, rgba(16, 18, 20, 0.025) 0 1px, transparent 1px 120px),
    repeating-linear-gradient(180deg, rgba(16, 18, 20, 0.023) 0 1px, transparent 1px 96px),
    linear-gradient(180deg, var(--terminal-paper), var(--terminal-paper-2)) !important;
}

body {
  color: var(--terminal-ink) !important;
}

body::selection {
  background: var(--terminal-ink);
  color: var(--terminal-paper);
}

.masthead,
.masthead-main,
.masthead-inner,
.topbar,
.header {
  background: rgba(228, 233, 227, 0.96) !important;
  border-color: var(--terminal-rule-hard) !important;
  box-shadow: none !important;
}

.masthead {
  border-bottom: 3px double var(--terminal-ink) !important;
}

.wordmark,
.brand,
.logo h1,
.foot-wordmark {
  font-family: var(--terminal-mono) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 800 !important;
}

.wordmark sup,
.masthead-top,
.nav-right,
.nav-links,
.left-nav,
.right-nav,
.kicker,
.eyebrow,
.meta-stripe,
.byline,
.source-meta,
.sum,
.tag,
.pill,
.chip,
.filter-chip,
.btn,
.cta {
  font-family: var(--terminal-mono) !important;
}

.masthead a:not(.cta),
.nav-right a:not(.cta),
.nav-links a:not(.cta),
.left-nav a,
.right-nav a:not(.cta) {
  border-bottom: 1px solid transparent !important;
}

.masthead a:not(.cta):hover,
.nav-right a:not(.cta):hover,
.nav-links a:not(.cta):hover,
.left-nav a:hover,
.right-nav a:not(.cta):hover {
  border-bottom-color: var(--terminal-ink) !important;
}

.page,
.wrap,
.front,
.live-front,
.auth-container,
.intel-shell,
.body,
.seo-content {
  position: relative;
  z-index: 1;
}

.front,
.live-front,
.page-head,
.section,
.block,
.body article,
.seo-content,
.pricing-matrix,
.source-grid,
.faq-list {
  border-color: var(--terminal-rule) !important;
}

h1,
h2,
h3,
.front-headline,
.page-title,
.page-head h1,
.section-head h2 {
  font-family: var(--terminal-mono) !important;
  letter-spacing: 0 !important;
}

.front-headline,
.page-title,
.page-head h1 {
  text-transform: uppercase;
}

.front-lede,
.lede,
.strap,
.subtitle,
.body p,
.seo-content p,
.block-lede {
  color: #263033 !important;
}

.reveal,
body.js-ready .reveal,
body.js-ready .reveal:not(.visible) {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

.price-card,
.plan,
.plan.featured,
.cta-block,
.upgrade-banner,
.entry,
.qa,
.faq-item,
.source-card,
.source-list li,
.src-table,
.status-card,
.metric,
.proof-card,
.ss-proof-item,
.ss-wire-row,
.operator-loop,
.desk-note,
.live-front-panel,
.case-card,
.update-card,
.terminal-panel {
  background: rgba(237, 240, 235, 0.88) !important;
  border: 1px solid var(--terminal-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.ss-proof-bar,
.headline-stats,
.plans,
.cmp,
.src-table,
.pricing-table,
.rating-grid,
.hit-rate-grid,
.terminal-function-grid,
.terminal-panel-row {
  border-collapse: collapse;
}

table,
.cmp,
.src-table {
  border: 1px solid var(--terminal-rule) !important;
}

th,
td,
.cmp th,
.cmp td,
.src-table th,
.src-table td {
  border-color: rgba(16, 18, 20, 0.16) !important;
}

.btn,
.cta,
.nav-right .cta,
.right-nav .cta,
.hero-actions .btn,
.front-actions a,
.plan .plan-cta,
.cta-block .btn,
.launchpad-command button {
  min-height: 38px;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-transform: uppercase;
}

.btn:not(.ghost),
.cta,
.nav-right .cta,
.right-nav .cta,
.front-actions a:first-child,
.hero-actions .btn:not(.ghost),
.plan .plan-cta:not(.ghost),
.cta-block .btn,
.launchpad-command button {
  background: var(--terminal-ink) !important;
  border-color: var(--terminal-ink) !important;
  color: var(--terminal-paper) !important;
}

.btn.ghost,
.front-actions a.ghost,
.hero-actions .btn.ghost,
.plan .plan-cta.ghost {
  background: transparent !important;
  border-color: var(--terminal-rule) !important;
  color: var(--terminal-ink) !important;
}

.btn:not(.ghost):hover,
.cta:hover,
.front-actions a:first-child:hover,
.launchpad-command button:hover {
  background: var(--terminal-ox) !important;
  border-color: var(--terminal-ox) !important;
  color: #fff !important;
}

.terminal-guide {
  margin-top: 1.25rem;
  border: 1px solid var(--terminal-ink);
  background: rgba(228, 233, 227, 0.94);
  font-family: var(--terminal-mono);
}

.terminal-guide-head,
.terminal-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 38px;
  padding: 0.55rem 0.7rem;
  border-bottom: 1px solid var(--terminal-rule-hard);
  color: var(--terminal-muted);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.terminal-guide-head span:first-child,
.terminal-panel-head span:first-child {
  color: var(--terminal-ox);
}

.terminal-panel-row {
  display: grid;
  grid-template-columns: minmax(220px, 0.85fr) minmax(320px, 1.15fr);
}

.terminal-panel {
  border-width: 0 1px 0 0 !important;
}

.terminal-panel:last-child {
  border-right-width: 0 !important;
}

.terminal-command-line {
  display: grid;
  grid-template-columns: minmax(120px, 0.42fr) minmax(0, 1fr);
  align-items: center;
  gap: 0;
  border-bottom: 1px solid var(--terminal-rule);
}

.terminal-command-line code,
.terminal-command-line span {
  display: block;
  min-height: 42px;
  padding: 0.72rem 0.8rem;
}

.terminal-command-line code {
  border-right: 1px solid var(--terminal-rule);
  color: var(--terminal-ox);
  font-family: var(--terminal-mono);
  font-size: 0.82rem;
  font-weight: 900;
  white-space: nowrap;
}

.terminal-command-line span {
  color: var(--terminal-muted);
  font-size: 0.8rem;
  font-weight: 700;
}

.terminal-function-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.terminal-function {
  min-height: 94px;
  padding: 0.7rem 0.8rem;
  border-right: 1px solid var(--terminal-rule);
  border-bottom: 1px solid var(--terminal-rule);
}

.terminal-function:nth-child(3n) {
  border-right-width: 0;
}

.terminal-function:nth-last-child(-n + 3) {
  border-bottom-width: 0;
}

.terminal-function b,
.terminal-function span,
.terminal-function small {
  display: block;
}

.terminal-function b {
  color: var(--terminal-ink);
  font-size: 0.82rem;
  text-transform: uppercase;
}

.terminal-function span {
  margin-top: 0.35rem;
  color: var(--terminal-muted);
  font-size: 0.72rem;
  line-height: 1.45;
}

.terminal-function small {
  margin-bottom: 0.38rem;
  color: var(--terminal-ox);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.terminal-key-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border-top: 1px solid var(--terminal-rule-hard);
}

.terminal-key {
  display: flex;
  min-height: 36px;
  align-items: center;
  justify-content: center;
  border-right: 1px solid var(--terminal-rule);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.terminal-key:last-child {
  border-right-width: 0;
}

.terminal-key--go {
  background: rgba(74, 122, 65, 0.16);
}

.terminal-key--market {
  background: rgba(193, 162, 75, 0.2);
}

.terminal-key--stop {
  background: rgba(139, 20, 36, 0.14);
}

.terminal-key--search {
  background: rgba(63, 99, 121, 0.14);
}

@media (max-width: 820px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip !important;
  }

  .masthead-main .wordmark,
  .masthead-inner .wordmark,
  .wordmark {
    font-size: clamp(1.55rem, 9vw, 2.35rem) !important;
    letter-spacing: 0.04em !important;
    min-width: 0;
  }

  .front-headline,
  .page-title,
  .page-head h1,
  .section-head h2 {
    font-size: clamp(2.25rem, 13vw, 4rem) !important;
    line-height: 1.04 !important;
  }

  .front-lede,
  .lede,
  .strap,
  .subtitle,
  .body p,
  .seo-content p,
  .block-lede {
    font-size: clamp(1rem, 4.8vw, 1.24rem) !important;
    line-height: 1.5 !important;
  }

  .front-actions,
  .hero-actions {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 !important;
    border: 1px solid var(--terminal-rule-hard);
  }

  .front-actions a,
  .hero-actions .btn {
    display: flex !important;
    min-height: 44px !important;
    align-items: center;
    justify-content: center;
    padding: 0.7rem 0.55rem !important;
    border-width: 0 1px 0 0 !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.08em !important;
    white-space: nowrap;
  }

  .front-actions a:first-child,
  .hero-actions .btn:first-child {
    grid-column: 1 / -1;
    border-right-width: 0 !important;
    border-bottom: 1px solid var(--terminal-rule-hard) !important;
  }

  .front-actions a:last-child,
  .hero-actions .btn:last-child {
    border-right-width: 0 !important;
  }

  .front-actions a.ghost,
  .hero-actions .btn.ghost {
    background: transparent !important;
  }

  .terminal-panel-row,
  .terminal-command-line,
  .terminal-function-grid,
  .terminal-key-strip {
    grid-template-columns: 1fr;
  }

  .terminal-panel,
  .terminal-function,
  .terminal-key,
  .terminal-command-line code {
    border-right-width: 0 !important;
  }

  .terminal-panel:first-child {
    border-bottom: 1px solid var(--terminal-rule-hard) !important;
  }

  .terminal-function:nth-last-child(-n + 3) {
    border-bottom-width: 1px;
  }

  .terminal-function:last-child,
  .terminal-key:last-child {
    border-bottom-width: 0;
  }
}

@media (max-width: 520px) {
  .masthead-main,
  .masthead-inner {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    align-items: center !important;
    padding-right: 0.85rem !important;
    padding-left: 0.85rem !important;
    overflow: clip;
  }

  .masthead-main {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  .masthead-main .left-nav,
  .masthead-main .right-nav,
  .masthead-top {
    display: none !important;
  }

  .masthead-main .wordmark,
  .masthead-inner .wordmark,
  .wordmark {
    display: block;
    max-width: calc(100vw - 5.75rem);
    overflow: hidden;
    font-size: clamp(1.24rem, 7.1vw, 1.8rem) !important;
    letter-spacing: 0.02em !important;
    text-overflow: clip;
    white-space: nowrap;
  }

  .masthead-main .wordmark sup,
  .masthead-inner .wordmark sup,
  .wordmark sup {
    margin-left: 0.32rem !important;
    font-size: 0.34em !important;
    letter-spacing: 0.08em !important;
    vertical-align: text-top;
  }

  .hamburger {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
  }

  .front,
  .live-front,
  .page,
  .wrap,
  .body,
  .seo-content {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  .live-front-head,
  .front-actions,
  .hero-actions,
  .desk-launchpad,
  .terminal-guide,
  .terminal-panel-row,
  .terminal-command-line,
  .terminal-function-grid,
  .terminal-key-strip {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .front-headline,
  .page-title,
  .page-head h1,
  .section-head h2 {
    max-width: 100% !important;
    overflow-wrap: normal;
    font-size: clamp(1.92rem, 8.8vw, 2.48rem) !important;
    line-height: 1.03 !important;
  }

  .front-actions,
  .hero-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .front-actions a,
  .hero-actions .btn {
    min-width: 0 !important;
    white-space: normal !important;
    line-height: 1.18 !important;
    letter-spacing: 0.04em !important;
  }

  .front-lede,
  .lede,
  .strap,
  .subtitle,
  .body p,
  .seo-content p,
  .block-lede {
    max-width: 34ch !important;
    font-size: clamp(0.98rem, 4.1vw, 1.1rem) !important;
    line-height: 1.48 !important;
    overflow-wrap: break-word;
  }

  .front-actions a,
  .hero-actions .btn {
    min-width: 0;
    font-size: 0.66rem !important;
    letter-spacing: 0.06em !important;
  }

  .terminal-guide-head,
  .terminal-panel-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.22rem;
  }

  .terminal-command-line code,
  .terminal-command-line span {
    min-height: auto;
  }
}
