/* LSSCO editorial refinement — 16 July 2026
   Purpose: remove chat-like rounded cards and establish an institutional, editorial visual system. */

:root {
  --ink: #15130f;
  --charcoal: #2b2822;
  --muted: #6f685e;
  --muted-2: #938a7d;
  --line: #cfc4b3;
  --line-strong: #9b763e;
  --paper: #f4f0e8;
  --paper-2: #ebe4d8;
  --white: #fffdf8;
  --panel: #eee7db;
  --gold: #92703b;
  --gold-dark: #684a20;
  --shadow: none;
  --shadow-soft: none;
  --radius: 0px;
  --font-display: "Cormorant Garamond", "Iowan Old Style", "Baskerville", "Times New Roman", serif;
  --font-body: "Manrope", "Avenir Next", "Helvetica Neue", Arial, sans-serif;
}

body {
  font-family: var(--font-body);
  background: var(--paper);
  line-height: 1.62;
  letter-spacing: -0.005em;
}

body::before {
  background: linear-gradient(90deg, rgba(146,112,59,.025) 1px, transparent 1px);
  background-size: 72px 100%;
  opacity: .55;
}

h1, h2, h3, h4,
.brand-text strong,
.footer-title,
.big-number,
.service-price strong,
.layer-stack strong,
.case-facts strong,
.ops-stat-grid strong,
.console-top strong,
.sheet-header strong {
  font-family: var(--font-display);
  font-weight: 500;
}

h1 {
  font-size: clamp(52px, 6.3vw, 88px);
  line-height: .93;
  letter-spacing: -.045em;
}

h2 {
  font-size: clamp(38px, 4.5vw, 60px);
  line-height: .98;
  letter-spacing: -.035em;
}

h3 {
  font-size: clamp(26px, 2.65vw, 34px);
  line-height: 1.02;
  letter-spacing: -.025em;
}

.site-header {
  background: rgba(244,240,232,.97);
  border-bottom-color: rgba(104,74,32,.36);
  backdrop-filter: blur(10px);
}

.header-inner {
  max-width: 1440px;
  padding-top: 14px;
  padding-bottom: 14px;
}

.brand { gap: 13px; }
.brand-logo { width: 58px; height: 48px; }
.brand-logo img { width: 58px; height: 48px; }
.brand-text strong {
  font-size: clamp(25px, 2.3vw, 34px);
  letter-spacing: .005em;
}
.brand-text span,
.primary-nav,
.eyebrow,
.section-kicker,
.sheet-header span,
.meta-label,
.tag,
.small-label,
.metric span,
.card .num,
.timeline-item::before,
.data-table th,
.sheet-table th,
label,
.footer-label,
.footer-links,
.footer-contact-lines,
.footer-address-lines,
.service-index,
.service-price span,
.service-price a,
.phase-card > span,
.case-facts span,
.case-facts small,
.layer-stack span,
.layer-stack small,
.ops-stat-grid span,
.ops-stat-grid small,
.ops-list > div > span:last-child,
.console-top span,
.engagement-table [role="cell"] > span:not(.small-label),
.status {
  font-family: var(--font-body);
}

.primary-nav { gap: 17px; font-size: 11px; letter-spacing: .045em; }
.primary-nav a { padding: 10px 0 8px; }
.nav-cta {
  border-radius: 0;
  background: transparent;
  color: var(--ink) !important;
  border-width: 0 0 1px !important;
  padding: 10px 0 8px !important;
}

.nav-toggle,
.button,
input,
select,
textarea {
  border-radius: 0;
}

.button {
  min-height: 48px;
  padding: 14px 20px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .12em;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.button:hover { transform: none; background: var(--gold-dark); border-color: var(--gold-dark); }
.button.secondary:hover { color: var(--white); }

.section, .hero, .page-hero { padding-left: 34px; padding-right: 34px; }
.hero { gap: 70px; padding-top: 108px; padding-bottom: 86px; }
.page-hero { padding-top: 78px; padding-bottom: 54px; }
.lede { font-family: var(--font-display); font-size: clamp(23px, 2.35vw, 30px); line-height: 1.36; }
.copy { font-size: 16px; line-height: 1.75; }

.eyebrow, .section-kicker {
  display: block;
  font-size: 10px;
  letter-spacing: .24em;
  margin-bottom: 20px;
}
.eyebrow::after, .section-kicker::after { display: none; }

.rule { border-top-color: rgba(104,74,32,.32); }
.section-title { margin-bottom: 42px; align-items: start; }
.section-title .copy { max-width: 430px; padding-top: 7px; }

/* Replace bubble-like surfaces with editorial rules. */
.hero-card, .panel, .mock-card, .card, .scenario, .role-card, .notice-box, .form-panel,
.timeline-item, .pack-image, .table-wrap, .access-role, .site-notice-card,
.principal-card, .service-card, .visual-frame, .phase-card, .case-panel,
.case-facts article, .layer-stack article, .commercial-panel,
.engagement-table article, .metric, .ops-stat-grid article, .legacy-note {
  border-radius: 0;
  box-shadow: none;
}

.card, .scenario, .role-card {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(104,74,32,.42);
  padding: 24px 0 28px;
}
.card h3, .scenario h3, .role-card h3 { margin-bottom: 16px; }
.card .num { margin-bottom: 24px; font-size: 10px; }

@media (min-width: 761px) {
  .grid-3 > article:not(:first-child),
  .grid-4 > article:not(:first-child) {
    border-left: 1px solid rgba(104,74,32,.25);
    padding-left: 24px;
  }
}

.metrics {
  gap: 0;
  border-top: 1px solid rgba(104,74,32,.36);
  border-bottom: 1px solid rgba(104,74,32,.36);
  margin-top: 42px;
}
.metric {
  background: transparent;
  border: 0;
  padding: 19px 18px 20px 0;
}
.metric + .metric { border-left: 1px solid rgba(104,74,32,.28); padding-left: 18px; }
.metric strong { font-family: var(--font-display); font-size: 21px; font-weight: 500; line-height: 1.15; }

/* Director ledger: a disciplined control sheet, not a rounded dashboard card. */
.ops-console {
  background: #10161d;
  border: 1px solid rgba(176,142,84,.66);
  border-radius: 0;
  padding: 34px;
  box-shadow: 22px 22px 0 rgba(104,74,32,.10);
}
.console-top { border-bottom: 1px solid rgba(255,255,255,.22); padding-bottom: 22px; }
.console-top strong { font-size: 28px; letter-spacing: -.015em; }
.status {
  border: 0;
  border-bottom: 1px solid rgba(239,214,156,.75);
  border-radius: 0;
  background: transparent;
  padding: 4px 0;
  color: #efd69c;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-size: 9px;
}
.ops-stat-grid { gap: 0; margin: 0; }
.ops-stat-grid article {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.13);
  padding: 22px 16px 22px 0;
}
.ops-stat-grid article:nth-child(even) { border-left: 1px solid rgba(255,255,255,.13); padding-left: 22px; }
.ops-stat-grid strong { font-size: 38px; }
.ops-list > div { padding: 18px 0; }
.ops-dot {
  width: 14px;
  height: 1px;
  border-radius: 0;
  box-shadow: none;
}
.ops-dot.risk, .ops-dot.good { box-shadow: none; }
.ops-console .quote-box {
  background: transparent;
  border-left: 0;
  border-top: 1px solid rgba(181,138,67,.45);
  margin-top: 8px;
  padding: 22px 0 0;
  font-family: var(--font-display);
  font-style: italic;
  font-size: 22px;
}

.dark-band { background: #12110e; margin: 24px 0; }
.dark-band .card {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(208,184,121,.42);
}
.dark-band .grid-4 > article:not(:first-child) { border-left-color: rgba(208,184,121,.18); }

/* Services become a restrained rate sheet. */
.service-stack { gap: 0; border-bottom: 1px solid rgba(104,74,32,.42); }
.service-card,
.service-card.featured {
  position: relative;
  grid-template-columns: 70px minmax(0,1fr) 250px;
  gap: 28px;
  color: var(--ink);
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(104,74,32,.42);
  padding: 32px 0;
}
.service-card.featured { border-top: 2px solid var(--ink); }
.service-card.featured::before {
  content: "Core engagement";
  position: absolute;
  top: -1px;
  right: 0;
  transform: translateY(-100%);
  padding-bottom: 8px;
  color: var(--gold-dark);
  font: 600 9px/1 var(--font-body);
  text-transform: uppercase;
  letter-spacing: .15em;
}
.service-index,
.service-card.featured .service-index {
  width: auto;
  height: auto;
  display: block;
  border: 0;
  border-radius: 0;
  color: var(--gold-dark);
  font: 500 35px/1 var(--font-display);
}
.service-copy h3 { margin-top: 0; }
.service-card.featured .service-copy p,
.service-card.featured .check-list li,
.service-card.featured .small-label,
.service-card.featured .service-price span,
.service-card.featured .service-price a,
.service-card.featured .service-price strong { color: inherit; }
.service-price { border-left-color: rgba(104,74,32,.32); }
.service-price strong { font-size: 29px; }
.service-price a { color: var(--gold-dark); }

.check-list li::before {
  width: 13px;
  height: 1px;
  border: 0;
  background: var(--gold);
  top: .78em;
}

/* Native editorial diagrams. */
.process-ledger {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
  margin-top: 10px;
}
.process-step {
  min-height: 270px;
  padding: 26px 24px 30px 0;
  position: relative;
}
.process-step + .process-step {
  border-left: 1px solid rgba(104,74,32,.30);
  padding-left: 24px;
}
.process-step .process-no {
  display: block;
  color: var(--gold-dark);
  font: 500 37px/1 var(--font-display);
  margin-bottom: 72px;
}
.process-step h3 { margin-bottom: 18px; }
.process-step p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }
.process-step::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 42px;
  height: 3px;
  background: var(--gold);
}
.process-caption {
  display: grid;
  grid-template-columns: 190px minmax(0,1fr);
  gap: 30px;
  padding: 18px 0 0;
  color: var(--muted);
  font-size: 13px;
}
.process-caption strong { color: var(--ink); font-weight: 600; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; }

.phase-grid {
  gap: 0;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
  margin-top: 0;
}
.phase-card {
  background: transparent;
  border: 0;
  padding: 32px 32px 38px 0;
  min-height: 350px;
}
.phase-card + .phase-card { border-left: 1px solid rgba(104,74,32,.30); padding-left: 32px; }
.phase-card > span { font-size: 9px; letter-spacing: .16em; }
.phase-card h3 { font-size: 44px; margin: 22px 0 44px; }
.phase-card .check-list { gap: 16px; }
.outcome-line {
  display: grid;
  grid-template-columns: 180px repeat(3,1fr);
  border-bottom: 1px solid rgba(104,74,32,.42);
  margin-top: 0;
}
.outcome-line > * { padding: 19px 22px 19px 0; }
.outcome-line > * + * { border-left: 1px solid rgba(104,74,32,.25); padding-left: 22px; }
.outcome-line span { color: var(--gold-dark); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; }
.outcome-line strong { font-family: var(--font-display); font-size: 21px; font-weight: 500; }

.visual-frame,
.pack-image,
.table-wrap {
  background: transparent;
  border: 1px solid rgba(104,74,32,.42);
  padding: 0;
}
.visual-frame picture { border-radius: 0; }
.visual-frame figcaption { padding: 15px 0 0; }
.visual-frame-dark { background: #10161d; }

.case-panel,
.commercial-panel {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
  padding: 44px 0;
}
.case-facts { gap: 0; border-top: 1px solid rgba(104,74,32,.30); }
.case-facts article {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(104,74,32,.30);
  padding: 22px 18px 22px 0;
}
.case-facts article:nth-child(even) { border-left: 1px solid rgba(104,74,32,.25); padding-left: 18px; }
.case-facts strong { font-size: 31px; }

.layer-stack { gap: 0; border-top: 1px solid rgba(104,74,32,.42); }
.layer-stack article {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(104,74,32,.42);
  border-left: 4px solid transparent;
  padding: 22px 22px;
}
.layer-stack article:nth-child(1) { border-left-color: var(--ink); }
.layer-stack article:nth-child(2) { border-left-color: #5d554a; }
.layer-stack article:nth-child(3) { border-left-color: var(--gold); }
.layer-stack article:nth-child(4) { border-left-color: var(--line); }
.layer-stack article:not(:last-child)::after { display: none; }
.layer-stack strong { font-size: 25px; }

.timeline { gap: 0; border-top: 1px solid rgba(104,74,32,.42); }
.timeline-item {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(104,74,32,.42);
  padding: 25px 0 25px 72px;
}
.timeline-item::before { left: 0; top: 27px; }

.access-roles { gap: 0; border-top: 1px solid rgba(104,74,32,.42); }
.access-role {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(104,74,32,.42);
  padding: 25px 0;
}
.role-icon { border-radius: 0; border-width: 0 0 1px; }

.site-notice-card,
.notice-box,
.form-panel,
.principal-card,
.legacy-note {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(104,74,32,.42);
  border-bottom: 1px solid rgba(104,74,32,.42);
  padding: 30px 0;
}
.principal-portrait { border-radius: 0; }

.engagement-table { gap: 0; border-bottom: 1px solid rgba(104,74,32,.42); }
.engagement-table article,
.engagement-table article.featured {
  background: transparent;
  color: var(--ink);
  border: 0;
  border-top: 1px solid rgba(104,74,32,.42);
  padding: 28px 0;
}
.engagement-table article.featured { border-top: 2px solid var(--ink); }
.engagement-table article.featured p { color: var(--muted); }

.cta-band { background: #11161c; }
.cta-band h2 { max-width: 760px; }

.site-footer { background: #ebe4d8; padding-top: 48px; }
.footer-title { font-size: 29px; }
.footer-portrait { border-radius: 0; }

@media (max-width: 1050px) {
  .service-card, .service-card.featured { grid-template-columns: 58px minmax(0,1fr); }
  .service-price { grid-column: 2; }
  .process-ledger { grid-template-columns: repeat(3,1fr); }
  .process-step:nth-child(4) { border-left: 0; padding-left: 0; border-top: 1px solid rgba(104,74,32,.30); }
  .process-step:nth-child(5) { border-top: 1px solid rgba(104,74,32,.30); }
}

@media (max-width: 900px) {
  .hero { padding-top: 72px; gap: 42px; }
  .process-ledger { grid-template-columns: 1fr 1fr; }
  .process-step:nth-child(n) { border-left: 0; border-top: 1px solid rgba(104,74,32,.30); padding-left: 0; }
  .process-step:nth-child(even) { border-left: 1px solid rgba(104,74,32,.30); padding-left: 24px; }
  .process-step:first-child, .process-step:nth-child(2) { border-top: 0; }
  .outcome-line { grid-template-columns: 1fr; }
  .outcome-line > * + * { border-left: 0; border-top: 1px solid rgba(104,74,32,.25); padding-left: 0; }
}

@media (max-width: 760px) {
  .section, .hero, .page-hero { padding-left: 22px; padding-right: 22px; }
  h1 { font-size: clamp(47px, 15vw, 66px); }
  .lede { font-size: 23px; }
  .metrics { grid-template-columns: 1fr 1fr; }
  .metric + .metric { border-left: 0; padding-left: 0; }
  .metric:nth-child(even) { border-left: 1px solid rgba(104,74,32,.28); padding-left: 16px; }
  .metric:nth-child(n+3) { border-top: 1px solid rgba(104,74,32,.28); }
  .ops-console { padding: 25px; box-shadow: 12px 12px 0 rgba(104,74,32,.10); }
  .section-title { display: block; }
  .section-title .copy { margin-top: 22px; }
  .grid-3 > article:not(:first-child), .grid-4 > article:not(:first-child) { border-left: 0; padding-left: 0; }
  .service-card, .service-card.featured { grid-template-columns: 1fr; gap: 16px; }
  .service-price { grid-column: auto; border-left: 0; border-top: 1px solid rgba(104,74,32,.28); padding: 20px 0 0; }
  .process-ledger { grid-template-columns: 1fr; }
  .process-step:nth-child(n) { min-height: 0; border-left: 0; border-top: 1px solid rgba(104,74,32,.30); padding: 24px 0 28px; }
  .process-step:first-child { border-top: 0; }
  .process-step .process-no { margin-bottom: 32px; }
  .process-caption { grid-template-columns: 1fr; gap: 8px; }
  .phase-grid { display: block; }
  .phase-card, .phase-card + .phase-card { min-height: 0; border-left: 0; border-top: 1px solid rgba(104,74,32,.30); padding: 28px 0 34px; }
  .phase-card:first-child { border-top: 0; }
  .phase-card h3 { margin-bottom: 28px; }
  .case-panel, .commercial-panel { padding: 34px 0; }
  .case-facts article:nth-child(even) { border-left: 0; padding-left: 0; }
  .case-facts article { padding-left: 0; }
  .access-role { grid-template-columns: 54px 1fr; }
  .role-limit { grid-column: 2; border-left: 0; padding-left: 0; }
  .principal-portrait { border-radius: 0; }
}

@media (max-width: 480px) {
  .metrics, .ops-stat-grid { grid-template-columns: 1fr; }
  .metric:nth-child(n), .ops-stat-grid article:nth-child(n) { border-left: 0; padding-left: 0; }
  .metric + .metric, .ops-stat-grid article + article { border-top: 1px solid rgba(104,74,32,.28); }
}

@media (max-width: 480px) {
  .header-inner { padding: 11px 10px; gap: 7px; }
  .brand { gap: 7px; }
  .brand-logo, .brand-logo img { width: 46px; height: 39px; }
  .brand-text strong { font-size: 20px; }
  .nav-toggle { min-height: 39px; padding: 7px 8px; gap: 7px; font-size: 17px; }
  .menu-lines, .menu-lines::before, .menu-lines::after, .menu-lines span { width: 20px; }
}

/* Blueprint refinement — 16 July 2026
   Bodoni display typography and simplified control-schematic language. */
:root {
  --blueprint: #06182d;
  --blueprint-2: #0b223c;
  --copper: #b77a3f;
  --copper-soft: rgba(183,122,63,.42);
  --ivory-blueprint: #f2e9d9;
  --font-display: "Bodoni Moda", Didot, "Bodoni 72", "Times New Roman", serif;
}

body::before {
  background-image:
    linear-gradient(rgba(104,74,32,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(104,74,32,.025) 1px, transparent 1px),
    radial-gradient(circle at 15% -5%, rgba(146,112,59,.07), transparent 30%);
  background-size: 72px 72px, 72px 72px, auto;
  opacity: .72;
}

h1, h2, h3, h4,
.brand-text strong,
.footer-title,
.big-number,
.service-price strong,
.layer-stack strong,
.case-facts strong,
.ops-stat-grid strong,
.console-top strong,
.sheet-header strong,
.metric strong,
.process-step .process-no,
.outcome-line strong {
  font-family: var(--font-display);
  font-optical-sizing: auto;
}

h1 { font-weight: 500; letter-spacing: -.052em; }
h2 { font-weight: 500; letter-spacing: -.044em; }
h3 { font-weight: 500; letter-spacing: -.032em; }
.lede { font-family: var(--font-display); font-weight: 400; }

/* Dark blueprint header across the site. */
.site-header {
  background:
    linear-gradient(rgba(183,122,63,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(183,122,63,.035) 1px, transparent 1px),
    rgba(6,24,45,.975);
  background-size: 42px 42px;
  border-bottom: 1px solid rgba(183,122,63,.48);
  color: var(--ivory-blueprint);
}
.brand-logo,
.brand-logo img { width: 54px; height: 47px; }
.brand-text strong {
  color: var(--ivory-blueprint);
  font-size: clamp(24px, 2.2vw, 32px);
  letter-spacing: .012em;
}
.brand-text span { color: #d69a59; }
.primary-nav { color: rgba(242,233,217,.78); }
.primary-nav a[aria-current="page"],
.primary-nav a:hover { color: var(--ivory-blueprint); border-bottom-color: var(--copper); }
.nav-cta {
  color: var(--ivory-blueprint) !important;
  border-bottom-color: var(--copper) !important;
}
.nav-toggle {
  color: var(--ivory-blueprint);
  background: transparent;
  border-color: rgba(183,122,63,.65);
}
.menu-lines::before, .menu-lines::after, .menu-lines span { background: var(--ivory-blueprint); }

/* Homepage emblem: compact schematic rather than a dashboard or speech-box surface. */
.ops-hero {
  position: relative;
  grid-template-columns: minmax(0, 1.02fr) minmax(390px, .78fr);
  align-items: center;
}
.blueprint-emblem {
  margin: 0;
  position: relative;
  border: 1px solid rgba(183,122,63,.62);
  background: var(--blueprint);
  padding: 9px;
  box-shadow: 22px 22px 0 rgba(6,24,45,.085);
}
.blueprint-emblem::before,
.blueprint-emblem::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 2;
}
.blueprint-emblem::before {
  inset: 18px;
  border: 1px solid rgba(183,122,63,.22);
}
.blueprint-emblem::after {
  inset: -8px 28px auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--copper), transparent);
}
.blueprint-emblem picture,
.blueprint-emblem img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.blueprint-emblem figcaption {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  align-items: center;
  padding: 16px 9px 8px;
  color: rgba(242,233,217,.68);
  font: 600 9px/1.3 var(--font-body);
  letter-spacing: .16em;
  text-transform: uppercase;
}
.blueprint-emblem figcaption strong {
  color: var(--ivory-blueprint);
  font-family: var(--font-display);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: .01em;
  text-transform: none;
}

.blueprint-keyline {
  max-width: 1180px;
  height: 72px;
  margin: 0 auto;
  padding: 0 34px;
  display: grid;
  grid-template-columns: 1fr 9px .42fr 9px 1fr;
  gap: 16px;
  align-items: center;
}
.blueprint-keyline span { height: 1px; background: rgba(104,74,32,.42); }
.blueprint-keyline i {
  width: 8px;
  height: 8px;
  border: 1px solid var(--gold);
  transform: rotate(45deg);
}

/* Blueprint visual sections break the long-form page while remaining editorial. */
.blueprint-section {
  position: relative;
  max-width: 1240px;
  margin-top: 34px;
  margin-bottom: 34px;
  padding: 64px 54px 58px;
  overflow: hidden;
  color: var(--ivory-blueprint);
  border: 1px solid rgba(183,122,63,.58);
  background-color: var(--blueprint);
  background-image:
    linear-gradient(rgba(183,122,63,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(183,122,63,.055) 1px, transparent 1px),
    radial-gradient(circle at 50% 45%, rgba(21,55,88,.42), transparent 58%);
  background-size: 38px 38px, 38px 38px, auto;
}
.blueprint-section::before,
.blueprint-section::after {
  content: "";
  position: absolute;
  width: 52px;
  height: 52px;
  pointer-events: none;
}
.blueprint-section::before {
  left: 18px;
  top: 18px;
  border-left: 1px solid var(--copper);
  border-top: 1px solid var(--copper);
}
.blueprint-section::after {
  right: 18px;
  bottom: 18px;
  border-right: 1px solid var(--copper);
  border-bottom: 1px solid var(--copper);
}
.blueprint-section h2,
.blueprint-section h3 { color: var(--ivory-blueprint); }
.blueprint-section .eyebrow { color: #d69a59; }
.blueprint-section .copy,
.blueprint-section p { color: rgba(242,233,217,.70); }
.blueprint-section .section-title { border-bottom: 1px solid rgba(183,122,63,.30); padding-bottom: 30px; }

.blueprint-section .process-ledger,
.blueprint-section .phase-grid {
  border-color: rgba(183,122,63,.70);
}
.blueprint-section .process-step,
.blueprint-section .phase-card {
  position: relative;
  border-color: rgba(183,122,63,.28) !important;
}
.blueprint-section .process-step::before {
  content: "";
  position: absolute;
  top: 84px;
  left: 0;
  width: 28px;
  height: 28px;
  border: 1px solid var(--copper);
  border-radius: 50%;
  background:
    linear-gradient(var(--copper),var(--copper)) center/1px 100% no-repeat,
    linear-gradient(90deg,var(--copper),var(--copper)) center/100% 1px no-repeat;
}
.blueprint-section .process-step + .process-step::before { left: 24px; }
.blueprint-section .process-step .process-no { color: #d69a59; margin-bottom: 78px; }
.blueprint-section .process-step::after { background: var(--copper); }
.blueprint-section .process-caption { color: rgba(242,233,217,.64); }
.blueprint-section .process-caption strong { color: #d69a59; }

.blueprint-roadmap .phase-card::before {
  content: "";
  display: block;
  width: 48px;
  height: 48px;
  margin: 23px 0 30px;
  border: 1px solid var(--copper);
  border-radius: 50%;
  box-shadow: inset 0 0 0 8px rgba(183,122,63,.055);
  background:
    radial-gradient(circle at center, var(--copper) 0 2px, transparent 3px),
    linear-gradient(var(--copper),var(--copper)) center/1px 100% no-repeat,
    linear-gradient(90deg,var(--copper),var(--copper)) center/100% 1px no-repeat;
}
.blueprint-roadmap .phase-card > span { color: #d69a59; }
.blueprint-roadmap .phase-card h3 { margin-top: 0; }
.blueprint-roadmap .check-list li { color: rgba(242,233,217,.76); }
.blueprint-roadmap .check-list li::before { background: var(--copper); }
.blueprint-roadmap .outcome-line { border-color: rgba(183,122,63,.48); }
.blueprint-roadmap .outcome-line > * + * { border-color: rgba(183,122,63,.24); }
.blueprint-roadmap .outcome-line span { color: #d69a59; }
.blueprint-roadmap .outcome-line strong { color: var(--ivory-blueprint); }

/* Refined blueprint accents on existing content without adding more copy. */
.service-index {
  position: relative;
  color: var(--gold-dark);
}
.service-index::after {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  margin-top: 18px;
  border: 1px solid rgba(104,74,32,.48);
  border-radius: 50%;
  background:
    linear-gradient(rgba(104,74,32,.48),rgba(104,74,32,.48)) center/1px 100% no-repeat,
    linear-gradient(90deg,rgba(104,74,32,.48),rgba(104,74,32,.48)) center/100% 1px no-repeat;
}
.layer-stack article { position: relative; padding-left: 34px; }
.layer-stack article::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 9px;
  height: 9px;
  border: 1px solid var(--gold);
  border-radius: 50%;
  transform: translateY(-50%);
}

@media (max-width: 1050px) {
  .ops-hero { grid-template-columns: 1fr 420px; gap: 42px; }
  .blueprint-section { margin-left: 22px; margin-right: 22px; }
}

@media (max-width: 900px) {
  .ops-hero { grid-template-columns: 1fr; }
  .blueprint-emblem { max-width: 620px; justify-self: center; }
  .blueprint-section { padding: 52px 34px 48px; }
  .blueprint-section .process-step:nth-child(even)::before { left: 24px; }
  .blueprint-section .process-step:nth-child(odd)::before { left: 0; }
}

@media (max-width: 760px) {
  .site-header { background-size: 32px 32px; }
  .brand-logo, .brand-logo img { width: 48px; height: 42px; }
  .blueprint-emblem { box-shadow: 11px 11px 0 rgba(6,24,45,.08); }
  .blueprint-emblem figcaption { grid-template-columns: 1fr; gap: 6px; }
  .blueprint-keyline { height: 48px; padding: 0 22px; }
  .blueprint-section { margin: 18px 12px; padding: 44px 24px 40px; }
  .blueprint-section::before,
  .blueprint-section::after { width: 34px; height: 34px; }
  .blueprint-section .process-step:nth-child(n)::before { left: 0; top: 68px; }
  .blueprint-section .process-step .process-no { margin-bottom: 67px; }
  .blueprint-roadmap .phase-card::before { margin-top: 20px; }
}

@media (max-width: 480px) {
  .brand-text strong { font-size: 18px; }
  .brand-text span { font-size: 8px; letter-spacing: .16em; }
  .blueprint-emblem { padding: 6px; }
  .blueprint-emblem::before { inset: 12px; }
  .blueprint-emblem figcaption strong { font-size: 14px; }
  .blueprint-section { margin-left: 8px; margin-right: 8px; padding-left: 18px; padding-right: 18px; }
}

/* Carry the schematic identity into internal pages without adding text. */
.page-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.page-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: 24px;
  top: 50%;
  width: min(34vw, 380px);
  aspect-ratio: 1;
  transform: translateY(-50%);
  background: url('/assets/img/lssco-blueprint-icon-512.png') center/contain no-repeat;
  opacity: .065;
  filter: sepia(.15);
}
.page-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 16px 24px;
  border-top: 1px solid rgba(104,74,32,.15);
  border-bottom: 1px solid rgba(104,74,32,.15);
}
.site-footer {
  border-top: 1px solid rgba(183,122,63,.46);
  background-image:
    linear-gradient(rgba(104,74,32,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(104,74,32,.022) 1px, transparent 1px);
  background-size: 48px 48px;
}
@media (max-width: 760px) {
  .page-hero::after { width: 260px; right: -90px; opacity: .045; }
  .page-hero::before { left: 12px; right: 12px; }
}

/* Mobile legibility and signal-colour correction — 17 July 2026
   Inspired by restrained late-20th-century technical-screen palettes: steel blue,
   deep navy, warm amber and limited magenta signals. */
:root {
  --ink: #17191b;
  --charcoal: #2c3136;
  --muted: #545b61;
  --muted-2: #737b81;
  --paper: #f2efe8;
  --paper-2: #e8e4dc;
  --panel: #ece8e0;
  --blueprint: #071a2d;
  --blueprint-2: #102f4b;
  --copper: #c27d49;
  --copper-soft: rgba(194,125,73,.42);
  --ivory-blueprint: #f4eee3;
  --signal-blue: #6ba7c8;
  --signal-cyan: #91c8d8;
  --signal-magenta: #b84b74;
  --signal-amber: #d5a15c;
}

body {
  color: var(--ink);
  background:
    linear-gradient(rgba(91,126,151,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(91,126,151,.032) 1px, transparent 1px),
    var(--paper);
  background-size: 64px 64px;
}

body::before {
  background-image:
    radial-gradient(circle at 9% 0%, rgba(107,167,200,.08), transparent 28%),
    radial-gradient(circle at 96% 18%, rgba(184,75,116,.045), transparent 26%);
  background-size: auto;
  opacity: 1;
}

h1, h2, h3, h4,
.brand-text strong,
.footer-title,
.big-number,
.service-price strong,
.layer-stack strong,
.case-facts strong,
.ops-stat-grid strong,
.console-top strong,
.sheet-header strong,
.metric strong,
.process-step .process-no,
.outcome-line strong {
  font-weight: 600;
  text-rendering: geometricPrecision;
}

h1 { line-height: .96; letter-spacing: -.044em; }
h2 { line-height: 1.01; letter-spacing: -.036em; }
h3 { line-height: 1.08; letter-spacing: -.024em; }

.lede {
  font-family: var(--font-body);
  font-weight: 500;
  color: #4e555a;
  letter-spacing: -.012em;
  line-height: 1.62;
}
.copy,
.card p,
.scenario p,
.role-card p,
.check-list li,
.detail-list li,
.timeline-item p,
.principal-card p,
.footer-inner p {
  color: var(--muted);
}

.site-header {
  background:
    repeating-linear-gradient(0deg, rgba(145,200,216,.018) 0 1px, transparent 1px 4px),
    linear-gradient(rgba(107,167,200,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(194,125,73,.042) 1px, transparent 1px),
    rgba(7,26,45,.985);
  background-size: auto, 42px 42px, 42px 42px, auto;
  border-bottom-color: rgba(194,125,73,.64);
}

.brand-text strong {
  color: #f7f1e7;
  font-weight: 600;
  text-shadow: 0 1px 0 rgba(0,0,0,.18);
}
.brand-text span { color: var(--signal-amber); }
.nav-toggle { color: #fff7eb; border-color: rgba(194,125,73,.76); }
.nav-toggle:hover,
.nav-toggle:focus-visible { border-color: var(--signal-blue); }
.menu-lines::before,
.menu-lines::after,
.menu-lines span { background: #fff7eb; }

/* The schematic is presented as a compact plate; never stretch it vertically. */
.blueprint-emblem {
  width: min(100%, 660px);
  overflow: hidden;
  background:
    repeating-linear-gradient(0deg, rgba(145,200,216,.018) 0 1px, transparent 1px 4px),
    var(--blueprint);
  border-color: rgba(194,125,73,.72);
  box-shadow: 16px 16px 0 rgba(7,26,45,.075);
}
.blueprint-emblem picture { display: block; width: 100%; }
.blueprint-emblem img {
  display: block;
  width: 100%;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: contain !important;
  object-position: center;
}
.blueprint-emblem::after {
  background: linear-gradient(90deg, transparent 0 12%, var(--signal-blue) 12% 34%, var(--copper) 34% 68%, var(--signal-magenta) 68% 88%, transparent 88%);
  opacity: .82;
}
.blueprint-emblem figcaption {
  border-top: 1px solid rgba(194,125,73,.25);
  color: rgba(244,238,227,.74);
}
.blueprint-emblem figcaption span::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 50%;
  background: var(--signal-blue);
  box-shadow: 13px 0 0 var(--signal-magenta);
}

.dark-band {
  background:
    repeating-linear-gradient(0deg, rgba(145,200,216,.016) 0 1px, transparent 1px 4px),
    linear-gradient(135deg, #0d1d2a, #10181f 62%, #17151b);
  border-top: 1px solid rgba(107,167,200,.26);
  border-bottom: 1px solid rgba(184,75,116,.18);
}
.dark-band .eyebrow { color: var(--signal-amber); }
.dark-band .card:nth-child(2) .num { color: var(--signal-blue); }
.dark-band .card:nth-child(3) .num { color: #d06b8d; }
.dark-band .card:nth-child(4) .num { color: var(--signal-amber); }

.blueprint-section {
  background-image:
    repeating-linear-gradient(0deg, rgba(145,200,216,.016) 0 1px, transparent 1px 4px),
    linear-gradient(rgba(107,167,200,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(194,125,73,.052) 1px, transparent 1px),
    radial-gradient(circle at 50% 45%, rgba(32,78,111,.48), transparent 58%);
  background-size: auto, 38px 38px, 38px 38px, auto;
}
.blueprint-section .process-step:nth-child(2)::before,
.blueprint-roadmap .phase-card:nth-child(2)::before { border-color: var(--signal-blue); }
.blueprint-section .process-step:nth-child(4)::before,
.blueprint-roadmap .phase-card:nth-child(3)::before { border-color: var(--signal-magenta); }

@media (max-width: 1260px) {
  .primary-nav {
    z-index: 120;
    inset: 78px 18px auto 18px;
    max-height: calc(100dvh - 94px);
    overflow-y: auto;
    background:
      repeating-linear-gradient(0deg, rgba(145,200,216,.018) 0 1px, transparent 1px 4px),
      linear-gradient(rgba(107,167,200,.04) 1px, transparent 1px),
      linear-gradient(90deg, rgba(194,125,73,.04) 1px, transparent 1px),
      #071a2d;
    background-size: auto, 34px 34px, 34px 34px, auto;
    color: #f7f1e7;
    border: 1px solid rgba(194,125,73,.82);
    border-radius: 2px;
    box-shadow: 0 24px 70px rgba(0,0,0,.48);
    padding: 14px 20px 18px;
    gap: 0;
  }
  .primary-nav a {
    color: #f7f1e7 !important;
    border-bottom: 1px solid rgba(194,125,73,.30) !important;
    padding: 16px 2px 14px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .045em;
  }
  .primary-nav a:hover,
  .primary-nav a:focus-visible {
    color: var(--signal-cyan) !important;
    border-bottom-color: var(--signal-blue) !important;
  }
  .primary-nav .nav-cta {
    margin-top: 8px;
    color: #071a2d !important;
    background: var(--signal-amber);
    border: 1px solid var(--signal-amber) !important;
    padding: 14px 12px !important;
    text-align: center;
  }
  body.nav-open { overflow: hidden; }
}

@media (max-width: 900px) {
  .ops-hero { gap: 44px; }
  .blueprint-emblem { max-width: 600px; }
}

@media (max-width: 760px) {
  .hero { padding-top: 52px; padding-bottom: 54px; }
  .ops-hero h1 {
    font-size: clamp(40px, 11.2vw, 48px);
    line-height: .99;
    letter-spacing: -.035em;
    max-width: 13ch;
  }
  .lede {
    font-size: 18px;
    line-height: 1.62;
    max-width: 36em;
  }
  .copy { font-size: 15px; line-height: 1.72; }
  .eyebrow,
  .section-kicker { color: #75522d; font-weight: 600; }
  .blueprint-emblem {
    width: 100%;
    max-width: 560px;
    justify-self: center;
    box-shadow: 9px 9px 0 rgba(7,26,45,.07);
  }
  .blueprint-emblem figcaption {
    padding: 12px 7px 7px;
    font-size: 8px;
    letter-spacing: .12em;
  }
  .blueprint-emblem figcaption strong { font-size: 13px; }
}

@media (max-width: 480px) {
  .header-inner { padding: 10px 12px; }
  .brand-logo,
  .brand-logo img { width: 48px; height: 42px; }
  .brand-text strong { font-size: 19px; letter-spacing: .005em; }
  .nav-toggle {
    min-height: 43px;
    padding: 8px 10px;
    font-size: 17px;
    font-weight: 600;
  }
  .primary-nav { inset: 68px 10px auto 10px; }
  .hero { padding-left: 20px; padding-right: 20px; }
  .ops-hero h1 {
    font-size: clamp(38px, 10.8vw, 44px);
    max-width: 12.5ch;
  }
  .lede { font-size: 17px; line-height: 1.65; }
  .blueprint-emblem { padding: 5px; }
  .blueprint-emblem::before { inset: 10px; }
  .blueprint-emblem figcaption span { display: none; }
  .blueprint-emblem figcaption { grid-template-columns: 1fr; }
}

@media (max-width: 1260px) {
  body.nav-open::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 40;
    background: rgba(3,13,24,.72);
    backdrop-filter: blur(2px);
  }
}

@media (max-width: 760px) {
  .ops-hero h1 { max-width: 100%; }
}
