@font-face { font-family:Manrope;src:url('/assets/fonts/Manrope.woff2') format('woff2');font-weight:200 800;font-display:swap }
* { box-sizing:border-box }
html { scroll-behavior:smooth;scroll-padding-top:95px }
body { margin:0;font-family:Manrope,sans-serif;-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--fg);--bg:#20273f;--fg:#f4f3f1;--muted:#b6bfd3;--accent:#dcbba0;--line:#424a62;--surface:#171d31;--button-text:#20273f;--display:Newsreader,Georgia,serif }
a { color:inherit;text-decoration:none }
button { font:inherit;cursor:pointer }
button, a { -webkit-tap-highlight-color:transparent }
a:focus-visible, button:focus-visible { outline:3px solid var(--accent);outline-offset:6px }
button:focus-visible { outline-color:#3158cf }
::selection { background:var(--accent);color:var(--button-text) }
[hidden] { display:none!important }
.shell { width:min(1280px,calc(100% - 112px));margin-inline:auto }
.skip-link { position:absolute;top:85px;left:20px;transform:translateX(-180%);background:var(--accent);color:var(--button-text);padding:14px;z-index:20 }
.skip-link:focus { transform:none }
.site-header { min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:35px }
.brand { display:flex;align-items:center;gap:13px;min-width:225px }
.brand>.monad-mark { width:35px;height:55px;color:var(--accent);stroke-width:4 }
.brand>span { font-size:24px;font-weight:650;letter-spacing:-1px;line-height:1.15 }
.brand>span>span { display:block;font-size:12px;letter-spacing:.3px;font-weight:450;margin-top:4px }
.monad-mark { stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round }
.main-nav { display:flex;gap:28px;align-items:center;margin-left:auto;font-size:12px }
.main-nav a { padding-block:10px }
.main-nav a[aria-current=page] { color:var(--accent) }
.main-nav a:hover, .text-link:hover, .secondary-link:hover { color:var(--accent) }
.header-actions { display:flex;gap:25px;align-items:center }
.language-switch { display:flex;gap:7px;align-items:center;font-size:10px;color:var(--muted) }
.language-switch a { padding:12px 1px }
.language-switch [aria-current=true] { color:var(--fg);font-weight:800;text-decoration:underline;text-underline-offset:5px }
.header-contact { font-size:12px;padding:12px 20px;border:1px solid var(--line);border-radius:3px;white-space:nowrap }
.header-contact:hover { border-color:var(--accent) }
.hero { display:grid;grid-template-columns:1.08fr 1fr;align-items:center;column-gap:35px;padding-top:27px;padding-bottom:30px;min-height:645px }
.hero-copy { padding-bottom:12px;position:relative;z-index:1 }
h1, h2, h3, p, figure { margin:0 }
h1 { font-family:var(--display);font-weight:450;font-size:clamp(65px,6.6vw,98px);letter-spacing:-3.8px;line-height:1.065;font-optical-sizing:auto }
.hero-intro { font-size:16px;line-height:1.85;max-width:465px;margin-top:26px;color:var(--muted) }
.button { display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:15px 24px;font-size:12px;font-weight:700;letter-spacing:.05px;border-radius:3px }
.secondary-link { display:block;width:fit-content;font-size:11px;margin-top:19px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--line) }
.hero-visual { position:relative;min-width:0;align-self:center }
.hero-visual figcaption { font-size:10px;text-align:center;color:var(--muted);margin-top:-5px;letter-spacing:.15px }
.hero-footnote { grid-column:1/-1;border-top:1px solid var(--line);padding-top:23px;margin-top:36px;font-size:11px;color:var(--muted) }
.emblem { position:relative;width:100%;aspect-ratio:560/520;color:var(--accent) }
.construction { width:100%;height:100%;stroke:currentColor;stroke-width:.7 }
.hero-monad { position:absolute;left:50%;top:50%;width:45%;height:70%;transform:translate(-50%,-50%);stroke-width:1.7 }
.agent-emblem { border-radius:50%;outline-offset:3px;touch-action:pan-y }
.agent-emblem:focus-visible { outline:1px dashed var(--accent) }
.agent-guides { opacity:.24 }
.agent-construction .agent-connection { stroke-width:.85 }
.agent-construction text { fill:var(--muted);stroke:none;font-family:Manrope,sans-serif;font-size:12px;letter-spacing:.1px }
.connection-path { opacity:.31;transition:opacity .3s }
.connection-halo { stroke-width:.7;opacity:.4;transition:opacity .3s }
.connection-dot { fill:currentColor;stroke:none;opacity:.75 }
.agent-monad { stroke-width:1.9 }
.agent-iris { stroke-width:.65;opacity:.7;transition:opacity .3s }
.agent-pupil { transition:transform .15s ease-out }
.agent-eye { transform-box:fill-box;transform-origin:center }
.agent-head, .agent-crescent, .agent-body { transition:stroke-width .3s }
.agent-emblem.is-attentive .agent-iris { opacity:1 }
.agent-emblem.is-attentive .agent-head { stroke-width:2.05 }
.agent-emblem.is-attentive .connection-halo { opacity:.65 }
.agent-connection.is-active .connection-path, .agent-connection.is-active .connection-halo { opacity:1 }
.agent-connection.is-active text { fill:var(--accent) }
.section-pad { padding-block:92px }
.services-section { background:var(--surface);margin-top:36px }
.section-intro { display:flex;align-items:flex-start;justify-content:space-between;gap:60px;margin-bottom:62px }
h2 { font-family:var(--display);font-weight:450;font-size:42px;line-height:1.2;letter-spacing:-1.3px }
.section-intro>p { color:var(--muted);font-size:13px;line-height:1.8;max-width:415px;padding-top:6px }
.offerings { display:grid;grid-template-columns:repeat(3,1fr);gap:46px }
.offering { display:flex;flex-direction:column;align-items:flex-start }
.service-icon { color:var(--accent);width:38px;height:38px;margin-bottom:27px }
.service-type { font-size:11px!important;color:var(--accent)!important;margin-bottom:15px }
.offering h3 { font-family:Manrope,sans-serif;font-size:20px;line-height:1.45;font-weight:500;letter-spacing:-.5px;max-width:280px;min-height:58px }
.offering>p:not(.service-type) { font-size:12px;line-height:1.85;color:var(--muted);margin-top:19px }
.offering .service-detail { font-size:9px!important;line-height:1.7!important;margin-top:auto!important;padding-top:24px;color:var(--muted) }
.approach-section { display:grid;grid-template-columns:1.1fr 1fr;gap:120px }
.approach-copy>p { font-size:13px;line-height:1.9;max-width:440px;color:var(--muted);margin-top:24px }
.steps { list-style:none;counter-reset:steps;margin:0;padding:0 }
.steps li { position:relative;counter-increment:steps;padding:0 0 25px 47px;border-left:1px solid var(--line);margin-left:11px }
.steps li:last-child { padding-bottom:0;border-left-color:transparent }
.steps li:before { content:counter(steps);position:absolute;left:-12px;top:0;width:23px;height:23px;border-radius:50%;border:1px solid var(--line);background:var(--bg);color:var(--accent);font-size:10px;display:grid;place-items:center }
.steps h3 { font-size:15px;font-weight:600;line-height:1.5;margin-bottom:7px }
.steps p { font-size:12px;line-height:1.8;color:var(--muted);max-width:320px }
.about-teaser { display:grid;grid-template-columns:60px 1fr 1.1fr;align-items:center;gap:40px;border-top:1px solid var(--line);padding-block:45px 85px }
.about-teaser .monad-mark { width:45px;height:68px;color:var(--accent) }
.about-teaser h2 { font-size:31px;max-width:290px }
.about-teaser p { font-size:12px;line-height:1.8;color:var(--muted) }
.text-link { display:inline-block;font-size:11px;border-bottom:1px solid var(--accent);padding-bottom:4px;margin-top:20px }
.contact-section { background:var(--surface);padding-block:67px }
.contact-inner { display:flex;justify-content:space-between;gap:70px;align-items:center }
.contact-inner h2 { font-size:43px }
.contact-inner p { font-size:12px;line-height:1.8;max-width:430px;color:var(--muted);margin-top:22px }
.contact-actions { display:flex;flex-direction:column;align-items:center;gap:17px;margin-right:55px }
.email-link { font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:4px }
.site-footer { display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:32px;font-size:10px;color:var(--muted) }
.footer-brand { color:var(--fg);font-weight:650 }
.about-opening { padding-block:20px 70px;border-bottom:1px solid var(--line) }
.back-link { margin:0 0 36px;color:var(--muted);border-bottom-color:var(--line) }
.about-opening h1 { font-size:clamp(52px,5.8vw,82px);hyphens:auto;overflow-wrap:anywhere }
.about-opening .hero-intro { max-width:650px }
.founder-section { display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-block:78px 100px }
.founder-signature .monad-mark { width:100px;height:160px;color:var(--accent);margin-bottom:20px }
.founder-signature h2 { font-size:31px }
.founder-signature p { color:var(--muted);font-size:11px;line-height:1.8;margin-top:12px }
.founder-copy p { font-size:14px;line-height:1.95;color:var(--muted);margin-bottom:23px }
.founder-copy h2 { font-size:29px;margin-top:34px;margin-bottom:19px }
@media(min-width:1550px) {
.hero { min-height:700px }
.hero-copy { padding-left:10px }
.hero-intro { font-size:17px }
}
@media(max-width:1100px) {
.shell { width:calc(100% - 72px) }
.site-header { gap:20px }
.brand { min-width:180px }
.main-nav { gap:20px }
.header-actions { gap:20px }
.hero { column-gap:20px;min-height:590px }
.hero h1 { font-size:73px }
.hero-intro { font-size:14px }
.hero-visual figcaption { font-size:9px }
.offerings { gap:28px }
.approach-section { gap:70px }
.contact-actions { margin-right:0 }
.section-intro { gap:30px }
.section-intro>p { max-width:340px }
}
@media(max-width:850px) {
.site-header { min-height:110px }
.brand { min-width:140px;gap:8px }
.brand>span { font-size:21px }
.brand>.monad-mark { width:28px }
.main-nav { gap:18px }
.approach-nav { display:none }
.header-contact { display:none }
.hero { min-height:540px }
.hero h1 { font-size:62px }
.hero-intro { font-size:13px }
.hero .button { padding-inline:17px;font-size:11px }
.hero-visual figcaption { font-size:8px }
.section-pad { padding-block:68px }
.section-intro { display:block }
.section-intro>p { max-width:480px;margin-top:18px }
.offerings { gap:25px }
.offering h3 { font-size:17px }
.offering>p:not(.service-type) { font-size:11px }
.service-detail { overflow-wrap:anywhere }
.approach-section { gap:45px }
.approach-copy h2 { font-size:35px }
.about-teaser { grid-template-columns:1fr 1.4fr;gap:30px }
.about-teaser>div:first-child { display:none }
.about-teaser h2 { font-size:30px }
.contact-inner { gap:30px }
.contact-inner h2 { font-size:35px }
.founder-section { gap:45px }
.founder-signature h2 { font-size:27px }
}
@media(max-width:650px) {
html { scroll-padding-top:20px }
.shell { width:calc(100% - 44px) }
.site-header { min-height:100px;gap:12px;flex-wrap:wrap;padding-block:18px }
.brand { min-width:0;gap:7px }
.brand>span { font-size:20px }
.brand>span>span { font-size:10px }
.brand>.monad-mark { width:25px;height:43px }
.main-nav { gap:15px;font-size:10px }
.header-actions { gap:0 }
.language-switch { font-size:9px;gap:5px }
.hero { display:flex;flex-direction:column;align-items:stretch;padding-top:30px;padding-bottom:24px;min-height:0 }
.hero-copy { padding:0 }
.hero h1 { font-size:70px;line-height:1.05;letter-spacing:-2.7px }
.hero-intro { font-size:14px;line-height:1.85;margin-top:24px;max-width:450px }
.secondary-link { font-size:11px;margin-top:18px }
.hero-visual { align-self:center;width:100%;max-width:400px;margin-top:30px }
.hero-visual figcaption { font-size:9px;margin-top:-9px }
.emblem { max-width:370px;margin:auto }
.hero-monad { stroke-width:1.8 }
.hero-footnote { font-size:9px;line-height:1.7;padding-top:19px;margin-top:28px }
.services-section { margin-top:18px }
.section-pad { padding-block:54px }
.section-intro { margin-bottom:38px }
h2 { font-size:34px;letter-spacing:-.8px }
.section-intro>p { font-size:12px;margin-top:16px }
.offerings { display:block }
.offering { border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:31px }
.offering:last-child { border:0;margin:0;padding-bottom:0 }
.service-icon { width:33px;height:33px;margin-bottom:16px }
.service-type { font-size:10px!important;margin-bottom:10px }
.offering h3 { font-size:21px;max-width:300px;min-height:0 }
.offering>p:not(.service-type) { font-size:12px;margin-top:13px;max-width:450px }
.offering .service-detail { font-size:9px!important;padding-top:18px }
.approach-section { display:block }
.approach-copy h2 { font-size:36px }
.approach-copy>p { font-size:12px }
.steps { margin-top:37px }
.steps p { max-width:360px }
.about-teaser { display:block;padding-block:34px 48px }
.about-teaser h2 { max-width:none;margin-bottom:19px;font-size:29px }
.about-teaser p { font-size:12px }
.contact-section { padding-block:45px }
.contact-inner { display:block }
.contact-inner h2 { font-size:35px }
.contact-inner p { font-size:12px }
.contact-actions { align-items:flex-start;margin-top:26px;gap:18px }
.site-footer { flex-wrap:wrap;justify-content:flex-start;gap:12px 20px;font-size:9px;padding-block:26px }
.site-footer span:last-child { width:100% }
.about-opening { padding-block:15px 40px }
.back-link { margin-bottom:30px;font-size:10px }
.about-opening h1 { font-size:44px;letter-spacing:-1.8px }
.about-opening .hero-intro { font-size:14px }
.founder-section { display:block;padding-block:44px 35px }
.founder-signature { padding-bottom:32px;margin-bottom:31px;border-bottom:1px solid var(--line) }
.founder-signature .monad-mark { float:right;width:60px;height:92px;margin:-12px 10px 0 14px }
.founder-signature h2 { font-size:29px }
.founder-signature p { font-size:10px;max-width:230px }
.founder-copy p { font-size:13px }
.founder-copy h2 { font-size:27px }
}
@media(max-width:380px) {
.shell { width:calc(100% - 36px) }
.main-nav { gap:10px;font-size:9px }
.language-switch { font-size:8px }
.site-header { gap:8px }
.brand>span { font-size:18px }
.brand>.monad-mark { width:22px }
.hero h1 { font-size:62px }
.hero .button { font-size:11px }
.hero-footnote { font-size:8px }
}
.main-nav { font-size:13px }
.section-intro>p { font-size:15px }
.offering>p:not(.service-type) { font-size:14px }
.offering .service-detail { font-size:10px!important }
.approach-copy>p, .steps p, .about-teaser p, .contact-inner p { font-size:14px }
.service-type { font-size:12px!important }
.text-link, .secondary-link { font-size:12px }
.hero-footnote { font-size:12px }
.site-footer { font-size:11px }
[data-theme=synthesis] h2 { font-family:Manrope,sans-serif;font-size:34px;font-weight:450;letter-spacing:-1.2px }
[data-theme=synthesis] .about-teaser h2 { font-size:28px }
[data-theme=synthesis] .contact-inner h2 { font-size:36px }
@media(max-width:850px) {
.main-nav { font-size:11px }
.section-intro>p { font-size:14px }
.offering>p:not(.service-type) { font-size:13px }
.approach-copy>p, .steps p, .about-teaser p, .contact-inner p { font-size:13px }
[data-theme=synthesis] h2 { font-size:30px }
}
@media(max-width:650px) {
html { scroll-padding-top:125px }
.main-nav { font-size:10px }
.section-intro>p, .offering>p:not(.service-type), .approach-copy>p, .steps p, .about-teaser p, .contact-inner p { font-size:14px }
.service-type { font-size:11px!important }
.offering .service-detail { font-size:10px!important }
.hero-footnote { font-size:10px;max-width:100% }
.site-footer { font-size:10px }
[data-theme=synthesis] h2 { font-size:29px }
[data-theme=synthesis] .about-teaser h2 { font-size:27px }
[data-theme=synthesis] .contact-inner h2 { font-size:29px }
}
@media(max-width:380px) {
.main-nav { font-size:9px }
}
@media(prefers-reduced-motion:reduce) {
html { scroll-behavior:auto }
.agent-emblem * { transition:none!important;animation:none!important }
}

@font-face {
  font-family: Newsreader;
  src: url('/assets/fonts/Newsreader.woff2') format('woff2');
  font-weight: 200 800;
  font-display: swap;
}
body[data-theme=synthesis] h1 {
  font-family: Newsreader, Georgia, serif;
  font-weight: 500;
  font-optical-sizing: none;
  font-variation-settings: 'opsz' 36;
  letter-spacing: -.025em;
  line-height: 1.12;
}
html { scroll-padding-top: 24px; }
.skip-link { top: 16px; }
.primary { background:var(--accent); color:var(--button-text); }
.primary:hover { filter:brightness(1.07); }
.hero .primary { margin-top:31px; }
@media(max-width:650px) { .hero .primary { margin-top:25px; font-size:12px; } }

.header-band {
  --bg: #f4f3f1;
  --fg: #20273f;
  --muted: #526177;
  --accent: #805d42;
  --line: #cdd1da;
  background: var(--bg);
  color: var(--fg);
}
.agent-construction { display: block; }

.service-opening { padding-block:48px 96px; }
.service-opening .service-type { margin-bottom:24px; }
.service-opening h1 { max-width:1000px; font-size:clamp(48px,6vw,80px); }
.service-opening .hero-intro { max-width:62ch; margin-top:32px; line-height:1.95; }
.service-opening .primary { margin-top:36px; }
.service-needs { background:var(--surface); padding-block:96px; }
.service-needs h2 { max-width:780px; }
.service-columns { display:grid; gap:0; margin-top:56px; }
.service-columns article { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr); gap:80px; padding-block:38px; border-bottom:1px solid var(--line); align-items:start; }
.service-columns article:first-child { padding-top:0; }
.service-columns article:last-child { padding-bottom:0; border-bottom:0; }
.service-columns h3 { max-width:25ch; font-size:23px; font-weight:500; line-height:1.5; }
.service-columns p, .service-experience p, .service-questions p { max-width:62ch; font-size:16px; line-height:1.95; color:var(--muted); }
.service-experience { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr); gap:80px; padding-block:96px; align-items:start; }
.service-experience h2 { max-width:22ch; line-height:1.4; }
.service-experience .text-link { margin-top:28px; }
.service-approach, .service-related { background:var(--surface); }
.service-page .approach-section { padding-block:96px; }
.service-approach .steps li:before { background:var(--surface); }
.service-page .contact-section { background:var(--bg); }
.service-page .steps li { padding-bottom:36px; }
.service-page .steps li:last-child { padding-bottom:0; }
.service-page .steps h3 { margin-bottom:12px; }
.service-questions { padding-block:96px; }
.service-questions h2 { margin-bottom:40px; }
.service-questions details { border-bottom:1px solid var(--line); padding-block:28px; }
.service-questions summary { cursor:pointer; font-size:18px; line-height:1.7; }
.service-questions summary:focus-visible { outline:3px solid var(--accent); outline-offset:6px; }
.service-questions p { padding-top:22px; padding-bottom:8px; }
.blog-body, .blog-list { padding-block:96px; }
.blog-body p, .blog-list p { max-width:62ch; font-size:16px; line-height:1.95; color:var(--muted); }
.blog-body > * { margin-block:0; }
.blog-body > * + * { margin-top:20px; }
.blog-body > h2 + * { margin-top:16px; }
.blog-body > * + h2 { margin-top:56px; }
.blog-list article + article { margin-top:56px; }
.blog-list h2 + p { margin-top:12px; }
.blog-list h2 .text-link { display:inline; font-size:inherit; line-height:inherit; margin-top:0; padding-bottom:0; }
.related-services { padding-block:88px; display:flex; align-items:baseline; flex-wrap:wrap; gap:30px 48px; }
.related-services h2 { width:100%; }
.related-services .text-link { margin-top:0; padding-block:10px; font-size:15px; line-height:1.7; }
@media(max-width:1000px) {
.service-columns article, .service-experience { gap:48px; }
}
@media(max-width:850px) {
.service-columns article, .service-experience { grid-template-columns:1fr; gap:24px; }
.service-columns h3 { max-width:32ch; }
.service-experience h2 { max-width:28ch; }
}
@media(max-width:650px) {
.service-opening { padding-block:32px 64px; }
.service-needs, .service-experience, .service-page .approach-section { padding-block:64px; }
.service-columns { margin-top:40px; }
.service-columns article { padding-block:32px; gap:18px; }
.service-columns h3 { font-size:21px; }
.service-columns p, .service-experience p, .service-questions p { font-size:15px; line-height:1.9; }
.service-experience { gap:28px; }
.service-questions { padding-block:64px; }
.service-questions h2 { margin-bottom:24px; }
.service-questions summary { font-size:17px; }
.blog-body, .blog-list { padding-block:64px; }
.blog-body p, .blog-list p { font-size:15px; line-height:1.9; }
.blog-body > h2 + * { margin-top:12px; }
.blog-body > * + h2 { margin-top:40px; }
.blog-list article + article { margin-top:40px; }
.blog-list h2 + p { margin-top:10px; }
.related-services { padding-block:64px; gap:24px; }
.site-footer { flex-wrap:wrap; }
}

/* Work uses the site's type and palette, with diagrams drawn as labeled flows. */
.home-work { border-bottom:1px solid var(--line) }
.testimonials-section { background:var(--surface) }
.testimonials-section .section-intro { margin-bottom:48px }
.testimonials-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) }
.testimonials-grid figure { min-width:0;margin:0;padding-inline:30px;display:flex;flex-direction:column }
.testimonials-grid figure:first-child { padding-left:0 }
.testimonials-grid figure:last-child { padding-right:0 }
.testimonials-grid figure+figure { border-left:1px solid var(--line) }
.testimonials-grid blockquote { margin:0;flex:1 }
.testimonials-grid blockquote p { font-size:16px;line-height:1.85;overflow-wrap:break-word }
.testimonials-grid blockquote p:before,.testimonials-grid blockquote p:after { font-family:var(--display);font-size:24px;color:var(--accent) }
.testimonials-grid blockquote p:before { content:'“' }
.testimonials-grid blockquote p:after { content:'”' }
.testimonial-attribution { display:flex;flex-direction:column;gap:5px;margin-top:28px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;line-height:1.6 }
.testimonial-attribution strong { font-weight:650 }
.testimonial-attribution span { color:var(--muted);overflow-wrap:break-word }
.work-excerpts { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px }
.work-excerpts article { min-width:0;border-top:1px solid var(--accent);padding-top:27px;display:flex;flex-direction:column;align-items:flex-start }
.work-excerpts h3 { font-family:var(--display);font-size:clamp(25px,2.4vw,34px);font-weight:450;line-height:1.2;letter-spacing:-.02em;max-width:18ch;hyphens:auto;overflow-wrap:anywhere }
.work-excerpts p { font-size:14px;line-height:1.8;color:var(--muted);margin-top:18px;max-width:42ch }
.work-excerpts .text-link { margin-top:auto;padding-top:22px }
.work-all { margin-top:42px }
.work-opening { padding-block:72px 82px }
.work-opening h1 { font-size:clamp(55px,6vw,86px) }
.work-opening .hero-intro { max-width:62ch }
.work-index { display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:52px;padding-top:26px;border-top:1px solid var(--line) }
.work-index a { max-width:100%;font-size:13px;line-height:1.5;border-bottom:1px solid var(--accent);padding-bottom:5px;hyphens:auto;overflow-wrap:anywhere }
.work-index a:hover { color:var(--accent) }
.work-story { padding-block:92px;scroll-margin-top:26px }
.work-story:nth-of-type(odd) { background:var(--surface) }
.work-story-grid { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.9fr);gap:clamp(48px,7vw,130px);align-items:start }
.work-story-grid > * { min-width:0 }
.work-story-copy h2 { max-width:18ch;font-family:var(--display);font-size:clamp(39px,4vw,58px);font-weight:450;letter-spacing:-.025em;line-height:1.14;hyphens:auto;overflow-wrap:anywhere }
.work-story-copy p { max-width:64ch;color:var(--muted);font-size:15px;line-height:1.9;margin-top:20px }
.work-story-copy .work-lead { color:var(--fg);font-size:18px;line-height:1.65;margin-top:29px }
.work-story-copy .work-attribution { color:var(--fg);font-size:13px;margin-top:25px }
.work-story-links { display:flex;flex-wrap:wrap;gap:0 28px;margin-top:13px }
.work-story-links .text-link { line-height:1.6 }
.work-diagram { border:1px solid var(--line);padding:clamp(24px,3vw,42px);background:var(--bg) }
.work-story:nth-of-type(even) .work-diagram { background:var(--surface) }
.work-diagram figcaption { display:flex;flex-direction:column;gap:8px }
.work-diagram figcaption strong { font-size:18px;font-weight:550;line-height:1.4 }
.work-diagram figcaption small { font-size:11px;line-height:1.5;color:var(--accent);margin-top:3px }
.work-flow { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 14px;margin-top:38px;position:relative }
.work-node { border:1px solid var(--line);padding:16px 12px;min-height:76px;display:grid;place-items:center;text-align:center;font-size:13px;line-height:1.5;position:relative;overflow-wrap:anywhere }
.work-diagram-0 .work-node-0,.work-diagram-0 .work-node-1,.work-diagram-1 .work-node-0,.work-diagram-1 .work-node-1,.work-diagram-1 .work-node-2,.work-diagram-3 .work-node-0 { grid-column:1/-1;width:min(100%,260px);justify-self:center }
.work-diagram-0 .work-node-0:after,.work-diagram-1 .work-node-0:after,.work-diagram-1 .work-node-1:after { content:'↓';position:absolute;top:100%;left:50%;transform:translateX(-50%);color:var(--accent);line-height:38px }
.work-diagram-0 .work-node-1:after,.work-diagram-1 .work-node-2:after,.work-diagram-3 .work-node-0:after { content:'↙     ↘';white-space:pre;position:absolute;top:100%;left:50%;transform:translateX(-50%);color:var(--accent);line-height:38px }
.work-diagram-2 .work-flow { grid-template-columns:1fr;gap:12px }
.work-diagram-2 .work-node { min-height:64px;text-align:left;place-items:center start;padding-inline:20px;border-left:3px solid var(--accent) }
.service-proof { background:var(--surface);padding-block:75px;border-bottom:1px solid var(--line) }
.service-proof p { max-width:64ch;color:var(--muted);font-size:15px;line-height:1.85;margin-top:20px }
.service-proof-links { display:flex;flex-wrap:wrap;gap:0 30px;margin-top:8px }
.service-proof-links .text-link { line-height:1.6 }
.founder-portrait { display:block;width:min(100%,390px);height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 27%;margin-bottom:30px;border-radius:2px }
.experience-list { list-style:none;margin:8px 0 0;padding:0;border-top:1px solid var(--line) }
.experience-list li { display:grid;grid-template-columns:minmax(110px,.35fr) 1fr;gap:24px;padding-block:17px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.7 }
.experience-list strong { font-weight:650;color:var(--fg) }
.experience-list span { color:var(--muted) }
@media(max-width:850px) {
  .testimonials-section .section-intro { margin-bottom:18px }
  .testimonials-grid { display:block }
  .testimonials-grid figure { padding:25px 0;border-top:1px solid var(--line) }
  .testimonials-grid figure+figure { border-left:0 }
  .testimonial-attribution { margin-top:20px }
  .work-story-grid { grid-template-columns:minmax(0,1fr);gap:40px }
  .work-diagram { max-width:600px;width:100% }
  .work-excerpts { gap:22px }
}
@media(max-width:650px) {
  .site-header { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center }
  .main-nav { grid-column:1/-1;grid-row:2;justify-content:space-between;margin:0;gap:8px;min-width:0;flex-wrap:wrap;font-size:12px }
  .header-actions { grid-column:2;grid-row:1 }
  .brand { grid-column:1;grid-row:1 }
  .work-opening { padding-block:45px 55px }
  .work-index { margin-top:36px }
  .work-excerpts { display:block }
  .work-excerpts article { padding-block:23px;margin:0 }
  .work-excerpts h3 { max-width:23ch }
  .work-excerpts .text-link { margin-top:0;padding-top:0 }
  .work-story { padding-block:62px }
  .work-story-copy h2 { font-size:clamp(38px,11vw,52px) }
  .work-story-copy .work-lead { font-size:17px }
  .work-story-copy p { font-size:14px }
  .work-diagram { padding:24px }
  .service-proof { padding-block:60px }
  .founder-portrait { width:min(100%,350px);margin-bottom:22px }
  .founder-signature { padding-bottom:28px }
  .experience-list li { grid-template-columns:1fr;gap:3px }
}
@media(max-width:380px) {
  .main-nav { font-size:11px;gap:6px }
  .work-node { font-size:12px;padding-inline:8px }
}
.case-opening { padding-block:48px 88px }
.work-excerpts article .text-link+.text-link { margin-top:12px;padding-top:0 }
.case-opening h1 { max-width:1000px;font-size:clamp(52px,5.8vw,82px);hyphens:none;overflow-wrap:normal }
.case-opening .hero-intro { max-width:65ch }
.case-context,.case-application,.about-continuity { background:var(--surface) }
.case-split { display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(40px,8vw,140px);align-items:start }
.case-split p,.case-facts p { max-width:62ch;color:var(--muted);font-size:16px;line-height:1.9 }
.case-context h2,.case-application h2,.about-continuity h2 { margin-bottom:26px }
.case-context .case-role { border-left:1px solid var(--accent);padding-left:27px;color:var(--fg) }
.case-workflow h2 { margin-bottom:50px }
.case-workflow-grid { display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(40px,7vw,120px);align-items:start }
.case-facts>div { padding-block:25px;border-top:1px solid var(--line) }
.case-facts h3 { font-size:16px;font-weight:600;margin-bottom:10px }
.case-diagram { border:1px solid var(--line);padding:clamp(24px,3vw,42px);min-width:0 }
.case-diagram figcaption { font-size:18px;font-weight:550;line-height:1.5;margin-bottom:32px }
.case-flow { display:flex;flex-direction:column;align-items:center;gap:34px }
.case-flow>span,.case-branches span { border:1px solid var(--line);padding:16px;min-height:70px;display:grid;place-items:center;text-align:center;font-size:13px;line-height:1.5;overflow-wrap:anywhere }
.case-flow>span { position:relative;width:min(100%,300px) }
.case-flow>span:after { content:'↓';position:absolute;top:100%;left:50%;transform:translateX(-50%);color:var(--accent);line-height:34px }
.case-branches { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100% }
.case-application .text-link { margin-top:25px }
.case-page .contact-section { background:var(--bg) }
.about-continuity { border-top:1px solid var(--line) }
.service-case-links { display:flex;flex-wrap:wrap;gap:0 30px;margin-top:10px }
@media(max-width:850px) {
  .case-split,.case-workflow-grid { grid-template-columns:1fr;gap:30px }
  .case-diagram { max-width:600px;width:100% }
}
@media(max-width:650px) {
  .case-opening { padding-block:32px 60px }
  .case-opening h1 { font-size:clamp(43px,11vw,58px) }
  .case-split p,.case-facts p { font-size:15px }
  .case-workflow h2 { margin-bottom:30px }
  .case-branches { gap:10px }
  .case-flow>span,.case-branches span { font-size:12px;padding:12px }
}
