/* Guided Intelligence — The Guided Line */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root {
  --font-display: 'Instrument Sans', 'Segoe UI', sans-serif;
  --font-sans: 'Instrument Sans', 'Segoe UI', sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;
  --paper: #f5f9fa; --ink: #012538; --ink-muted: #48636e;
  --accent: #067e8d; --accent-dark: #056373; --line: #cbdde2;
  --color-neutral-900: #012538; --color-neutral-800: #223c41;
  --color-neutral-700: #345565; --color-neutral-600: #48636e;
  --color-neutral-50: #f5f9fa; --color-neutral-100: #e5edef;
  --color-neutral-200: #cbdde2; --color-primary-500: #067e8d;
  --nav-bg-scrolled: rgba(245,249,250,.97);
}
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { font-family: var(--font-sans); background: var(--paper); color: var(--ink); }
::selection { background: #8acccf; color: #012538; }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
.skip-link { position: fixed; left: 20px; top: -80px; padding: 12px 20px; background: var(--ink); color: white; z-index: 2000; }
.skip-link:focus { top: 12px; }
.page-transition-overlay { display: none; }
body .navbar, .home-page .navbar, .demo-page .navbar { height: 88px; padding: 0; background: rgba(245,249,250,.94); border-bottom: 1px solid rgba(1,37,56,.12); backdrop-filter: blur(16px); }
body .nav-container { max-width: 1440px; height: 100%; padding: 0 48px; }
body .logo-img { height: 55px; width: 148px; object-fit: contain; }
body .nav-menu { gap: 25px; }
body .nav-menu a { font-size: 13px; letter-spacing: 0; }
body .cta-button { display: inline-flex; justify-content: center; align-items: center; gap: 20px; min-height: 46px; padding: 13px 23px; border: 1px solid var(--ink); border-radius: 5px; background: var(--ink); color: #fff; font: 500 14px var(--font-sans); text-decoration: none; box-shadow: none; transition: background .2s, transform .2s; }
body .cta-button::after { content: '↗'; font-size: 18px; font-weight: 400; }
body .cta-button:hover { background: var(--accent); border-color: var(--accent); transform: translateY(-2px); box-shadow: none; }
body .cta-button.large { margin: 0; min-height: 54px; padding: 15px 25px; font-size: 15px; }
body .hero { min-height: 740px; padding: 88px 0 0; position: relative; isolation: isolate; background: #e5eef0; overflow: hidden; }
body .hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 87% 30%, #c8dce0 0, transparent 52%), linear-gradient(120deg,#edf3f4 20%,#e2ebed 65%,#cbdde1); }
.hero-art { position: absolute; top: 35px; right: -8%; width: 77%; height: 100%; object-fit: cover; object-position: center; z-index: -1; pointer-events: none; }
body .hero-backdrop { display: none; }
body .hero-container { max-width: 1440px; margin: auto; padding: 98px 48px 110px; display: block; min-height: 650px; }
body .hero-content { max-width: 660px; animation: none; position: relative; }
body .hero-eyebrow, body .section-kicker { font-family: var(--font-mono); font-size: 11px; font-weight: 400; letter-spacing: .13em; text-transform: uppercase; color: var(--accent); margin: 0 0 27px; }
body .hero-eyebrow::before { content: ''; display: inline-block; height: 6px; width: 6px; border-radius: 50%; background: var(--accent); margin: 0 10px 2px 0; }
body.home-page .hero-title { max-width: 10ch; font-size: clamp(64px, 6.5vw, 94px); line-height: .99; letter-spacing: -.065em; font-weight: 400; color: var(--ink); margin: 0 0 32px; }
body .hero-description { max-width: 390px; font-size: 17px; line-height: 1.6; color: #345565; margin: 0 0 12px; opacity: 1; }
body .hero-description + .hero-description { font-size: 14px; }
body .hero-actions { display: flex; flex-direction: row-reverse; justify-content: flex-end; align-items: center; gap: 26px; margin-top: 30px; }
body .hero-link { margin: 0; font-size: 14px; color: var(--ink); text-decoration: none; border-bottom: 1px solid #6ea8b5; padding: 8px 0; }
.art-coordinate { position: absolute; right: 48px; bottom: 30px; display: flex; align-items: center; gap: 12px; font: 10px var(--font-mono); letter-spacing: .08em; color: #3f6f79; }
.art-coordinate::before { content: '+'; font-size: 24px; font-weight: 400; }
.lifecycle-section { padding: 0 48px; background: #e9f3f5; }
body .hero-visual { max-width: 1344px; margin: auto; padding: 40px 0; }
body .guidance-surface { background: transparent; box-shadow: none; border: 0; border-radius: 0; padding: 0; opacity: 1; transform: none; }
body .lifecycle-header { margin-bottom: 24px; display: flex; justify-content: space-between; align-items: center; padding: 0; border: 0; }
body .lifecycle-header > div { display: flex; align-items: center; gap: 22px; }
body .lifecycle-kicker { font: 10px var(--font-mono); text-transform: uppercase; letter-spacing: .09em; color: #48636e; margin: 0; }
body .lifecycle-title { font: 500 20px var(--font-sans); margin: 0; }
body .lifecycle-badge { border: 1px solid #97bcc4; background: transparent; font: 10px var(--font-mono); border-radius: 30px; padding: 7px 12px; color: var(--accent); }
body .lifecycle-track { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; position: relative; padding: 0; }
body .lifecycle-track::before { content: ''; position: absolute; top: 16px; height: 1px; left: 0; right: 0; width: auto; background: #a2c3cb; }
body .lifecycle-step, body .lifecycle-step.is-active, body .lifecycle-step.review-step { position: relative; display: block; padding: 0; margin: 0; background: transparent; border: 0; box-shadow: none; }
body .step-dot { display: grid; place-items: center; width: 33px; height: 33px; font: 11px var(--font-mono); border: 1px solid #8eb7c0; border-radius: 50%; background: #e9f3f5; color: var(--ink); margin: 0 0 20px; position: relative; }
body .review-step .step-dot { background: var(--ink); color: white; border-color: var(--ink); }
body .step-topline { display: block; }
body .step-topline h3 { font: 500 15px var(--font-sans); margin: 0 0 9px; }
body .step-state { display: inline-block; font: 9px var(--font-mono); text-transform: uppercase; letter-spacing: .06em; padding: 3px 6px; margin: 0 0 9px; color: #3b6973; background: #d0e1e4; border: 0; border-radius: 2px; }
body .step-state.review { background: #ece0c6; color: #68501c; }
body .step-body p { font-size: 13px; line-height: 1.55; color: #48636e; max-width: 235px; }
body .lifecycle-footer { padding: 20px 0 0; margin-top: 24px; border-top: 1px solid #b7d1d7; }
body .footer-pill { background: none; border: 0; padding: 0; display: flex; gap: 18px; align-items: center; }
body .pill-label { font: 10px var(--font-mono); text-transform: uppercase; color: var(--accent); }
body .pill-value { font-size: 12px; }
body .home-page section { scroll-margin-top: 88px; }
body .outcomes-section, body .approach-section, body .audience-section, body .product-proof-section, body .workflow-section, body .credibility-section, body .security-section { padding: 110px 48px; }
body .outcomes-container, body .approach-container, body .audience-container, body .product-proof-container, body .workflow-container, body .credibility-container, body .security-container { width: 100%; max-width: 1248px; margin: auto; padding: 0; }
body .section-intro { margin: 0 0 52px; max-width: 730px; text-align: left; }
body .section-title, body .founders-title { font: 400 clamp(34px, 3.5vw, 50px)/1.1 var(--font-sans); letter-spacing: -.045em; color: var(--ink); margin: 0; }
body .section-kicker { margin-bottom: 20px; }
body .risk-section { background: var(--paper); }
body .risk-section .outcomes-container { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; }
body .risk-section .section-intro { margin: 0; }
body .risk-section .outcomes-grid { display: block; counter-reset: risks; }
body .risk-section .outcome-card:not(.outcome-positioning) { counter-increment: risks; display: flex; gap: 25px; padding: 24px 0; margin: 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; box-shadow: none; transform: none; opacity: 1; }
body .risk-section .outcome-card:not(.outcome-positioning)::before { content: '0' counter(risks); font: 11px var(--font-mono); color: var(--accent); position: static; width: auto; height: auto; background: none; margin: 4px 0 0; }
body .risk-section .outcome-card:not(.outcome-positioning) h3 { font-size: 19px; font-weight: 400; line-height: 1.4; }
body .risk-section .outcome-positioning { border: 0; border-radius: 0; background: none; padding: 25px 0 0; margin: 0; box-shadow: none; }
body .risk-section .outcome-positioning p { font-size: 15px; font-weight: 400; line-height: 1.7; color: var(--ink-muted); }
body .governance-section { position: relative; background: #012538; color: #f5f9fa; overflow: hidden; isolation: isolate; }
body .governance-section::before { content: ''; position: absolute; inset: 0; background: url('../images/guided-field.svg') no-repeat 100% 52%/1000px; opacity: .18; z-index: -1; }
body .governance-section .section-kicker { color: #b2cdd3; }
body .governance-section .section-title { color: #f5f9fa; }
body .approach-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; }
body .governance-section .step-card { background: transparent; border: 0; border-left: 1px solid #3a6670; padding: 0 28px; border-radius: 0; box-shadow: none; opacity: 1; transform: none; }
body .governance-section .step-card:first-child { padding-left: 0; border-left: 0; }
body .governance-section .step-card h3 { font-size: 22px; font-weight: 400; color: #f5f9fa; margin: 28px 0 14px; }
body .governance-section .step-card p { color: #bad3d8; font-size: 15px; line-height: 1.7; }
body .card-icon { width: 38px; height: 38px; padding: 0; background: none; border: 0; color: var(--accent); }
body .card-icon svg { width: 32px; height: 32px; stroke-width: 1.25; }
body .governance-section .card-icon { color: #8acccf; }
body .audience-section { background: var(--paper); }
body .audience-section .section-intro { max-width: 600px; margin-bottom: 48px; }
body .audience-grid { gap: 24px; }
body .audience-card { padding: 32px; background: #e4edef; border: 1px solid #d5e4e7; border-radius: 2px; box-shadow: none; position: relative; overflow: hidden; opacity: 1; transform: none; }
body .audience-card::after { content: ''; display: block; width: 170px; height: 170px; position: absolute; right: -50px; top: -60px; border: 1px solid #bfd6db; border-radius: 50%; box-shadow: 0 0 0 15px #e4edef,0 0 0 16px #c9dce0,0 0 0 31px #e4edef,0 0 0 32px #d2e2e6; pointer-events: none; }
body .audience-card h3 { font-size: 24px; font-weight: 400; line-height: 1.2; margin: 44px 0 18px; position: relative; z-index: 1; }
body .audience-card p { font-size: 15px; line-height: 1.65; position: relative; z-index: 1; }
body .product-proof-section { background: #dbe8ea; background-image: radial-gradient(ellipse at 80% 90%, #bcd4d9, transparent 60%); }
body .product-proof-layout { display: block; padding: 48px; background-image: linear-gradient(#4f8c9913 1px,transparent 1px),linear-gradient(90deg,#4f8c9913 1px,transparent 1px); background-size: 36px 36px; border: 1px solid #b5d0d6; border-radius: 3px; }
body .proof-mockup { border: 1px solid #accad1; border-radius: 8px; box-shadow: 0 24px 55px #233f4517,0 3px 6px #233f450b; overflow: hidden; background: #fcfdfd; }
body .mockup-header { background: #ebf2f3; border-bottom: 1px solid #cadde1; padding: 20px 26px; display: flex; align-items: center; gap: 20px; }
body .mockup-header p { font-size: 14px; font-weight: 500; }
body .mockup-header span { font: 10px var(--font-mono); color: #48636e; white-space: nowrap; }
body .mockup-body { display: grid; grid-template-columns: 1.1fr 1fr; padding: 0; gap: 0; }
body .mockup-left, body .mockup-right { padding: 30px; border: 0; background: #fcfdfd; }
body .mockup-right { background: #eff4f6; border-left: 1px solid #cadde1; }
body .proof-mockup h4 { font: 10px var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--accent); margin: 20px 0 12px; }
body .proof-mockup h4:first-child { margin-top: 0; }
body .proof-mockup p { font-size: 14px; line-height: 1.7; }
body .mockup-left p { border: 1px solid #d6e5e8; border-radius: 3px; padding: 12px; background: #fff; margin-bottom: 8px; }
body .mockup-right p { padding: 16px; background: #deeaed; border-left: 2px solid #599ba9; }
body .proof-callouts { display: flex; flex-wrap: wrap; gap: 10px 24px; padding: 30px 0 0; margin: 0; counter-reset: callouts; }
body .proof-callouts li { counter-increment: callouts; display: flex; gap: 8px; align-items: center; font-size: 12px; padding: 0; }
body .proof-callouts li::before { content: '0' counter(callouts); display: inline; position: static; font: 10px var(--font-mono); width: auto; height: auto; background: none; color: var(--accent); }
body .product-proof-container > .section-description { font-size: 15px; text-align: center; margin: 27px auto 0; }
body .workflow-section { background: var(--paper); }
body .workflow-section .workflow-grid { gap: 48px; }
body .workflow-section .workflow-step { background: none; border: 0; border-top: 1px solid #a7c6cd; border-radius: 0; padding: 28px 0 0; box-shadow: none; opacity: 1; transform: none; }
body .workflow-step:not(:last-child)::before, body .workflow-step:not(:last-child)::after { display: none; }
body .workflow-step .card-icon { float: right; margin: 4px 0 0; }
body .workflow-section .step-number { font: 400 56px var(--font-sans); color: #69a4b1; margin: 0 0 35px; letter-spacing: -.05em; }
body .workflow-step h3 { font: 400 25px/1.2 var(--font-sans); margin-bottom: 15px; }
body .workflow-step p:not(.step-number) { font-size: 15px; line-height: 1.7; }
body .workflow-note { text-align: left; border-left: 2px solid #5394a2; padding: 10px 20px; background: none; font: 12px var(--font-mono); margin: 48px 0 0; }
body .credibility-section { background: #d9e7ea; position: relative; overflow: hidden; }
body .credibility-section::after { content: ''; position: absolute; width: 460px; height: 460px; border: 1px solid #adcad1; border-radius: 50%; right: -170px; top: -110px; box-shadow: 0 0 0 50px #d9e7ea,0 0 0 51px #b8d1d7,0 0 0 100px #d9e7ea,0 0 0 101px #c3d8dd; pointer-events: none; }
body .credibility-section .credibility-container { max-width: 850px; position: relative; z-index: 1; }
body .credibility-section .section-intro { text-align: left; max-width: none; margin: 0 0 28px; }
body .credibility-section .section-description { text-align: left; margin: 0 0 28px; font-size: 18px; max-width: 700px; }
body .credibility-quote { font: 400 28px/1.4 var(--font-sans); letter-spacing: -.025em; border-left: 1px solid #6ba6b3; padding-left: 28px; }
body .credibility-section .logo-strip { justify-content: flex-start; }
body .credibility-section .partner-logo-img { mix-blend-mode: multiply; opacity: 1; }
body .security-section { background: var(--paper); }
body .security-container { display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; }
body .security-list { max-width: none; gap: 0 32px; }
body .security-list li, body .security-list li:last-child { background: none; border: 0; border-top: 1px solid var(--line); box-shadow: none; border-radius: 0; padding: 24px 0; font: 400 18px/1.4 var(--font-sans); }
body .security-list li:hover { transform: none; background: none; box-shadow: none; }
body .security-list li::before { width: 26px; height: 26px; margin-bottom: 18px; }
body .cta-section { background: #012538; padding: 100px 48px; position: relative; overflow: hidden; isolation: isolate; }
body .cta-section::before { content: ''; position: absolute; inset: -180px -150px -180px 40%; background: url('../images/guided-field.svg') center/cover; opacity: .35; z-index: -1; }
body .cta-container { max-width: 1248px; text-align: left; padding: 0; }
body .cta-container h2 { font: 400 clamp(38px,4.5vw,64px)/1.08 var(--font-sans); letter-spacing: -.05em; max-width: 600px; color: #f5f9fa; margin-bottom: 24px; }
body .cta-container p { color: #bbd3d9; font-size: 17px; max-width: 430px; }
body .cta-actions { justify-content: flex-start; gap: 16px; margin-top: 32px; }
body .cta-section .cta-button { background: #8acccf; color: #012538; border-color: #8acccf; }
body .cta-section .cta-button.secondary { background: transparent; color: #f5f9fa; border-color: #518f9c; }
body .site-footer { background: #f5f9fa; padding: 60px 48px 24px; border: 0; }
body .footer-inner, body .footer-bottom { max-width: 1248px; }
body .footer-logo-img { width: 175px; height: auto; }
body .footer-tagline { max-width: 230px; margin-top: 18px; font-size: 13px; }
body .footer-col h4 { font: 10px var(--font-mono); text-transform: uppercase; letter-spacing: .1em; }
body .footer-col a, body .footer-col span { font-size: 13px; }
body .footer-bottom { padding-top: 24px; margin-top: 48px; }
body .footer-copy, body .footer-legal a { font-size: 11px; }
/* The same visual system extends to the existing content pages. */
body .product-doc-hero { padding: 155px 48px 75px; background: #deeaed url('../images/guided-field.svg') no-repeat 140% 45%/70%; }
body .product-title, body .about-title, body .contact-title { font: 400 clamp(44px,5vw,72px)/1.08 var(--font-sans); letter-spacing: -.05em; color: var(--ink); }
body .product-shell { max-width: 1248px; padding: 0; }
body .product-doc-section { padding: 80px 48px; background: var(--paper); }
body .product-doc-section.tinted { background: #deeaed; }
body .doc-panel, body .product-doc-section.tinted .doc-panel, body .product-doc-section:not(.tinted) .doc-panel { border: 1px solid #c4d9de; border-radius: 4px; background: #f5f8f9eb; box-shadow: none; padding: 28px; }
body .doc-panel h2, body .doc-panel h3 { font-weight: 500; letter-spacing: -.025em; }
body .doc-table th { background: #d7e6e9; color: var(--ink); }
body.about-page .about-section { padding: 150px 48px 90px; background: radial-gradient(ellipse at 100% 0,#cddfe3,transparent 45%),var(--paper); }
body .about-container { max-width: 1248px; padding: 0; }
body .company-intro { text-align: left; margin: 0 0 90px; max-width: 760px; }
body .founder-card { border: 1px solid #c4d9de; border-radius: 4px; box-shadow: none; background: #f6f9f9; }
body .founder-image-placeholder { background: #d3e3e6 url('../images/guided-field.svg') center/cover; }
body .founder-initials { color: #27454b; font-weight: 400; }
body.contact-page .contact-section { padding: 150px 48px 90px; background: radial-gradient(ellipse at 100% 0,#cddfe3,transparent 40%),var(--paper); }
body .contact-container { max-width: 1248px; padding: 0; }
body .contact-header { text-align: left; }
body.contact-page .contact-form-wrapper, body.contact-page .contact-info-card, body.contact-page .team-member-card { border: 1px solid #c4d9de; border-radius: 4px; box-shadow: none; background: #f6f9f9; }
body .demo-main { background: var(--paper); }
body .demo-page .workbook-container { box-shadow: 0 24px 60px #01253812; }
/* Reset layout and colour rules inherited from the previous theme. */
body .hero-visual { display: block; width: 100%; animation: none; }
body .guidance-surface { width: 100%; max-width: none; }
body .step-body, body .review-step .step-body { padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
body .risk-section .outcome-positioning { opacity: 1; transform: none; }
body .governance-section .approach-steps { grid-template-columns: repeat(4,minmax(0,1fr)); }
body .section-kicker { display: block; width: auto; padding: 0; background: none; border: 0; border-radius: 0; }
body .mockup-header p { color: var(--ink); }
body .proof-callouts { background: none; border: 0; border-radius: 0; }
body .cta-container p { margin-left: 0; margin-right: 0; }
body .site-footer { color: var(--ink); }
body .footer-inner { border-bottom: 1px solid var(--line); }
body .footer-logo-img { background: transparent; padding: 0; border-radius: 0; max-width: 175px; }
body .footer-tagline, body .footer-col a, body .footer-col span, body .footer-copy, body .footer-legal a { color: var(--ink-muted); }
body .footer-col h4 { color: var(--accent); }
body .footer-col a:hover, body .footer-legal a:hover { color: var(--accent); }
@media(min-width:1600px) { body .hero-art { width: 72%; right: 0; } }
@media(max-width:1100px) {
  body .nav-container { padding: 0 28px; } body .nav-menu { gap: 16px; }
  body .hero-container { padding: 90px 36px; } body .hero-art { right: -20%; width: 95%; }
  body .risk-section .outcomes-container { gap: 45px; }
  body .governance-section .step-card { padding: 0 18px; }
  body .governance-section .approach-steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px 20px; }
  body .governance-section .step-card:nth-child(3) { padding-left: 0; border-left: 0; }
}
@media(max-width:900px) {
  body .navbar, .home-page .navbar, .demo-page .navbar { height: 76px; }
  body .hamburger { display: flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
  body .hamburger span { background: var(--ink); height: 2px; }
  body .nav-menu { display: none; position: fixed; top: 76px; left: 0; right: 0; width: 100%; height: auto; max-height: calc(100dvh - 76px); overflow-y: auto; background: #f5f9fa; padding: 24px 28px; border-bottom: 1px solid var(--line); box-shadow: 0 16px 25px #01253812; transform: none; gap: 10px; flex-direction: column; align-items: stretch; }
  body .nav-menu.active { display: flex; }
  body .nav-menu a { display: block; padding: 12px 0; font-size: 16px; }
  body .nav-menu .cta-button { display: inline-flex; padding: 13px 23px; }
  body .hero { padding-top: 76px; }
  body .hero-art { opacity: .7; right: -32%; }
  body .lifecycle-track { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
  body .lifecycle-track::before { display: none; }
  body .lifecycle-step { border-top: 1px solid #a2c3cb; padding-top: 15px; }
  body .audience-grid { grid-template-columns: 1fr; }
  body .audience-card { padding: 28px; }
  body .audience-card h3 { margin-top: 24px; }
  body .security-container { grid-template-columns: 1fr; gap: 0; }
  body .product-proof-layout { padding: 25px; }
  body .workflow-section .workflow-grid { gap: 24px; }
  body .workflow-step h3 { font-size: 22px; }
}
@media(max-width:640px) {
  body .nav-container { padding: 0 20px; } body .logo-img { height: 48px; width: 135px; }
  body .hero { min-height: 790px; }
  body .hero-container { padding: 55px 24px 265px; min-height: 0; }
  body.home-page .hero-title { font-size: clamp(56px,14vw,76px); max-width: 10ch; margin-bottom: 24px; }
  body .hero-eyebrow { font-size: 10px; margin-bottom: 22px; }
  body .hero-description { font-size: 16px; max-width: 330px; }
  body .hero-description + .hero-description { font-size: 13px; }
  body .hero-actions { gap: 20px; flex-wrap: wrap; }
  body .hero-link { font-size: 13px; }
  body .hero-art { width: 700px; height: 490px; top: auto; bottom: -65px; right: -210px; opacity: .95; }
  .art-coordinate { right: 24px; bottom: 18px; font-size: 9px; }
  .lifecycle-section { padding: 0 24px; }
  body .hero-visual { padding: 32px 0; }
  body .lifecycle-header > div { display: block; } body .lifecycle-kicker { margin-bottom: 8px; }
  body .lifecycle-track { gap: 30px 20px; }
  body .step-topline h3 { font-size: 14px; }
  body .step-body p { font-size: 12px; }
  body .footer-pill { align-items: flex-start; flex-direction: column; gap: 6px; }
  body .outcomes-section, body .approach-section, body .audience-section, body .product-proof-section, body .workflow-section, body .credibility-section, body .security-section { padding: 68px 24px; }
  body .risk-section .outcomes-container { grid-template-columns: 1fr; gap: 35px; }
  body .section-intro { margin-bottom: 35px; }
  body .governance-section .approach-steps { grid-template-columns: 1fr; gap: 30px; }
  body .governance-section .step-card { padding: 28px 0 0; border-left: 0; border-top: 1px solid #3a6670; }
  body .governance-section .step-card h3 { margin-top: 18px; }
  body .product-proof-layout { padding: 12px; }
  body .mockup-header { align-items: flex-start; flex-direction: column; gap: 8px; padding: 18px; }
  body .mockup-body { grid-template-columns: 1fr; }
  body .mockup-left, body .mockup-right { padding: 20px; }
  body .mockup-right { border-left: 0; border-top: 1px solid var(--line); }
  body .proof-callouts { padding: 22px 6px 10px; flex-direction: column; gap: 12px; }
  body .workflow-section .workflow-grid { grid-template-columns: 1fr; gap: 32px; }
  body .workflow-section .step-number { margin-bottom: 20px; }
  body .workflow-note { font-size: 11px; line-height: 1.7; }
  body .credibility-quote { font-size: 23px; padding-left: 20px; }
  body .security-list { grid-template-columns: 1fr 1fr; gap: 0 20px; }
  body .security-list li { font-size: 16px; }
  body .cta-section { padding: 70px 24px; }
  body .cta-actions { flex-direction: column; align-items: stretch; }
  body .cta-actions .cta-button { width: 100%; }
  body .site-footer { padding: 45px 24px 24px; }
  body .footer-inner { grid-template-columns: 1fr; gap: 40px; }
  body .footer-links { flex-wrap: wrap; display: flex; gap: 36px; }
  body .footer-bottom { gap: 20px; align-items: flex-start; }
  body .product-doc-hero { padding: 125px 24px 50px; background-size: 150%; }
  body .product-doc-section { padding: 55px 24px; }
  body .doc-panel { padding: 22px; }
  body.about-page .about-section, body.contact-page .contact-section { padding: 125px 24px 60px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* Brand edition: deep blue and the original logo's teal. */
body .logo-img { width: 166px; height: 62px; }
body .nav-menu > li:last-child .cta-button { background: #067e8d; border-color: #067e8d; color: #fff; }
body .hero { min-height: 850px; background: #012538; }
body .hero::before { background: radial-gradient(ellipse at 80% 40%,#075666 0,transparent 52%),radial-gradient(ellipse at 10% 110%,#064957 0,transparent 60%),linear-gradient(115deg,#011c2d,#012538 55%,#033b4b); }
body .hero::after { content: ''; position: absolute; inset: 88px 0 0; pointer-events: none; z-index: -1; opacity: .28; background-image: linear-gradient(#8acccf16 1px,transparent 1px),linear-gradient(90deg,#8acccf16 1px,transparent 1px); background-size: 88px 88px; mask-image: linear-gradient(90deg,transparent 20%,#000 90%); }
body .hero-container { padding-top: 90px; padding-bottom: 100px; min-height: 760px; }
body.home-page .hero-title { max-width: 680px; font-size: clamp(72px,7.2vw,104px); font-weight: 500; line-height: .97; letter-spacing: -.06em; color: #f5fbfc; margin-bottom: 32px; }
.hero-title > span { display: block; }
body .hero-title .hero-title-accent { color: #8acccf; }
body .hero-eyebrow { color: #8acccf; }
body .hero-eyebrow::before { background: #8acccf; box-shadow: 0 0 16px #8acccf90; }
body .hero-description { color: #d0e2e8; max-width: 390px; }
body .hero-description + .hero-description { color: #a6c4cd; }
body .hero-link { color: #e4f2f5; border-color: #52858f; }
body .hero .cta-button { background: #8acccf; color: #012538; border-color: #8acccf; box-shadow: 0 8px 35px #27b4c02b; }
body .hero .cta-button:hover { background: #b2e4e6; border-color: #b2e4e6; box-shadow: 0 10px 40px #27b4c049; }
body .hero-art { top: 48px; right: -9%; width: 79%; height: calc(100% - 20px); object-fit: contain; opacity: 1; filter: drop-shadow(0 0 35px #2bb5c420); will-change: transform; }
body .art-coordinate { color: #8acccf; bottom: 34px; }
.lifecycle-section { background: #eaf4f6; border-top: 3px solid #067e8d; }
body .lifecycle-title { font-size: 23px; }
body .lifecycle-track::before { background: linear-gradient(90deg,#067e8d,#8acccf); height: 2px; }
body .step-dot { border-color: #83b9c2; background: #eaf4f6; }
body .review-step .step-dot { background: #012538; }
body .risk-section .section-title { font-size: clamp(36px,3.8vw,55px); }
body .risk-section .outcome-positioning { border-left: 3px solid #067e8d; margin-top: 22px; padding: 4px 0 4px 24px; }
body .governance-section { background: radial-gradient(ellipse at 95% 10%,#075767,transparent 65%),#012538; }
body .governance-section::before { background-image: url('../images/guided-compass.svg'); background-size: 900px; background-position: 135% 45%; opacity: .26; }
body .governance-section .section-kicker, body .governance-section .card-icon { color: #8acccf; }
body .governance-section .section-title, body .governance-section .step-card h3 { color: #f4fbfc; }
body .governance-section .step-card p { color: #bed5de; }
body .governance-section .step-card { border-color: #2c5c6a; }
body .governance-section .card-icon { width: 60px; height: 60px; display: grid; place-items: center; background: #0d4856; border: 1px solid #32707d; border-radius: 12px; }
body .audience-card { background: linear-gradient(145deg,#eff7f8,#e1f0f3); border-color: #c8e0e6; transition: transform .25s,box-shadow .25s,border-color .25s; }
body .audience-card:hover { transform: translateY(-6px); border-color: #067e8d; box-shadow: 0 18px 35px #01253812; }
body .audience-card::after { border-color: #8acccf; box-shadow: 0 0 0 15px #eaf5f7,0 0 0 16px #b0dadd,0 0 0 31px #eaf5f7,0 0 0 32px #c3e2e7; }
body .audience-card .card-icon { color: #067e8d; }
body .product-proof-section { background: radial-gradient(ellipse at 80% 100%,#80cbd3,transparent 62%),linear-gradient(125deg,#e9f5f7,#cce7ee); }
body .product-proof-layout { position: relative; background-image: linear-gradient(#067e8d12 1px,transparent 1px),linear-gradient(90deg,#067e8d12 1px,transparent 1px); border: 1px solid #83bdc7; border-radius: 12px; padding: 56px; }
body .proof-mockup { border-color: #aacfd7; box-shadow: 0 35px 65px #01253826,0 3px 10px #01253812; }
body .mockup-header { background: #012538; border-color: #245160; }
body .mockup-header p { color: #f3fbfc; }
body .mockup-header span { color: #8acccf; }
body .mockup-right { background: #edf6f8; }
body .mockup-right p { background: #dceff2; border-color: #067e8d; }
body .proof-callouts { flex-direction: row; }
body .proof-callouts li::before { color: #056373; }
body .workflow-section .step-number { color: #067e8d; font-size: 64px; }
body .workflow-section .workflow-step { border-top: 2px solid #8acccf; }
body .workflow-note { border-color: #067e8d; }
body .credibility-section { background: #e6f1f4; }
body .credibility-section::after { border-color: #8acccf; box-shadow: 0 0 0 50px #e6f1f4,0 0 0 51px #b2d9e0,0 0 0 100px #e6f1f4,0 0 0 101px #c9e2e9; }
body .credibility-quote { border-left: 3px solid #067e8d; }
body .cta-section { background: radial-gradient(ellipse at 90% 60%,#067e8d 0,transparent 65%),#012538; }
body .cta-section::before { background-image: url('../images/guided-compass.svg'); opacity: .65; inset: -210px -130px -240px 42%; }
body .cta-section .cta-button { background: #8acccf; border-color: #8acccf; color: #012538; }
body .cta-section .cta-button.secondary { color: #f5fbfc; border-color: #538490; }
body .cta-container p { color: #c5dfe5; }
body .cta-container h2 { color: #f5fbfc; }
body .product-doc-hero { background-color: #e0f0f4; }
body .founder-image-placeholder { background-color: #d3edf0; }
@media(max-width:1100px) {
  body .hero-art { right: -24%; width: 96%; opacity: .8; }
  body .hero-content { max-width: 580px; }
}
@media(max-width:900px) {
  body .hero-art { right: -35%; opacity: .6; }
  body .hero::after { top: 76px; }
  body .product-proof-layout { padding: 28px; }
}
@media(max-width:640px) {
  body .logo-img { width: 145px; height: 54px; }
  body .hero { min-height: 970px; }
  body .hero-container { padding: 56px 24px 360px; min-height: 0; }
  body.home-page .hero-title { font-size: clamp(60px,15vw,78px); margin-bottom: 28px; }
  body .hero-art { width: 570px; height: 530px; top: auto; bottom: -34px; right: -110px; opacity: 1; }
  body .hero-description { max-width: 340px; }
  body .hero-description + .hero-description { font-size: 13px; }
  body .art-coordinate { right: 24px; bottom: 20px; font-size: 9px; }
  body .product-proof-layout { padding: 12px; border-radius: 6px; }
  body .proof-callouts { flex-direction: column; }
  body .governance-section::before { background-position: 20% 90%; opacity: .15; }
  body .cta-section::before { inset: -30px -300px -160px 0; opacity: .25; }
  body .hero-actions { position: relative; z-index: 1; }
}

/* Hero art direction: open, flowing light across a deep blue field. */
body .hero::before {
  background: radial-gradient(ellipse at 95% 12%, #084353 0, transparent 55%),
    radial-gradient(ellipse at 45% 110%, #063a4b 0, transparent 55%), #011e30;
}

/* Interactive paper-to-digital workbook. */
body .hero { min-height: 850px; }
body .hero::after { display: none; }
body .hero-container { display: block; padding-top: 90px; padding-bottom: 100px; min-height: 760px; }
body .hero-content { max-width: 660px; }
body.home-page .hero-title { font-size: clamp(72px,7.2vw,104px); }
.workbook-experience { position: absolute; top: 160px; left: max(44%, calc(50% - 110px)); right: max(24px, calc((100vw - 1440px) / 2 + 24px)); z-index: 1; color: #bed9dc; }
.workbook-heading { display: flex; align-items: center; gap: 9px; margin: 0 6%; color: #9ec8cd; font: 10px var(--font-mono); letter-spacing: .1em; }
.workbook-beacon { width: 5px; height: 5px; border-radius: 50%; background: #9fdfd6; box-shadow: 0 0 12px #9fdfd660; flex-shrink: 0; }
.workbook-edition { margin-left: auto; color: #6d949f; font-size: 8px; }
.workbook-stage { max-width: 720px; margin: 0 auto; touch-action: pan-y; cursor: ew-resize; transform-origin: center; }
.workbook-paper path { fill: none; }
.workbook-stage svg { display: block; width: 100%; height: auto; overflow: visible; }
.wb-micro { font: 8px var(--font-mono); letter-spacing: .6px; }
.wb-small { font: 11px var(--font-sans); }
.wb-title { font: 500 17px var(--font-sans); letter-spacing: -.35px; }
.workbook-controls { margin: -5px 12% 0; padding-top: 18px; border-top: 1px solid #8acccf25; }
.workbook-status { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 32px; }
#workbook-state { color: #c7e4e6; font: 11px var(--font-mono); }
.workbook-play { appearance: none; border: 0; background: transparent; color: #a7e2db; font: 12px var(--font-sans); padding: 8px 0 8px 8px; cursor: pointer; white-space: nowrap; }
.workbook-play span { margin-left: 6px; }
.workbook-play:hover { color: #fff; }
.workbook-slider-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#workbook-progress { --progress: 0%; appearance: none; -webkit-appearance: none; width: 100%; height: 32px; margin: 8px 0 1px; border: 0; padding: 0; cursor: ew-resize; background: transparent; }
#workbook-progress::-webkit-slider-runnable-track { height: 2px; background: linear-gradient(to right, #a4e0d6 var(--progress), #345d6c var(--progress)); }
#workbook-progress::-moz-range-track { height: 2px; background: #345d6c; }
#workbook-progress::-moz-range-progress { height: 2px; background: #a4e0d6; }
#workbook-progress::-webkit-slider-thumb { appearance: none; width: 14px; height: 14px; margin-top: -6px; background: #b9e8e0; border: 3px solid #164655; border-radius: 50%; box-shadow: 0 0 0 1px #8acccf80, 0 0 20px #8acccf40; }
#workbook-progress::-moz-range-thumb { width: 8px; height: 8px; background: #b9e8e0; border: 3px solid #164655; border-radius: 50%; box-shadow: 0 0 0 1px #8acccf80; }
.workbook-scale { display: flex; justify-content: space-between; align-items: start; gap: 12px; font: 8px var(--font-mono); letter-spacing: .08em; color: #8bafb9; }
#workbook-hint { max-width: 235px; text-align: center; font: 10px var(--font-sans); letter-spacing: 0; color: #8bafb9; }
.workbook-play:focus-visible, #workbook-progress:focus-visible { outline-color: #b9e8e0; }
.workbook-fallback { font-size: 12px; text-align: center; }
body.home-page .hero-container { pointer-events: none; }
body.home-page .hero-content { pointer-events: auto; }
@media(min-width:1001px) {
  body.home-page .hero-content { width: 43%; max-width: 560px; }
  body.home-page .hero-title { font-size: clamp(68px, 6.8vw, 98px); }
}
@media(min-width:1600px) {
  .workbook-experience { left: calc(50% - 70px); }
}
@media(max-width:1000px) {
  body.home-page .hero { display: flex; flex-direction: column; min-height: 0; }
  body.home-page .hero-container { order: 0; width: 100%; min-height: 0; padding: 70px 36px 30px; }
  body.home-page .hero-content { max-width: 660px; }
  .workbook-experience { position: relative; order: 1; inset: auto; width: min(100%, 760px); margin: 15px auto 65px; }
  .workbook-controls { margin-top: -20px; }
}
@media(max-width:640px) {
  body.home-page .hero-container { padding: 56px 24px 32px; }
  body.home-page .hero-title { font-size: clamp(60px,15vw,78px); }
  .workbook-experience { margin-top: 10px; margin-bottom: 45px; }
  .workbook-heading { font-size: 8px; margin: 0 24px; }
  .workbook-edition { display: none; }
  .workbook-controls { margin: 0 24px; padding-top: 12px; }
  #workbook-state { font-size: 9px; }
  .workbook-play { font-size: 11px; min-height: 44px; }
  #workbook-hint { max-width: 170px; font-size: 9px; }
  #workbook-progress { height: 44px; margin-top: 0; }
}
@media(prefers-reduced-motion:reduce) {
  .workbook-stage { transform: none !important; }
}
