/* Neverlost deck / one-pager visual system. Prepared for review, October 2026. */
@font-face { font-family: 'Montserrat'; src: url('assets/fonts/Montserrat-600.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Montserrat'; src: url('assets/fonts/Montserrat-700.ttf') format('truetype'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'Source Sans 3'; src: url('assets/fonts/SourceSans3-400.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Source Sans 3'; src: url('assets/fonts/SourceSans3-600.ttf') format('truetype'); font-weight: 600 800; font-display: swap; }
:root {
  --bg: #f7f9fb; --surface: #fcfdfe; --surface-muted: #eaf4fa;
  --text: #000000; --text-muted: #000000; --line: #cbdde9;
  --brand: #21608d; --brand-dark: #174969; --dark: #081f35;
  --deck-page: #f7f9fb; --deck-panel: #eaf4fa; --deck-panel-strong: #dcecf7;
  --radius: 20px; --shadow: none; --max-width: 1160px;
}
body { font-family: 'Source Sans 3', system-ui, sans-serif; font-size: 1.125rem; line-height: 1.6; background: var(--bg); }
h1, h2, h3, .brand { font-family: 'Montserrat', system-ui, sans-serif; font-weight: 600; }
main h1, main h2 { color: var(--text); letter-spacing: -0.035em; line-height: 1.15; }
main h2 { max-width: 970px; font-size: clamp(2rem, 3.6vw, 3.1rem); margin-bottom: 1.5rem; }
main h3 { color: var(--text); line-height: 1.3; letter-spacing: -0.025em; }
main p { text-wrap: pretty; }
main > .section::before, main > .section::after { display: none; }
main > .section { overflow: visible; }
.container { width: min(calc(100% - 4rem), var(--max-width)); }
.narrow { max-width: var(--max-width); }
.section { padding: 5.5rem 0; scroll-margin-top: 6rem; }
.section-lede, .hero-lede { max-width: 790px; font-size: 1.3rem; color: var(--text-muted); line-height: 1.55; }
.eyebrow { display: flex; align-items: center; gap: .65rem; font-size: .85rem; color: var(--text); font-weight: 600; letter-spacing: .09em; margin-bottom: 1.4rem; }
.eyebrow::before { content: ''; height: 2px; width: 24px; background: #4f9fe6; flex: 0 0 24px; }
.site-header { background: #081f35; box-shadow: none; }
.nav-toggle { background: var(--dark); color: #fff; }
.brand { font-size: 1rem; letter-spacing: -.025em; }
.primary-nav a { font-size: 1rem; color: #fff; }
.primary-nav a:hover, .primary-nav a:focus-visible { color: #fff; }
.primary-nav a:last-child { color: #fff; border-bottom: 0; text-decoration: none; }
#top { min-height: 0; background: var(--deck-page); color: var(--text); padding: 6rem 0 5.5rem; }
#top .hero-grid { display: block; }
#top h1 { background: transparent; color: var(--text); padding: 0; border-radius: 0; max-width: 1090px; font-size: clamp(2.5rem, 4.9vw, 4.3rem); line-height: 1.13; margin-bottom: 1.9rem; font-weight: 600; letter-spacing: -.04em; }
#top .hero-lede { max-width: 870px; }
.hero-focus { color: var(--text); font-size: 1.05rem; margin: 1.5rem 0 0; }
.hero-actions { display: flex; align-items: center; gap: 1.6rem; margin-top: 1.8rem; }
.button { border-radius: 10px; font-family: 'Source Sans 3', system-ui, sans-serif; font-weight: 600; box-shadow: none; font-size: 1.08rem; padding: .8rem 1.3rem; }
.button-primary { background: var(--dark); color: #fff; border: 1px solid var(--dark); }
.button-primary:hover, .button-primary:focus-visible { background: #173b58; border-color: #173b58; }
.text-link { font-weight: 600; color: var(--text); text-decoration-thickness: 1px; text-underline-offset: 5px; }
#encounter-problem { background: var(--surface); border-top: 1px solid var(--line); }
#encounter-problem h2, #encounter-problem .eyebrow, #encounter-problem .section-lede:not(.encounter-summary) { text-align: left; margin-inline: 0; }
#encounter-problem .perspective-grid { max-width: none; margin-inline: 0; }
.comparison-title { margin: 2.5rem 0 .45rem; font-size: 1.3rem; }
.illustration-note { color: var(--text-muted); font-size: .95rem; margin-bottom: 1.25rem; }
.perspective-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.perspective-card { background: var(--deck-panel); border: 0; border-radius: var(--radius); padding: 2rem; box-shadow: none; }
.perspective-card:nth-child(2) { background: var(--deck-panel-strong); }
.perspective-label { color: var(--text); font-size: .9rem; font-weight: 600; margin-bottom: 1rem; }
.perspective-card blockquote { margin: 0; font-family: 'Source Sans 3',sans-serif; color: var(--text); font-size: 1.5rem; line-height: 1.45; font-weight: 400; }
#encounter-problem .encounter-summary { background: transparent; color: var(--text-muted); font-family: "Source Sans 3",sans-serif; border-radius: 0; max-width: 900px; text-align: left; letter-spacing: normal; border-top: 1px solid var(--line); margin: 1.8rem 0 0; padding-top: 1.5rem; font-size: 1.15rem; }
#guiding-question { background: var(--deck-panel-strong); padding: 4.5rem 0; }
#guiding-question h2 { max-width: 970px; font-size: clamp(2.1rem,4vw,3.4rem); }
#guiding-question .section-lede { max-width: 830px; color: var(--text); margin-bottom: 0; }
#initial-product { background: var(--surface); padding-bottom: 3.5rem; }
.capability-grid, .os-app-grid, .pilot-roadmap { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.3rem; margin-top: 2.25rem; }
.capability-card, .product-card, .roadmap-card { min-width: 0; padding: 2rem; border: 0; border-radius: var(--radius); background: var(--deck-panel); box-shadow: none; }
.capability-card:nth-child(2), .product-card:nth-child(2), .roadmap-card-highlight { background: var(--deck-panel-strong); }
.capability-card h3 { font-size: 1.4rem; margin: 1.2rem 0 1rem; }
.card-index, .product-status { color: var(--text); font-size: .88rem; font-weight: 600; letter-spacing: .035em; }
.capability-card p, .product-card > p:not(.product-status), .roadmap-card p:last-child { color: var(--text); font-size: 1.15rem; line-height: 1.5; }
.capability-card p { margin-bottom: 0; }
#neverlost-os { background: var(--surface); padding-top: 2rem; }
#neverlost-os > .container { border-top: 1px solid var(--line); padding-top: 3.5rem; }
#neverlost-os h2 { font-size: clamp(1.9rem,3vw,2.7rem); }
.product-card { display: flex; flex-direction: column; }
.product-card h3 { font-size: 1.5rem; margin-bottom: 1.25rem; }
.product-card .product-status { margin-bottom: .7rem; }
.product-card .button { margin-top: auto; align-self: flex-start; }
.os-foundation { margin-top: 1.5rem; padding: 2rem; background: var(--deck-panel-strong); border-radius: var(--radius); color: var(--text); }
.os-foundation h3 { margin-bottom: .75rem; font-size: 1.5rem; }
.os-foundation p { max-width: 920px; margin-bottom: 0; font-size: 1.15rem; }
.prototype-note { font-size: .95rem; color: var(--text-muted); margin: 1rem 0 0; }
#advocacy { background: var(--deck-page); border-top: 1px solid var(--line); }
.focus-support { color: var(--text-muted); max-width: 780px; }
.roadmap-card h3 { font-size: 1.35rem; margin-bottom: 1.15rem; }
.roadmap-card .product-status { margin-bottom: .9rem; }
.roadmap-card p:last-child { margin-bottom: 0; }
.pilot-roadmap { margin-bottom: 2rem; }
#about { background: var(--surface); color: var(--text); border-top: 1px solid var(--line); }
#about .eyebrow { color: var(--text); }
.founder-story { background: var(--deck-panel); border-radius: var(--radius); padding: 2.25rem; margin-top: 2.25rem; }
.founder-story p { max-width: 880px; color: var(--text); font-size: 1.2rem; line-height: 1.65; margin-bottom: 1.25rem; }
.founder-story p:last-child { margin-bottom: 0; }
@media (max-width: 760px) {
 .founder-story { padding: 1.6rem; }
}
#early-access { background: var(--deck-page); border-top: 1px solid var(--line); }
#early-access h2 { max-width: 100%; }
.signup-expectation { color: var(--text-muted); font-size: 1rem; }
.contact-card { padding: 2.5rem; background: var(--deck-panel); border: 0; border-radius: var(--radius); box-shadow: none; }
.early-access-form { display: grid; gap: 1.25rem; width: 100%; max-width: 840px; }
.form-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.25rem; }
.early-access-form label { display: block; min-width: 0; color: var(--text); font-weight: 600; font-size: 1.05rem; }
.optional-label { font-weight: 400; color: var(--text-muted); }
.early-access-form input, .early-access-form select, .early-access-form textarea { display: block; width: 100%; margin-top: .45rem; padding: .85rem; color: var(--text); background: #fff; border: 1px solid #90aec4; border-radius: 8px; font: inherit; font-weight: 400; }
.early-access-form textarea { resize: vertical; }
.early-access-form .form-note { color: var(--text-muted); font-size: 1rem; margin: 0; }
.early-access-form .button { width: fit-content; cursor: pointer; }
.form-honeypot { display: none; }
.legacy-anchor { position: absolute; top: 0; scroll-margin-top: 6rem; }
:focus-visible { outline: 3px solid #4f9fe6; outline-offset: 4px; }
.site-footer { background: #081f35; color: #d5e3ed; border-top: 0; }
.site-footer a { color: #fff; overflow-wrap: anywhere; }
.footer-wrap .footer-disclaimer { color: #b9cbd8; font-size: .95rem; }
@media (max-width: 1000px) {
 .primary-nav { gap: .9rem; }
 .brand { font-size: .95rem; }
 .capability-card, .product-card, .roadmap-card { padding: 1.5rem; }
}
@media (max-width: 900px) {
 .capability-grid, .os-app-grid, .pilot-roadmap { grid-template-columns: 1fr; }
 .primary-nav { background: #081f35; }
 .product-card .button { margin-top: 1rem; }
 .product-card { min-height: 0; }
 .perspective-grid { grid-template-columns: 1fr; }
 .section { padding: 4rem 0; }
 #top { padding: 4rem 0; }
 #top h1 { background: transparent; color: var(--text); padding: 0; border-radius: 0; max-width: 760px; }
}
@media (max-width: 560px) {
 .container { width: calc(100% - 2.5rem); }
 .brand { font-size: .85rem; gap: .5rem; }
 .brand-logo { width: 42px; height: 42px; flex-basis: 42px; }
 #top h1 { font-size: 2.35rem; line-height: 1.16; letter-spacing: -.04em; }
 main h2 { font-size: 1.95rem; }
 .hero-lede, .section-lede { font-size: 1.2rem; }
 .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.2rem; }
 .hero-actions .button { width: auto; }
 .form-row { grid-template-columns: 1fr; }
 .contact-card, .perspective-card { padding: 1.5rem; }
 #guiding-question { padding: 3.5rem 0; }
 #guiding-question h2 { font-size: 2.1rem; }
 .early-access-form .button { width: 100%; }
 .section { scroll-margin-top: 5rem; }
}
@media (prefers-reduced-motion: reduce) {
 html { scroll-behavior: auto; }
 body:not(.labs-page) .site-header { transition: none; }
}

/* Communication-focused copy and restored public-demo anchor. */
#encounter-problem .section-lede + .section-lede { margin-top: 1.25rem; }
#live-demos.prototype-heading { background: transparent; margin: 2.75rem 0 0; font-size: 1.4rem; scroll-margin-top: 6rem; }

/* A focused waitlist signup. */
.waitlist-intro, .waitlist-card { max-width: 880px; }
.waitlist-intro { margin-bottom: 2rem; }
.waitlist-intro .section-lede { margin-bottom: 0; }
.waitlist-card .signup-expectation { margin-bottom: 0; }
