:root {
  color-scheme: dark;
  --ink: #121916;
  --ink-soft: #18221d;
  --ink-light: #1c2c23;
  --paper: #f2f0e8;
  --paper-muted: #dce4df;
  --green: #9bc887;
  --green-bright: #b0d79f;
  --sage: #a9b7af;
  --line: rgba(220, 228, 223, .15);
  --mono: "DM Mono", monospace;
  --sans: "DM Sans", sans-serif;
  --display: "Manrope", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; background: var(--ink); color: var(--paper); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
body::selection { color: var(--ink); background: var(--green); }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
.site-header { height: 92px; padding: 0 6.25vw; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); position: relative; z-index: 5; background: rgba(18,25,22,.95); }
.brand { width: 122px; height: 78px; display: flex; align-items: center; overflow: hidden; border-radius: 50%; background: var(--ink-soft); }
.brand img { display: block; width: 100%; height: auto; border-radius: 50%; mix-blend-mode: screen; filter: contrast(1.1); }
.site-nav { display: flex; align-items: center; gap: clamp(25px,3.2vw,52px); color: var(--sage); font-size: 13px; letter-spacing: .02em; }
.site-nav a { transition: color .2s ease; }.site-nav a:hover,.site-nav a.active { color: var(--paper); }
.nav-product { color: var(--green); font-family: var(--mono); font-size: 10px; margin-left: 3px; }
.nav-contact { border: 1px solid rgba(155,200,135,.55); color: var(--paper) !important; padding: 12px 17px; }.nav-contact span { color: var(--green); margin-left: 14px; font-size: 16px; }
.menu-toggle { display: none; }
.home-hero { min-height: 690px; height: min(790px, calc(100svh - 92px)); padding: 100px 10.3vw 0; position: relative; display: flex; align-items: center; overflow: hidden; }
.hero-copy { position: relative; z-index: 2; width: 58%; margin-top: -12px; }
.eyebrow,.section-label,.hero-index,.card-top,.tag-list,.product-stage,.product-bottomline,.product-mark-note,.product-corner { font-family: var(--mono); text-transform: uppercase; letter-spacing: .1em; }
.eyebrow { font-size: 11px; line-height: 1.7; color: var(--green); margin: 0 0 24px; }
.status-dot { display: inline-block; width: 6px; height: 6px; border-radius: 100%; background: var(--green); margin: 0 9px 1px 0; box-shadow: 0 0 13px rgba(155,200,135,.65); }
.eyebrow-divider { padding: 0 10px; color: #53615a; }
h1,h2,h3,p,figure { margin-top: 0; }
h1,h2,h3 { font-family: var(--display); letter-spacing: -.055em; }
.home-hero h1 { font-size: clamp(69px, 8.2vw, 125px); line-height: .98; margin: 0 0 26px; font-weight: 500; }
em { color: var(--green); font-weight: 400; font-style: normal; }
.hero-deck { color: var(--sage); font-size: 17px; line-height: 1.75; max-width: 440px; }
.hero-actions { display: flex; gap: 29px; align-items: center; margin-top: 37px; }
.button { min-height: 51px; padding: 0 19px; display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; border: 0; font-size: 13px; font-weight: 600; cursor: pointer; transition: transform .2s ease, background .2s ease; }.button:hover { transform: translateY(-2px); }
.button-primary { color: var(--ink); background: var(--green); }.button-primary:hover { background: var(--green-bright); }.button span { font-size: 17px; }
.text-link { color: var(--sage); font-size: 12px; }.text-link span { color: var(--green); font-size: 16px; padding-left: 8px; }
.hero-art { position: absolute; width: min(49vw, 690px); height: min(49vw, 690px); right: 3.8vw; top: 51%; transform: translateY(-47%); display: grid; place-items: center; }
.hero-art::before { content: ""; position: absolute; inset: 13%; border-radius: 50%; background: linear-gradient(135deg,rgba(18,25,22,.18),rgba(18,25,22,.72)),url("assets/data-network-green.jpg") center/cover; opacity: .5; filter: saturate(.72); mix-blend-mode: screen; }
.hero-art img { width: 78%; position: relative; z-index: 1; mix-blend-mode: screen; border-radius: 50%; opacity: .92; filter: contrast(1.1); }
.orbit { position: absolute; border: 1px solid rgba(155,200,135,.13); border-radius: 50%; aspect-ratio: 1; }.orbit-one { width: 98%; }.orbit-two { width: 80%; border-color: rgba(155,200,135,.2); }.orbit-three { width: 61%; border-style: dashed; border-color: rgba(155,200,135,.18); }
.hero-stamp { position: absolute; right: 0; bottom: 22%; display: flex; align-items: center; gap: 9px; z-index: 2; background: var(--ink); padding: 12px 0 12px 16px; font: 9px var(--mono); color: var(--sage); letter-spacing: .1em; }.hero-stamp b { color: var(--green); font-size: 12px; font-weight: 400; }
.art-caption { position: absolute; bottom: 9%; left: 16%; font: 10px var(--mono); letter-spacing: .1em; color: var(--sage); text-transform: uppercase; }
.hero-index { position: absolute; left: 6.25vw; right: 6.25vw; bottom: 26px; display: flex; justify-content: space-between; color: #718078; font-size: 9px; }
.section-pad { padding-left: 10.3vw; padding-right: 10.3vw; }.section-label { display: flex; gap: 22px; align-items: center; color: #718078; font-size: 10px; }.section-label span:first-child { color: var(--green); }
.intro { background: var(--paper); color: var(--ink); padding-top: 99px; padding-bottom: 119px; }.intro .section-label { color: #69736c; }.intro-content { display: grid; grid-template-columns: 1.25fr .75fr; gap: 8vw; margin: 68px 0 0 11%; align-items: end; }
.intro h2,.section-heading h2,.principle-content h2,.contact h2,.about-linkout h2,.product-statement h2,.product-contact h2 { font-size: clamp(43px, 5vw, 72px); font-weight: 500; line-height: 1.08; margin: 0; }.intro h2 em { color: #6e9860; }
.intro-aside { padding-bottom: 4px; max-width: 390px; }.intro-aside p { font-size: 14px; line-height: 1.85; color: #526059; }.intro-aside .large-copy { font: 500 20px/1.5 var(--display); letter-spacing: -.03em; color: var(--ink); margin-bottom: 17px; }
.underlined-link { display: inline-flex; gap: 27px; margin-top: 14px; padding: 0 0 9px; border-bottom: 1px solid #8da681; font: 12px var(--mono); color: var(--ink); }.underlined-link span { color: #6e9860; }
.expertise { padding-top: 105px; padding-bottom: 124px; }.section-heading { margin: 76px 0 58px 11%; }.section-heading .eyebrow { margin-bottom: 16px; }.section-heading h2 { font-size: clamp(44px, 5.2vw, 75px); }
.service-grid { margin-left: 11%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }.service-card { min-height: 300px; background: var(--ink-soft); border: 1px solid rgba(220,228,223,.08); padding: 23px 23px 20px; display: flex; flex-direction: column; transition: border-color .2s, transform .2s; }.service-card:hover { border-color: rgba(155,200,135,.45); transform: translateY(-4px); }
.card-top { display: flex; justify-content: space-between; font-size: 9px; color: #718078; }.card-symbol { color: var(--green); font: 21px var(--sans); }.service-card h3 { font-size: 26px; line-height: 1.17; font-weight: 500; margin: 34px 0 13px; }.service-card>p { color: var(--sage); font-size: 12px; line-height: 1.75; max-width: 280px; margin-bottom: 28px; }.tag-list { border-top: 1px solid var(--line); padding-top: 14px; margin-top: auto; display: flex; flex-wrap: wrap; gap: 8px; color: #97a49c; font-size: 8px; }.tag-list span + span::before { content: "·"; color: var(--green); margin-right: 8px; }
.principles { border-top: 1px solid var(--line); padding-top: 91px; padding-bottom: 109px; display: grid; grid-template-columns: 22% 78%; }.principle-content { padding-left: 6.2%; }.principle-content .eyebrow { margin-bottom: 19px; }.principle-content h2 { font-size: clamp(40px, 4.5vw, 65px); }.principle-list { border-top: 1px solid var(--line); max-width: 690px; margin-top: 45px; display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; padding-top: 18px; }.principle-list p { font-size: 11px; line-height: 1.5; color: var(--sage); }.principle-list span { display: block; font: 10px var(--mono); color: var(--green); margin-bottom: 13px; }
.product-banner { margin: 0 6.25vw 110px; padding: 63px 7%; background: var(--green); color: var(--ink); display: grid; grid-template-columns: 1fr 1fr; align-items: center; min-height: 380px; overflow: hidden; }.product-banner .eyebrow { color: #35513b; }.product-banner .status-dot { background: #35513b; box-shadow: none; }.product-banner h2 { font-size: clamp(46px,5vw,69px); font-weight: 500; line-height: 1.05; margin: 0 0 16px; }.product-banner h2 em { color: #f1f1e9; }.product-banner-copy>p:not(.eyebrow) { max-width: 350px; color: #324a37; font-size: 13px; line-height: 1.8; }.button-light { background: var(--ink); color: var(--paper); margin-top: 17px; }.button-light:hover { background: #26362b; }
.product-banner-logo { position: relative; display: block; }.product-banner-logo img { display: block; width: 120%; max-width: 610px; margin-left: -4%; mix-blend-mode: multiply; }.product-corner { position: absolute; bottom: 0; right: 0; color: #35513b; font-size: 9px; }
.contact { background: var(--paper); color: var(--ink); padding-top: 86px; padding-bottom: 108px; }.contact .section-label { color: #69736c; }.contact .section-label span:first-child { color: #6e9860; }.contact-grid { display: grid; grid-template-columns: 1fr .83fr; gap: 12vw; margin: 68px 4% 0 11%; }.contact-copy .eyebrow { color: #6e9860; margin-bottom: 18px; }.contact h2 { font-size: clamp(46px,5.2vw,74px); }.contact h2 em { color: #6e9860; }.contact-copy>p:not(.eyebrow) { color: #59645d; font-size: 13px; line-height: 1.8; max-width: 350px; margin: 23px 0 16px; }.contact-copy .underlined-link { color: var(--ink); }.contact-form { display: flex; flex-direction: column; gap: 20px; }.contact-form label { color: #66726a; font: 10px var(--mono); letter-spacing: .06em; }.contact-form input,.contact-form textarea { display: block; border: 0; border-bottom: 1px solid #c8d0c9; background: transparent; width: 100%; padding: 12px 0; color: var(--ink); font: 13px var(--sans); outline: none; resize: vertical; }.contact-form input:focus,.contact-form textarea:focus { border-color: #6e9860; }.contact-form input::placeholder,.contact-form textarea::placeholder { color: #9ba49d; }.contact-form .button { align-self: flex-start; min-width: 160px; margin-top: 4px; }.hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.site-footer { min-height: 175px; padding: 35px 6.25vw; display: grid; grid-template-columns: 1.1fr 1.2fr 2fr auto; gap: 30px; align-items: center; border-top: 1px solid var(--line); }.footer-brand { width: 108px; height: 69px; overflow: hidden; display: block; }.footer-brand img { display: block; width: 100%; border-radius: 50%; mix-blend-mode: screen; filter: contrast(1.1); }.site-footer>p { color: var(--sage); font-size: 11px; line-height: 1.7; margin: 0; }.footer-links { display: flex; justify-content: flex-end; gap: 24px; color: var(--sage); font-size: 10px; }.footer-links a:hover { color: var(--green); }.site-footer small { font: 9px var(--mono); color: #718078; white-space: nowrap; }
/* Founder page */
.about-hero { padding-top: 50px; padding-bottom: 83px; }.about-hero-grid { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 9%; margin: 54px 7% 0 11%; }.about-title .eyebrow { margin-bottom: 19px; }.about-title h1 { font-size: clamp(68px,8vw,111px); line-height: .99; font-weight: 500; margin: 0 0 25px; }.about-title h1 em { color: var(--green); }.about-title .hero-deck { max-width: 390px; }.about-title .underlined-link { color: var(--paper); border-color: rgba(155,200,135,.5); margin-top: 25px; }.portrait { max-width: 385px; margin: 0; }.portrait img { width: 100%; max-height: 500px; aspect-ratio: .84; object-fit: cover; object-position: center 32%; filter: saturate(.8); display: block; }.portrait figcaption { border-top: 1px solid var(--line); padding-top: 12px; margin-top: 12px; display: flex; justify-content: space-between; color: var(--sage); font: 9px var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.story { background: var(--paper); color: var(--ink); padding-top: 90px; padding-bottom: 111px; }.story .section-label,.education .section-label { color: #69736c; }.story-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 14%; margin: 70px 6% 0 11%; }.story h2 { font-size: clamp(37px,4vw,57px); font-weight: 500; line-height: 1.14; margin: 0; }.story-grid>div { padding-top: 3px; }.story-grid p { color: #526059; font-size: 13px; line-height: 1.9; margin-bottom: 18px; }.education { padding-top: 77px; padding-bottom: 86px; display: grid; grid-template-columns: 34% 66%; }.education-info { padding-left: 6%; border-left: 1px solid var(--line); }.education-info .eyebrow { margin-bottom: 13px; }.education-info h2 { font-size: 33px; font-weight: 500; margin: 0 0 8px; }.education-info>p:last-child { color: var(--sage); font-size: 13px; margin: 0; }.about-linkout { background: var(--green); color: var(--ink); padding: 48px 10.3vw; display: flex; align-items: center; justify-content: space-between; }.about-linkout .eyebrow { color: #35513b; margin-bottom: 12px; }.about-linkout h2 { font-size: 43px; }.about-linkout>a { border-bottom: 1px solid #45614a; padding: 0 0 10px; font: 12px var(--mono); }.about-linkout>a span { padding-left: 24px; }
/* CrewLogic product page */
.product-hero { padding-top: 50px; padding-bottom: 32px; }.product-hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 3%; margin: 45px 2% 49px 11%; }.product-heading h1 { font-size: clamp(67px,8vw,111px); line-height: .97; font-weight: 500; margin: 0 0 23px; }.product-heading h1 em { color: var(--green); }.product-heading .hero-deck { max-width: 430px; }.product-heading .button { margin-top: 14px; }.product-stage { margin: 20px 0 0; color: var(--sage); font-size: 9px; letter-spacing: .06em; }.product-stage span { display: inline-block; width: 3px; height: 3px; border-radius: 50%; margin: 0 8px 2px; background: var(--green); }.product-mark { position: relative; }.product-mark img { display: block; width: 118%; margin-left: -9%; mix-blend-mode: screen; }.product-mark-note { display: block; text-align: center; color: #718078; font-size: 9px; margin-top: -4%; }
.product-bottomline { border-top: 1px solid var(--line); padding-top: 17px; display: flex; justify-content: space-between; color: #718078; font-size: 9px; }.product-statement { padding-top: 94px; padding-bottom: 108px; background: var(--paper); color: var(--ink); }.product-statement .section-label { color: #69736c; }.product-statement-grid { display: grid; grid-template-columns: .6fr 1.4fr; gap: 11%; margin: 67px 5% 0 11%; }.product-statement-grid>.eyebrow { color: #6e9860; padding-top: 12px; }.product-statement h2 { font-size: clamp(41px,4.5vw,63px); margin-bottom: 22px; max-width: 680px; }.product-statement-grid>div>p:not(.eyebrow) { max-width: 590px; color: #526059; font-size: 14px; line-height: 1.85; }.product-pillars { padding-top: 87px; padding-bottom: 110px; }.pillar-grid { margin: 59px 0 0 11%; display: grid; grid-template-columns: repeat(3,1fr); gap: 36px; }.pillar-grid article { border-top: 1px solid var(--line); padding-top: 18px; }.pillar-grid article>span { color: var(--green); font: 10px var(--mono); }.pillar-grid h3 { font-size: 25px; font-weight: 500; line-height: 1.25; margin: 36px 0 13px; }.pillar-grid p { color: var(--sage); font-size: 12px; line-height: 1.8; max-width: 270px; }.product-contact { display: grid; grid-template-columns: 1fr 1fr; align-items: center; background: var(--green); color: var(--ink); padding-top: 75px; padding-bottom: 75px; }.product-contact .eyebrow { color: #35513b; }.product-contact h2 { font-size: clamp(45px,5vw,68px); }.product-contact h2 em { color: #f2f0e8; }.product-contact-copy>p:not(.eyebrow) { color: #324a37; font-size: 13px; line-height: 1.8; max-width: 370px; margin: 18px 0 8px; }.product-contact-image img { display: block; width: 110%; margin-left: -2%; mix-blend-mode: multiply; }
@media (min-width: 1500px) { .home-hero { padding-left: max(10.3vw, calc((100vw - 1280px)/2)); padding-right: max(10.3vw, calc((100vw - 1280px)/2)); }.section-pad { padding-left: max(10.3vw, calc((100vw - 1280px)/2)); padding-right: max(10.3vw, calc((100vw - 1280px)/2)); } }
@media (max-width: 900px) { .site-header { padding: 0 5vw; }.home-hero { padding-left: 8vw; }.hero-copy { width: 65%; }.hero-art { right: -10vw; opacity: .8; }.section-pad { padding-left: 8vw; padding-right: 8vw; }.intro-content,.section-heading,.service-grid { margin-left: 5%; }.intro-content { gap: 5vw; }.service-card { padding: 18px; }.service-card h3 { font-size: 22px; }.product-banner { margin-left: 4vw; margin-right: 4vw; padding: 50px 5%; }.contact-grid { margin-left: 5%; gap: 7vw; }.site-footer { padding-left: 5vw; padding-right: 5vw; grid-template-columns: 100px 1fr 2fr; }.site-footer small { grid-column: 3; text-align: right; }.about-hero-grid,.product-hero-grid { margin-left: 5%; margin-right: 0; gap: 5%; }.story-grid,.product-statement-grid,.pillar-grid { margin-left: 5%; }.story-grid { gap: 8%; }.product-mark { overflow: hidden; }.product-mark img { width: 130%; margin-left: -15%; } }
@media (max-width: 640px) {
  html { scroll-padding-top: 70px; }.site-header { height: 72px; padding: 0 6vw; }.brand { width: 98px; height: 63px; }.menu-toggle { width: 42px; height: 42px; border: 1px solid var(--line); display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; background: transparent; }.menu-toggle span { height: 1px; width: 16px; display: block; background: var(--paper); transition: transform .2s; }.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }.site-nav { display: none; position: absolute; top: 71px; left: 0; right: 0; padding: 18px 6vw 28px; background: var(--ink); border-bottom: 1px solid var(--line); align-items: stretch; gap: 0; flex-direction: column; }.site-nav.is-open { display: flex; }.site-nav>a { padding: 14px 0; border-bottom: 1px solid var(--line); }.site-nav .nav-contact { margin-top: 12px; padding: 13px 15px; border: 1px solid rgba(155,200,135,.55); }
  .home-hero { height: auto; min-height: 760px; padding: 100px 7vw 85px; align-items: flex-start; }.hero-copy { width: 100%; margin: 0; }.eyebrow { font-size: 9px; }.eyebrow-divider { padding: 0 5px; }.home-hero h1 { font-size: clamp(57px,13vw,83px); }.hero-deck { font-size: 15px; max-width: 360px; }.hero-actions { gap: 19px; flex-wrap: wrap; margin-top: 28px; }.button { min-height: 47px; gap: 18px; }.text-link { font-size: 11px; }.hero-art { width: 94vw; height: 94vw; max-height: 430px; top: auto; bottom: 25px; right: -20vw; transform: none; opacity: .66; }.hero-art img { width: 74%; }.hero-stamp { bottom: 19%; right: 17%; transform: scale(.85); transform-origin: right; }.art-caption { left: 20%; bottom: 5%; font-size: 8px; }.hero-index { left: 7vw; right: 7vw; bottom: 15px; font-size: 7px; }.hero-index span:nth-child(2) { display: none; }
  .section-pad { padding-left: 7vw; padding-right: 7vw; }.section-label { font-size: 9px; gap: 14px; }.intro { padding-top: 66px; padding-bottom: 74px; }.intro-content { display: block; margin: 48px 0 0; }.intro h2,.section-heading h2,.principle-content h2,.contact h2,.product-statement h2 { font-size: clamp(40px,10vw,58px); }.intro-aside { margin: 35px 0 0 12%; }.intro-aside .large-copy { font-size: 18px; }.intro-aside p { font-size: 13px; }
  .expertise { padding-top: 68px; padding-bottom: 75px; }.section-heading { margin: 48px 0 35px 12%; }.service-grid { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 0 0 0 12%; }.service-card { min-height: 258px; padding: 21px; }.service-card h3 { font-size: 25px; margin-top: 28px; }.service-card>p { font-size: 12px; }
  .principles { padding: 65px 7vw 70px; display: block; }.principle-content { padding: 53px 0 0 12%; }.principle-content h2 { font-size: clamp(37px,9vw,53px); }.principle-list { grid-template-columns: 1fr; gap: 0; margin-top: 32px; }.principle-list p { border-bottom: 1px solid var(--line); padding: 14px 0; margin: 0; }.principle-list span { display: inline-block; width: 36px; margin: 0; }
  .product-banner { margin: 0 0 70px; padding: 51px 7vw 35px; grid-template-columns: 1fr; }.product-banner h2 { font-size: 51px; }.product-banner-copy>p:not(.eyebrow) { font-size: 12px; }.product-banner-logo { margin-top: 23px; }.product-banner-logo img { width: 112%; margin-left: -6%; }.product-corner { font-size: 8px; }
  .contact { padding-top: 65px; padding-bottom: 72px; }.contact-grid { display: block; margin: 47px 0 0 12%; }.contact-copy>p:not(.eyebrow) { font-size: 12px; }.contact-form { margin-top: 43px; gap: 17px; }.contact-form label { font-size: 9px; }
  .site-footer { padding: 29px 7vw; display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }.footer-brand { width: 96px; height: 62px; }.site-footer>p { font-size: 10px; text-align: right; }.footer-links { grid-column: 1 / -1; order: 3; justify-content: flex-start; flex-wrap: wrap; gap: 17px; font-size: 9px; padding-top: 15px; border-top: 1px solid var(--line); }.site-footer small { grid-column: 1 / -1; text-align: left; }
  .about-hero { padding-top: 37px; padding-bottom: 60px; }.about-hero-grid { margin: 45px 0 0; display: flex; flex-direction: column; align-items: stretch; gap: 35px; }.about-title h1 { font-size: clamp(61px,14vw,85px); }.about-title .hero-deck { font-size: 14px; }.portrait { width: 80%; align-self: flex-end; }.portrait img { max-height: 390px; }.story { padding-top: 65px; padding-bottom: 76px; }.story-grid { display: block; margin: 49px 0 0 12%; }.story h2 { font-size: 41px; margin-bottom: 28px; }.story-grid p { font-size: 12px; }.education { display: block; padding-top: 64px; padding-bottom: 70px; }.education-info { margin: 37px 0 0 12%; padding-left: 17px; }.education-info h2 { font-size: 28px; }.about-linkout { padding: 38px 7vw; display: block; }.about-linkout h2 { font-size: 37px; }.about-linkout>a { display: inline-block; margin-top: 20px; }
  .product-hero { padding-top: 38px; padding-bottom: 27px; }.product-hero-grid { display: flex; flex-direction: column; align-items: stretch; margin: 47px 0 39px; gap: 20px; }.product-heading h1 { font-size: clamp(61px,14vw,85px); }.product-heading .hero-deck { font-size: 14px; }.product-mark { width: 110%; margin-left: -5%; }.product-mark img { width: 100%; margin: 0; }.product-mark-note { font-size: 8px; }.product-bottomline { font-size: 7px; }.product-statement { padding-top: 65px; padding-bottom: 76px; }.product-statement-grid { display: block; margin: 46px 0 0 12%; }.product-statement-grid>.eyebrow { padding: 0; margin-bottom: 21px; }.product-statement h2 { font-size: 40px; }.product-statement-grid>div>p:not(.eyebrow) { font-size: 12px; }.product-pillars { padding-top: 64px; padding-bottom: 72px; }.pillar-grid { grid-template-columns: 1fr; margin: 39px 0 0 12%; gap: 15px; }.pillar-grid article { padding-top: 14px; }.pillar-grid h3 { font-size: 23px; margin: 20px 0 8px; }.pillar-grid p { font-size: 11px; margin-bottom: 7px; }.product-contact { grid-template-columns: 1fr; padding-top: 57px; padding-bottom: 37px; }.product-contact h2 { font-size: 48px; }.product-contact-copy>p:not(.eyebrow) { font-size: 12px; }.product-contact-image { margin-top: 20px; overflow: hidden; }.product-contact-image img { width: 112%; margin-left: -6%; }
}
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

/* Expertise landing pages */
.service-card:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }.card-visit { margin-top: 12px; color: var(--green); font: 9px var(--mono); text-transform: uppercase; letter-spacing: .08em; }.card-visit span { padding-left: 7px; }
.service-hero { padding-top: 43px; padding-bottom: 85px; }.service-hero-grid { margin: 65px 4% 0 11%; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 9%; }.service-hero h1 { font-size: clamp(68px,8.3vw,112px); line-height: .98; font-weight: 500; margin: 0 0 24px; }.service-hero h1 em { color: var(--green); }.service-hero .hero-deck { max-width: 490px; }.service-aside { min-height: 270px; padding: 26px; background: var(--ink-soft); border: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }.service-aside-index,.service-aside-tags { font: 9px var(--mono); letter-spacing: .1em; color: #829087; }.service-aside>p { font: 500 clamp(22px,2.6vw,34px)/1.3 var(--display); letter-spacing: -.04em; margin: 32px 0; }.service-aside>p em { color: var(--green); }.service-aside-rule { display: block; width: 100%; height: 1px; background: var(--line); margin-bottom: 13px; }
.service-photo { position: relative; margin: 0; min-width: 0; height: clamp(280px,34vw,440px); overflow: hidden; background: var(--ink-soft); border: 1px solid rgba(155,200,135,.28); }.service-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(18,25,22,.02) 34%,rgba(18,25,22,.82) 100%); pointer-events: none; }.service-photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: brightness(.78) saturate(.72) sepia(.12) hue-rotate(18deg); }.service-photo-network img { object-position: 56% center; filter: brightness(.68) saturate(.72) sepia(.2) hue-rotate(30deg); }.service-photo-analysis img { object-position: 56% center; }.service-photo figcaption { position: absolute; z-index: 1; left: 20px; right: 20px; bottom: 17px; display: flex; flex-direction: column; gap: 6px; color: var(--paper); }.service-photo figcaption span:first-child { color: var(--green); font: 9px var(--mono); letter-spacing: .11em; }.service-photo figcaption span:last-child { font: 500 15px var(--display); letter-spacing: -.02em; }
.service-intro,.service-process { background: var(--ink-soft); }.service-intro { padding-top: 82px; padding-bottom: 91px; }.service-copy-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 12%; margin: 58px 4% 0 11%; }.service-copy-grid h2,.service-process-grid>h2,.service-cta h2 { font-size: clamp(40px,4.7vw,64px); line-height: 1.08; font-weight: 500; margin: 0; }.service-copy-grid>div { max-width: 540px; }.service-copy-grid>div p,.service-cta>div>p:not(.eyebrow) { color: var(--sage); font-size: 14px; line-height: 1.9; }
.service-detail { padding-top: 88px; padding-bottom: 102px; }.service-offer-grid { margin: 56px 0 0 11%; display: grid; grid-template-columns: repeat(2,1fr); gap: 0 7%; }.service-offer-grid article { padding: 23px 0 26px; border-top: 1px solid var(--line); }.service-offer-grid article>span { color: var(--green); font: 9px var(--mono); letter-spacing: .09em; }.service-offer-grid h3 { font-size: 25px; font-weight: 500; margin: 24px 0 10px; }.service-offer-grid p { max-width: 420px; color: var(--sage); font-size: 13px; line-height: 1.8; margin-bottom: 0; }
.service-process { padding-top: 83px; padding-bottom: 94px; }.service-process-grid { margin: 56px 4% 0 11%; display: grid; grid-template-columns: .9fr 1.1fr; gap: 10%; }.service-process-grid>h2 em,.service-cta h2 em { color: var(--green); }.service-process ol { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }.service-process li { display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 19px 0; border-bottom: 1px solid var(--line); }.service-process li>span { color: var(--green); font: 10px var(--mono); padding-top: 3px; }.service-process li h3 { font-size: 17px; font-weight: 500; margin: 0 0 6px; letter-spacing: -.02em; }.service-process li p { color: var(--sage); font-size: 12px; line-height: 1.7; margin: 0; max-width: 430px; }
.service-cta { padding-top: 89px; padding-bottom: 94px; display: grid; grid-template-columns: 1fr .72fr; gap: 11%; align-items: end; }.service-cta .eyebrow { margin-bottom: 16px; }.service-cta h2 { margin-bottom: 17px; }.service-cta>div>p:not(.eyebrow) { max-width: 450px; margin-bottom: 8px; }.service-cta .button { margin-top: 22px; }.service-next { border-top: 1px solid var(--line); }.service-next>span { display: block; color: #829087; font: 9px var(--mono); letter-spacing: .1em; padding: 14px 0 8px; }.service-next>a { border-top: 1px solid var(--line); padding: 16px 0; display: flex; justify-content: space-between; gap: 16px; font-size: 12px; color: var(--sage); }.service-next>a:hover { color: var(--paper); }.service-next b { color: var(--green); font-size: 15px; font-weight: 400; }
@media (max-width: 900px) { .service-hero-grid,.service-copy-grid,.service-process-grid { margin-left: 5%; gap: 6%; }.service-offer-grid { margin-left: 5%; } }
@media (max-width: 640px) { .service-hero { padding-top: 37px; padding-bottom: 62px; }.service-hero-grid { display: block; margin: 43px 0 0; }.service-hero h1 { font-size: clamp(60px,13vw,84px); }.service-hero .hero-deck { font-size: 14px; }.service-photo { height: 270px; width: 88%; margin: 42px 0 0 auto; }.service-photo figcaption { left: 15px; right: 15px; bottom: 13px; }.service-aside { margin: 48px 0 0 12%; min-height: 220px; padding: 20px; }.service-aside>p { font-size: 25px; margin: 26px 0; }.service-intro { padding-top: 65px; padding-bottom: 72px; }.service-copy-grid { display: block; margin: 43px 0 0 12%; }.service-copy-grid h2,.service-process-grid>h2 { font-size: 40px; }.service-copy-grid>div { margin-top: 25px; }.service-copy-grid>div p,.service-cta>div>p:not(.eyebrow) { font-size: 12px; }.service-detail { padding-top: 66px; padding-bottom: 72px; }.service-offer-grid { display: block; margin: 38px 0 0 12%; }.service-offer-grid article { padding: 19px 0 22px; }.service-offer-grid h3 { margin: 17px 0 8px; font-size: 22px; }.service-offer-grid p { font-size: 12px; }.service-process { padding-top: 65px; padding-bottom: 73px; }.service-process-grid { display: block; margin: 42px 0 0 12%; }.service-process ol { margin-top: 32px; }.service-process li { padding: 15px 0; }.service-process li p { font-size: 11px; }.service-cta { padding-top: 68px; padding-bottom: 72px; display: block; }.service-cta h2 { font-size: 43px; }.service-next { margin: 48px 0 0 12%; }.service-next>a { font-size: 11px; } }

/* CrewLogic product page */
.product-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 25px; margin-top: 15px; }.product-hero-actions .button { margin-top: 0; }.product-contact-link { color: var(--sage); font: 11px var(--mono); border-bottom: 1px solid rgba(155,200,135,.45); padding-bottom: 7px; }.product-contact-link span { color: var(--green); margin-left: 9px; }.product-hero-mark { display: flex; flex-direction: column; align-items: center; justify-content: center; padding-bottom: 25px; }.product-hero-mark img { width: 100%; margin: 0; }.product-mark-facts { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 5px 16px; width: min(100%,390px); margin: 0 auto; padding: 15px 17px; border: 1px solid var(--line); background: rgba(18,25,22,.8); }.product-mark-facts span { color: #829087; font: 8px var(--mono); letter-spacing: .1em; }.product-mark-facts b { color: var(--paper); font-size: 11px; font-weight: 500; }.product-stage { letter-spacing: .06em; }
.product-inline-link { color: var(--paper); border-color: rgba(155,200,135,.5); }.product-inline-link span { color: var(--green); }
.product-capabilities { padding-top: 86px; padding-bottom: 103px; }.product-capabilities-heading { margin: 64px 0 49px 11%; }.product-capabilities-heading .eyebrow { margin-bottom: 14px; }.product-capabilities-heading h2 { font-size: clamp(44px,5vw,70px); font-weight: 500; line-height: 1.04; margin: 0; }.product-capabilities-heading h2 em { color: var(--green); }.product-capability-grid { margin-left: 11%; display: grid; grid-template-columns: repeat(3,1fr); gap: 0 25px; }.product-capability-grid article { border-top: 1px solid var(--line); padding: 20px 2px 24px; }.product-capability-grid article>span { color: var(--green); font: 9px var(--mono); letter-spacing: .1em; }.product-capability-grid h3 { font-size: 20px; font-weight: 500; margin: 23px 0 9px; }.product-capability-grid p { color: var(--sage); font-size: 12px; line-height: 1.8; margin: 0; max-width: 340px; }
.product-workflows { padding-top: 78px; padding-bottom: 92px; background: var(--ink-soft); }.product-workflow-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 52px 0 0 11%; }.workflow-card { min-height: 352px; padding: 31px; border: 1px solid rgba(155,200,135,.25); background: linear-gradient(145deg,rgba(155,200,135,.08),rgba(18,25,22,.25)); display: flex; flex-direction: column; align-items: flex-start; }.workflow-card-alt { background: linear-gradient(145deg,rgba(155,200,135,.035),rgba(18,25,22,.32)); }.workflow-card .eyebrow { margin-bottom: 17px; }.workflow-card h2 { font-size: clamp(28px,3.1vw,43px); line-height: 1.11; font-weight: 500; margin: 0 0 16px; }.workflow-card h2 em { color: var(--green); }.workflow-card>p:not(.eyebrow) { color: var(--sage); font-size: 12px; line-height: 1.8; max-width: 430px; }.workflow-note { margin-top: auto; padding-top: 15px; border-top: 1px solid var(--line); width: 100%; display: flex; flex-wrap: wrap; gap: 8px 15px; }.workflow-note span { width: 100%; color: #829087; font: 8px var(--mono); letter-spacing: .1em; }.workflow-note b { color: var(--paper-muted); font: 9px var(--mono); font-weight: 400; }.workflow-note b+b::before { content: "·"; color: var(--green); margin-right: 13px; }
.product-data { padding-top: 84px; padding-bottom: 93px; background: var(--ink-light); }.product-data-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10%; margin: 59px 5% 0 11%; }.product-data-grid h2,.product-faq-grid h2 { font-size: clamp(39px,4.6vw,62px); line-height: 1.1; font-weight: 500; margin: 0; }.product-data-grid h2 em,.product-faq-grid h2 em { color: var(--green); }.product-data-copy>p { color: var(--sage); font-size: 13px; line-height: 1.85; }.product-data-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }.product-data-badges span { border: 1px solid rgba(155,200,135,.3); color: var(--green); padding: 9px 10px; font: 8px var(--mono); letter-spacing: .06em; }
.product-faq { padding-top: 83px; padding-bottom: 100px; }.product-faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 10%; margin: 58px 4% 0 11%; }.product-faq-grid .eyebrow { margin-bottom: 17px; }.product-faq-list { border-top: 1px solid var(--line); }.product-faq-list details { border-bottom: 1px solid var(--line); }.product-faq-list summary { cursor: pointer; list-style: none; padding: 18px 0; display: flex; justify-content: space-between; gap: 20px; align-items: center; color: var(--paper); font-size: 13px; }.product-faq-list summary::-webkit-details-marker { display: none; }.product-faq-list summary span { color: var(--green); font-size: 18px; transition: transform .2s; }.product-faq-list details[open] summary span { transform: rotate(45deg); }.product-faq-list details p { color: var(--sage); font-size: 12px; line-height: 1.8; max-width: 600px; margin: -3px 35px 18px 0; }
@media (max-width: 900px) { .product-capabilities-heading,.product-capability-grid,.product-workflow-grid { margin-left: 5%; }.product-data-grid,.product-faq-grid { margin-left: 5%; gap: 6%; }.product-capability-grid { grid-template-columns: repeat(2,1fr); }.product-mark-facts { max-width: 340px; } }
@media (max-width: 640px) { .product-hero-actions { align-items: flex-start; flex-direction: column; gap: 16px; }.product-hero-mark { width: 100%; margin: 0; padding: 0 0 10px; }.product-hero-mark img { width: 100%; margin: 0; }.product-mark-facts { max-width: 320px; margin-top: 0; }.product-capabilities { padding-top: 65px; padding-bottom: 72px; }.product-capabilities-heading { margin: 44px 0 31px 12%; }.product-capabilities-heading h2 { font-size: 45px; }.product-capability-grid { display: block; margin: 0 0 0 12%; }.product-capability-grid article { padding: 17px 0 21px; }.product-capability-grid h3 { margin: 17px 0 7px; font-size: 19px; }.product-capability-grid p { font-size: 11px; }.product-workflows { padding-top: 64px; padding-bottom: 72px; }.product-workflow-grid { display: block; margin: 37px 0 0 12%; }.workflow-card { min-height: 0; padding: 22px; margin-bottom: 10px; }.workflow-card h2 { font-size: 30px; }.workflow-card>p:not(.eyebrow) { font-size: 11px; }.workflow-note { margin-top: 12px; }.product-data { padding-top: 65px; padding-bottom: 73px; }.product-data-grid { display: block; margin: 43px 0 0 12%; }.product-data-grid h2,.product-faq-grid h2 { font-size: 41px; }.product-data-copy { margin-top: 26px; }.product-data-copy>p { font-size: 12px; }.product-data-badges { gap: 6px; }.product-data-badges span { font-size: 7px; }.product-faq { padding-top: 64px; padding-bottom: 75px; }.product-faq-grid { display: block; margin: 43px 0 0 12%; }.product-faq-list { margin-top: 28px; }.product-faq-list summary { font-size: 12px; padding: 15px 0; }.product-faq-list details p { font-size: 11px; } }

/* Keep every page in the original dark forest palette; pale tones are accents. */
.intro, .story, .product-statement { background: var(--ink-soft); color: var(--paper); }
.intro .section-label, .story .section-label, .education .section-label, .product-statement .section-label { color: var(--sage); }
.intro-aside p, .story-grid p, .product-statement-grid>div>p:not(.eyebrow) { color: var(--sage); }
.intro-aside .large-copy { color: var(--paper); }
.intro h2 em { color: var(--green); }
.contact { background: var(--ink-light); color: var(--paper); }
.contact .section-label { color: var(--sage); }
.contact .section-label span:first-child, .contact-copy .eyebrow, .contact h2 em { color: var(--green); }
.contact-copy>p:not(.eyebrow) { color: var(--sage); }
.contact-copy .underlined-link { color: var(--paper); border-color: rgba(155,200,135,.5); }
.contact-form label { color: var(--sage); }
.contact-form input, .contact-form textarea { color: var(--paper); border-color: var(--line); }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: #8b9990; }
.product-banner { background: var(--ink-light); color: var(--paper); border: 1px solid rgba(155,200,135,.24); }
.product-banner .eyebrow, .product-banner .status-dot, .product-banner h2 em { color: var(--green); }
.product-banner .status-dot { background: var(--green); }
.product-banner-copy>p:not(.eyebrow) { color: var(--sage); }
.product-banner-logo img { mix-blend-mode: screen; }
.product-corner { color: var(--green); }
.button-light { background: var(--green); color: var(--ink); }
.button-light:hover { background: var(--green-bright); }
.story h2, .product-statement h2 { color: var(--paper); }
.story-grid p { color: var(--sage); }
.education-info h2 { color: var(--paper); }
.about-linkout { background: var(--ink-light); color: var(--paper); border-top: 1px solid var(--line); }
.about-linkout .eyebrow, .about-linkout>a span { color: var(--green); }
.about-linkout>a { border-color: rgba(155,200,135,.5); }
.product-statement-grid>.eyebrow { color: var(--green); }
.product-statement-grid>div>p:not(.eyebrow) { color: var(--sage); }
.product-contact { background: var(--ink-light); color: var(--paper); border-top: 1px solid var(--line); }
.product-contact .eyebrow, .product-contact h2 em { color: var(--green); }
.product-contact-copy>p:not(.eyebrow) { color: var(--sage); }
.product-contact-image img { mix-blend-mode: screen; }
html { font-size: 17px; }

/* Founder credentials and capabilities */
.credential-list,.skill-list { list-style: none; padding: 0; margin: 0; color: var(--paper); }
.credential-list { display: grid; gap: 9px; font: 500 20px/1.5 var(--display); letter-spacing: -.025em; }
.skills-block { margin-top: 31px; }
.skills-block .eyebrow { margin-bottom: 12px; }
.skill-list { display: flex; flex-wrap: wrap; gap: 9px; }
.skill-list li { padding: 8px 10px; border: 1px solid rgba(155,200,135,.3); color: var(--sage); font: 10px var(--mono); }
