/* Ultra Taste · botanical editorial · preserved RE² identity · 2026-10-26 */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;550;600;650;700;800&display=swap');
:root {
  --plum:#211628; --plum-raised:#35263d; --orchid:#78427f; --orchid-hover:#915396;
  --sage:#b6d4b4; --sage-light:#cee4c9; --ink:#35263d; --muted:#706176;
  --paper:#faf7fc; --surface:#f1edf3; --mint:#edf4eb; --white:#ffffff;
  --line:#d5cbd9; --line-dark:#715f79; --soft-text:#d4c6d9; --focus:#78427f;
  --ease-out:cubic-bezier(.23,1,.32,1); --ease-morph:cubic-bezier(.77,0,.175,1);
  --font:'Manrope',sans-serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:112px; }
body { margin:0; font:400 16px/1.5 var(--font); color:var(--ink); background:var(--white); -webkit-font-smoothing:antialiased; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { text-wrap:balance; }
p { text-wrap:pretty; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
button,a { touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:disabled { cursor:default; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible { outline:3px solid var(--focus); outline-offset:4px; }
img { max-width:100%; height:auto; display:block; }
svg { flex-shrink:0; }
.icon { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.icon-definitions { width:0; height:0; position:absolute; overflow:hidden; }
.wrap { width:min(1280px,100%); margin-inline:auto; padding-inline:48px; }
.skip { position:fixed; left:16px; top:-80px; z-index:100; padding:16px; background:var(--white); color:var(--ink); }
.skip:focus { top:16px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.site-header,.hero,.synergy-section,.partner-section,.site-footer { --focus:var(--sage); color:var(--white); background:var(--plum); }
.site-header { position:sticky; top:0; z-index:30; border-bottom:1px solid var(--line-dark); }
.navigation { min-height:96px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand-group { display:flex; align-items:center; gap:0; flex-shrink:0; }
.brand { display:inline-flex; align-items:baseline; font-size:36px; line-height:1; font-weight:700; letter-spacing:-2px; white-space:nowrap; }
.brand>sup { font-size:18px; align-self:flex-start; margin-right:8px; line-height:1; letter-spacing:0; }
.brand>span { font-size:20px; letter-spacing:-.5px; }
.brand b { color:var(--sage); }
.header-brand { position:relative; display:block; width:192px; height:48px; letter-spacing:0; }
.header-motion-toggle { width:44px; height:44px; padding:0; display:grid; place-items:center; background:transparent; color:var(--soft-text); border:0; border-radius:4px; font-size:18px; }
nav { display:flex; align-items:center; gap:24px; font-size:14px; font-weight:550; }
nav>a { min-height:44px; display:inline-flex; align-items:center; }
nav a:not(.nav-cta)[aria-current=location] { color:var(--sage); }
.nav-cta { padding:12px 16px; gap:16px; margin-left:8px; border-radius:4px; background:var(--sage); color:var(--plum); font-weight:650; }
.nav-cta .icon { width:20px; height:20px; }
.menu-toggle { display:none; }
.eyebrow,.panel-kicker,.small-label { font-size:12px; line-height:1.5; letter-spacing:1px; text-transform:uppercase; font-weight:600; }
.eyebrow { display:flex; align-items:center; gap:12px; margin-bottom:24px; }
.signal { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--sage); flex-shrink:0; }
.hero { position:relative; }
.hero-lines { display:none; }
.hero-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.9fr); gap:80px; align-items:center; padding-block:80px 96px; }
.hero-copy { min-width:0; }
.hero .eyebrow { color:var(--soft-text); }
h1 { font-size:72px; font-weight:600; line-height:1.06; letter-spacing:-3px; margin-bottom:32px; max-width:680px; }
h1>span { color:var(--sage); }
.hero-description { font-size:18px; line-height:28px; color:var(--soft-text); max-width:520px; margin-bottom:32px; }
.hero-links { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:16px; min-height:56px; padding:12px 24px; border:1px solid transparent; border-radius:4px; font-size:16px; line-height:24px; font-weight:600; transition:transform 160ms var(--ease-out),background-color 160ms var(--ease-out),color 160ms var(--ease-out); }
.button .icon { width:20px; height:20px; }
.button-accent { background:var(--orchid); color:var(--white); }
.button-dark { background:var(--plum); color:var(--white); }
.button-outline { background:transparent; border-color:var(--soft-text); color:var(--white); }
.plain-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:14px; color:var(--soft-text); }
.plain-link>span { color:var(--sage); }
.text-link { display:inline-flex; align-items:center; gap:16px; min-height:44px; padding-block:8px; font-size:16px; line-height:24px; font-weight:600; color:var(--orchid); text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }
.text-link .icon { width:20px; height:20px; }
.inquiry-panel { --focus:var(--orchid); position:relative; min-width:0; background:var(--white); color:var(--ink); border:1px solid var(--line); border-radius:8px; padding:32px; }
.hero-inquiry { align-self:center; }
.panel-accent { display:none; }
.panel-kicker { display:block; color:var(--muted); margin-bottom:24px; }
.inquiry-panel h2 { font-size:36px; line-height:40px; letter-spacing:-1px; font-weight:600; margin-bottom:16px; }
.inquiry-panel h2 em { font-style:normal; color:var(--orchid); }
.inquiry-panel>p:not(.panel-kicker) { font-size:16px; line-height:24px; color:var(--muted); margin-bottom:24px; }
.inquiry-form label { display:block; font-size:14px; line-height:20px; font-weight:600; margin-bottom:8px; }
.inquiry-form label>span { font-size:12px; font-weight:400; color:var(--muted); }
input,textarea,select { display:block; width:100%; min-height:48px; padding:12px; margin-bottom:24px; border:1px solid #9b879f; border-radius:4px; background:var(--paper); color:var(--ink); font-size:16px; line-height:24px; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:1; }
textarea { min-height:104px; resize:vertical; }
.form-row { display:grid; grid-template-columns:1fr 1.15fr; gap:16px; }
.inquiry-form .button { width:100%; }
.form-note { font-size:12px; line-height:20px; color:var(--muted); margin:16px 0 0; }
.panel-person { display:flex; align-items:center; gap:12px; margin-top:24px; padding-top:24px; border-top:1px solid var(--line); }
.avatar { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; border-radius:50%; background:var(--surface); color:var(--orchid); font-size:14px; font-weight:650; }
.panel-person>div { display:flex; flex-direction:column; gap:4px; }
.panel-person strong { font-size:14px; line-height:20px; font-weight:600; }
.panel-person div>span { font-size:12px; line-height:20px; color:var(--muted); }
.proof-strip { background:var(--mint); }
.proof-layout { display:grid; grid-template-columns:.8fr 1.2fr 1.2fr .95fr; align-items:center; gap:32px; padding-block:32px; }
.proof-layout>p { font-size:14px; line-height:24px; color:var(--muted); margin:0; }
.proof-layout>p strong { color:var(--ink); font-weight:600; }
.proof-layout>div { display:flex; align-items:center; gap:16px; min-width:0; }
.proof-layout>div>strong { font-size:48px; line-height:1; letter-spacing:-2px; font-weight:550; color:var(--orchid); white-space:nowrap; font-variant-numeric:tabular-nums; }
.proof-layout>div>span { font-size:14px; line-height:20px; }
.proof-layout b { display:inline-block; margin-top:8px; font-size:12px; font-weight:400; color:var(--muted); }
.section { padding-block:96px; }
h2 { font-size:48px; line-height:1.1; letter-spacing:-1.5px; font-weight:550; margin-bottom:24px; }
h2 em { font-style:normal; color:var(--orchid); }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:48px; }
.section-heading h2 { margin-bottom:0; }
.section-heading .eyebrow { color:var(--muted); }
.section-heading>p { max-width:360px; font-size:16px; line-height:24px; color:var(--muted); margin:0; }
.problem-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-bottom:32px; }
.problem-tab { position:relative; display:flex; flex-direction:column; align-items:start; text-align:left; min-width:0; padding:24px; border:1px solid var(--line); border-radius:4px; background:var(--white); color:var(--ink); transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out),border-color 160ms var(--ease-out),transform 160ms var(--ease-out); }
.problem-tab>.icon { width:36px; height:36px; color:var(--orchid); margin-bottom:24px; }
.problem-tab strong { max-width:90%; font-size:20px; line-height:28px; letter-spacing:-.5px; font-weight:600; margin-bottom:12px; }
.problem-tab>span:not(.tab-arrow) { font-size:14px; line-height:20px; color:var(--muted); }
.tab-arrow { position:absolute; right:24px; top:24px; font-size:24px; }
.problem-tab[aria-selected=true] { background:var(--plum); color:var(--white); border-color:var(--plum); --focus:var(--sage); }
.problem-tab[aria-selected=true]>.icon,.problem-tab[aria-selected=true] .tab-arrow { color:var(--sage); }
.problem-tab[aria-selected=true]>span:not(.tab-arrow) { color:var(--soft-text); }
.problem-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:48px; padding:40px; background:var(--paper); border-radius:4px; }
.small-label { color:var(--muted); }
.problem-story h3 { font-size:30px; line-height:36px; letter-spacing:-.5px; font-weight:550; margin:16px 0 24px; }
.problem-story>p { font-size:16px; line-height:28px; color:var(--muted); margin-bottom:24px; }
.solution-graphic { display:flex; flex-direction:column; justify-content:center; background:var(--mint); padding:32px; border-radius:4px; }
.solution-graphic>.small-label { margin-bottom:32px; }
.flow-path { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.flow-path>div { display:flex; flex-direction:column; align-items:center; text-align:center; min-width:0; flex:1; }
.flow-path .icon { width:36px; height:36px; color:var(--orchid); margin-bottom:16px; }
.flow-path strong { font-size:14px; line-height:20px; font-weight:600; margin-bottom:8px; }
.flow-path span { font-size:12px; line-height:20px; color:var(--muted); }
.flow-path>i { font-style:normal; font-size:24px; color:var(--orchid); }
.flow-payoff { display:flex; align-items:center; gap:12px; padding-top:24px; margin-top:32px; border-top:1px solid #a2b49f; }
.flow-payoff>.icon { width:20px; height:20px; color:var(--orchid); }
.flow-payoff>p { font-size:14px; line-height:24px; margin:0; }
.synergy-section { padding-block:96px; }
.synergy-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:80px; align-items:center; }
.synergy-copy .eyebrow { color:var(--soft-text); }
.synergy-copy h2 { font-size:48px; margin-bottom:32px; }
.synergy-copy h2 em { color:var(--sage); }
.synergy-copy>p { font-size:16px; line-height:28px; color:var(--soft-text); }
.synergy-copy .section-lead { font-size:20px; line-height:28px; color:var(--white); margin-bottom:24px; }
.synergy-copy>.button { margin-top:16px; }
.reveal-word { display:inline-block; opacity:.55; transition:opacity 400ms var(--ease-out); }
.reveal-word.is-revealed { opacity:1; }
.synergy-map { position:relative; height:432px; }
.map-connections { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:var(--line-dark); stroke-width:1.5; }
.map-connections circle { stroke-dasharray:4 12; opacity:.65; }
.synergy-core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:152px; height:152px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:12px; text-align:center; border-radius:50%; border:1px solid var(--sage); background:var(--plum-raised); }
.synergy-core .icon { width:32px; height:32px; color:var(--sage); }
.synergy-core strong { font-size:18px; line-height:24px; font-weight:550; }
.synergy-node { position:absolute; display:flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:12px 16px; border:1px solid #9f8ca5; border-radius:4px; background:var(--plum-raised); color:var(--white); font-size:14px; line-height:20px; transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out); }
.synergy-node>span { font-size:12px; color:var(--soft-text); }
.synergy-node[aria-pressed=true] { background:var(--sage); border-color:var(--sage); color:var(--plum); }
.synergy-node[aria-pressed=true]>span { color:var(--plum); }
.node-audience { top:7%; left:0; }.node-offer { top:10%; right:0; }.node-experience { top:53%; right:0; }.node-learning { top:72%; left:0; }.node-systems { bottom:0; left:50%; transform:translateX(-50%); }
.synergy-detail { display:flex; gap:16px; padding:24px; margin-top:24px; min-height:144px; border:1px solid var(--line-dark); border-radius:4px; }
.detail-marker { width:8px; height:8px; border-radius:50%; margin-top:8px; background:var(--sage); flex-shrink:0; }
.synergy-detail h3 { font-size:18px; line-height:28px; font-weight:550; margin-bottom:8px; }
.synergy-detail p { font-size:14px; line-height:24px; color:var(--soft-text); margin:0; }
.map-hint { font-size:12px; line-height:20px; color:var(--soft-text); margin:16px 0 0; text-align:center; }
.brand-manifesto { padding-top:80px; margin-top:80px; position:relative; }
.brand-manifesto:before { content:""; position:absolute; top:0; left:48px; right:48px; height:1px; background:var(--line-dark); }
.brand-motion { display:grid; grid-template-columns:1.2fr 1fr; gap:24px 64px; }
.motion-heading { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:24px; font-size:12px; line-height:20px; letter-spacing:1px; color:var(--soft-text); }
.motion-toggle { display:flex; align-items:center; justify-content:center; gap:12px; min-height:44px; padding:8px 16px; border:1px solid #9f8ca5; border-radius:4px; background:transparent; color:var(--white); font-size:14px; line-height:20px; }
.motion-control-symbol { font-size:16px; }
.motion-stage { grid-column:1; grid-row:2/4; min-width:0; min-height:144px; display:flex; align-items:center; }
.motion-wordmark { --root-size:72px; --root-width:86px; --tail-size:72px; --tail-top:0px; --media-size:30px; --media-top:42px; --media-left:136px; --square-size:28px; --mark-top:0px; position:relative; display:block; width:100%; height:104px; font-weight:650; line-height:1; letter-spacing:-2px; }
.motion-root { position:absolute; left:0; top:var(--mark-top); width:var(--root-width); font-size:var(--root-size); color:var(--white); }
.motion-square { position:absolute; left:100%; top:0; margin-left:4px; font-size:var(--square-size); color:var(--sage); letter-spacing:0; opacity:1; transition:transform 320ms var(--ease-morph); }
.motion-tail { position:absolute; left:var(--root-width); top:var(--tail-top); font-size:var(--tail-size); font-weight:500; color:#d7b9dc; letter-spacing:-1.5px; white-space:nowrap; opacity:1; transform:translate(0,0); transition:opacity 200ms var(--ease-out),transform 320ms var(--ease-morph); }
.motion-media { position:absolute; left:var(--media-left); top:var(--media-top); font-size:var(--media-size); color:var(--white); letter-spacing:-1px; white-space:nowrap; opacity:0; transform:translateY(8px); transition:opacity 200ms var(--ease-out),transform 320ms var(--ease-morph); }
.motion-media>span { color:var(--sage); }
[data-brand-view][data-phase=squared] .motion-tail { opacity:0; transform:translate(-8px,-12px); }
[data-brand-view][data-phase=squared] .motion-media { opacity:1; transform:translateY(0); }
.header-brand .motion-wordmark { --root-size:30px; --root-width:36px; --tail-size:30px; --tail-top:8px; --media-size:20px; --media-top:18px; --media-left:68px; --square-size:14px; --mark-top:8px; height:48px; letter-spacing:-1px; }
.header-brand .motion-tail { letter-spacing:-.5px; }
.header-brand .motion-square { top:-2px; }
.motion-meaning { grid-column:2; align-self:end; font-size:20px; line-height:28px; color:var(--white); margin:0; }
.motion-words { grid-column:2; display:flex; flex-wrap:wrap; align-items:start; gap:8px; }
.motion-words>button { min-height:44px; padding:8px 12px; border:1px solid #9f8ca5; border-radius:4px; background:transparent; color:var(--white); font-size:14px; line-height:20px; transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out); }
.motion-words>button[aria-pressed=true] { background:var(--sage); color:var(--plum); border-color:var(--sage); }
.motion-footer { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:24px; border-top:1px solid var(--line-dark); }
.motion-footer strong { font-size:24px; line-height:32px; font-weight:500; }
.motion-footer>a { display:flex; align-items:center; gap:12px; min-height:44px; color:var(--sage); font-size:14px; }
.motion-footer .icon { width:20px; height:20px; }
.sprint-section { padding-block:128px; }
.sprint-section .section-heading>p { font-size:20px; line-height:32px; }
.sprint-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.sprint-steps article { position:relative; padding:32px; min-width:0; border:1px solid var(--line); border-radius:4px; background:var(--paper); }
.sprint-steps article:nth-child(2) { background:var(--surface); }
.sprint-steps article:nth-child(3) { background:var(--mint); }
.step-number { display:block; font-size:60px; line-height:1; font-weight:500; letter-spacing:-2px; color:var(--orchid); margin-bottom:40px; }
.step-icon { position:absolute; top:40px; right:32px; width:32px; height:32px; color:var(--muted); }
.sprint-steps h3 { font-size:24px; line-height:32px; letter-spacing:-.5px; font-weight:550; margin-bottom:16px; }
.sprint-steps p { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.sprint-bottom { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-top:40px; }
.sprint-bottom p { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.sprint-bottom strong { color:var(--ink); font-weight:500; }
.capabilities-section { padding-block:96px; background:var(--surface); }
.capability-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 64px; }
.capability { display:grid; grid-template-columns:48px minmax(0,1fr); align-content:start; gap:16px 24px; padding-block:40px; border-top:1px solid #b5a7bd; min-width:0; }
.capability>.icon { grid-column:1; grid-row:1/4; width:40px; height:40px; color:var(--orchid); }
.capability h3 { grid-column:2; font-size:24px; line-height:32px; letter-spacing:-.5px; font-weight:550; margin:0; }
.capability p { grid-column:2; font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.capability>span { grid-column:2; display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:32px; color:var(--orchid); font-size:14px; line-height:24px; font-weight:600; }
.capability>span .icon { width:20px; height:20px; }
.arc-section { padding-block:128px; }
.arc-heading { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:48px; }
.arc-heading h2 { margin-bottom:0; }
.arc-heading .eyebrow { color:var(--muted); }
.arc-heading>div:last-child { max-width:264px; }
.arc-wordmark { font-size:36px; line-height:40px; font-weight:650; letter-spacing:-1.5px; }
.arc-wordmark>span { font-weight:400; }
.arc-heading>div:last-child p { font-size:14px; line-height:24px; color:var(--muted); margin:16px 0 0; }
.arc-showcase { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:48px; align-items:center; }
.screen-button { display:block; width:100%; padding:0; border:1px solid var(--line); border-radius:4px; background:var(--plum); color:var(--white); overflow:hidden; text-align:left; }
.screen-bar { padding:16px; display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:12px; line-height:20px; }
.screen-bar strong { font-weight:500; }
.screen-button img { width:100%; height:auto; }
.arc-story h3 { font-size:24px; line-height:32px; letter-spacing:-.5px; font-weight:550; margin:16px 0 24px; }
.arc-story>p { font-size:16px; line-height:28px; color:var(--muted); margin-bottom:24px; }
.arc-features { display:flex; flex-direction:column; gap:16px; margin-bottom:32px; }
.arc-features>span { display:flex; align-items:center; gap:12px; font-size:14px; line-height:24px; }
.arc-features .icon { width:20px; height:20px; color:var(--orchid); }
.arc-story .screen-note { font-size:12px; line-height:20px; margin:16px 0 0; }
.about-section { background:var(--mint); padding-block:96px; }
.about-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:96px; align-items:center; }
.founder-graphic { position:relative; display:grid; place-items:center; min-height:336px; background:var(--plum); color:var(--white); border-radius:4px; }
.founder-monogram { font-size:96px; line-height:1; letter-spacing:-8px; font-weight:550; position:relative; }
.founder-monogram>span { position:absolute; top:-24px; right:-32px; color:var(--sage); font-size:48px; font-weight:400; letter-spacing:0; }
.founder-caption { position:absolute; bottom:32px; left:24px; right:24px; text-align:center; font-size:12px; line-height:20px; color:var(--soft-text); letter-spacing:.5px; }
.about-copy h2 { font-size:48px; margin-bottom:32px; }
.about-copy p { font-size:16px; line-height:28px; color:var(--muted); }
.about-copy .eyebrow { color:var(--muted); }
.founder-footer { display:flex; flex-direction:column; gap:8px; padding-top:24px; margin-top:24px; border-top:1px solid #a2b49f; }
.founder-footer strong { font-size:16px; line-height:24px; font-weight:600; }
.founder-footer>span { font-size:14px; line-height:24px; color:var(--muted); }
.founder-footer>a { font-size:14px; line-height:24px; color:var(--orchid); min-height:32px; }
.partner-section { padding-block:64px; }
.partner-layout { display:flex; align-items:center; gap:32px; }
.partner-layout>.icon { width:48px; height:48px; color:var(--sage); }
.partner-layout>div { flex:1; }
.partner-layout .eyebrow { color:var(--soft-text); margin-bottom:16px; }
.partner-layout h3 { font-size:30px; line-height:40px; font-weight:500; letter-spacing:-.5px; margin-bottom:16px; }
.partner-layout p:last-child { font-size:16px; line-height:28px; color:var(--soft-text); margin:0; }
.contact-section { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:80px; padding-block:128px; }
.contact-copy h2 { font-size:48px; margin-bottom:32px; }
.contact-copy .eyebrow { color:var(--muted); }
.contact-copy>p { max-width:448px; font-size:18px; line-height:28px; color:var(--muted); }
.contact-links { display:flex; flex-direction:column; gap:16px; margin-top:40px; }
.contact-links>a { display:flex; align-items:center; justify-content:space-between; gap:16px; max-width:336px; font-size:18px; line-height:28px; color:var(--orchid); min-height:44px; overflow-wrap:anywhere; }
.contact-links .icon { width:20px; height:20px; }
.footer-inquiry { background:var(--paper); }
.site-footer { padding-block:48px 24px; }
.footer-main { display:flex; justify-content:space-between; align-items:center; gap:32px; padding-bottom:40px; }
.footer-main>p { font-size:20px; line-height:28px; margin:0; color:var(--soft-text); }
.footer-main>p strong { color:var(--sage); font-weight:500; }
.footer-main>a:last-child { display:flex; align-items:center; gap:16px; min-height:44px; font-size:14px; color:var(--soft-text); }
.footer-main>a:last-child .icon { width:20px; height:20px; }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid var(--line-dark); padding-top:24px; font-size:12px; line-height:20px; color:var(--soft-text); }
.floating-inquiry { position:fixed; right:24px; bottom:24px; z-index:35; display:flex; align-items:center; gap:16px; min-height:56px; padding:12px 24px; border:1px solid var(--line-dark); border-radius:4px; background:var(--plum); color:var(--white); font-size:14px; font-weight:600; box-shadow:0 8px 24px #21162824; }
.floating-inquiry .icon { width:20px; height:20px; }
.floating-inquiry[hidden] { display:none; }
dialog { padding:0; color:var(--ink); border:1px solid var(--line); border-radius:8px; max-height:calc(100dvh - 48px); overflow:auto; overscroll-behavior:contain; box-shadow:0 24px 80px #21162855; }
dialog::backdrop { background:#211628c9; }
.inquiry-dialog { width:min(512px,calc(100% - 32px)); }
.inquiry-dialog .inquiry-panel { border:0; padding:40px 32px 32px; }
.inquiry-dialog h2 { font-size:30px; line-height:36px; padding-right:24px; margin-bottom:24px; }
.dialog-close { position:absolute; right:8px; top:8px; width:44px; height:44px; padding:0; z-index:2; display:grid; place-items:center; border:0; border-radius:4px; background:var(--surface); color:var(--ink); font-size:30px; line-height:1; }
.screen-dialog { width:min(1320px,calc(100% - 32px)); background:var(--plum); color:var(--white); }
.screen-dialog-heading { position:relative; padding:24px 64px 24px 24px; border-bottom:1px solid var(--line-dark); }
.screen-dialog-heading h2 { margin:0; font-size:16px; line-height:24px; letter-spacing:0; font-weight:500; }
.screen-dialog img { width:100%; height:auto; }
.inquiry-preview h3 { font-size:24px; line-height:32px; letter-spacing:-.5px; font-weight:550; margin-bottom:24px; }
.email-summary { white-space:pre-wrap; font-size:14px; line-height:24px; color:var(--muted); padding-block:16px; border-block:1px solid var(--line); overflow-wrap:anywhere; max-height:320px; overflow:auto; }
.inquiry-preview>.button { width:100%; }
.preview-actions { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:16px; }
.preview-actions button { min-height:44px; padding:8px 0; border:0; background:transparent; color:var(--orchid); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.copy-status { font-size:14px; line-height:24px; color:var(--orchid); margin:16px 0 0; }
.inquiry-preview[hidden],.inquiry-form[hidden] { display:none; }
.privacy-main { max-width:896px; padding-block:80px; min-height:70vh; }
.privacy-main h1 { font-size:48px; color:var(--ink); }
.privacy-main h1 em { color:var(--orchid); font-style:normal; }
.privacy-main h2 { font-size:24px; line-height:32px; letter-spacing:0; margin-top:40px; }
.privacy-main p { font-size:16px; line-height:28px; color:var(--muted); }
.privacy-main a { text-decoration:underline; text-underline-offset:4px; }
@media(hover:hover) and (pointer:fine) {
  .button-accent:hover { background:var(--orchid-hover); }
  .button-dark:hover { background:var(--orchid); }
  .button-outline:hover { background:var(--plum-raised); }
  nav>a:not(.nav-cta):hover,.plain-link:hover { color:var(--sage); }
  .nav-cta:hover { background:var(--sage-light); }
  .header-motion-toggle:hover { background:var(--plum-raised); color:var(--white); }
  .problem-tab:hover:not([aria-selected=true]) { border-color:var(--orchid); background:var(--paper); }
  .synergy-node:hover,.motion-words>button:hover { border-color:var(--sage); }
  .capability:hover>span,.text-link:hover { text-decoration:underline; }
  .screen-button:hover { outline:2px solid var(--orchid); outline-offset:4px; }
  .floating-inquiry:hover { background:var(--plum-raised); }
}
button:active,.button:active { transform:scale(.98); }
@media(max-width:1100px) {
  .wrap { padding-inline:32px; }
  .navigation { min-height:88px; }
  .header-brand { width:176px; }
  nav { gap:16px; font-size:12px; }
  .nav-cta { margin-left:0; padding:12px; }
  .hero-layout { gap:48px; }
  h1 { font-size:60px; }
  .proof-layout { grid-template-columns:1fr 1.15fr 1fr; }
  .proof-layout>p { display:none; }
  .synergy-layout { gap:48px; }
  .synergy-copy h2,.about-copy h2 { font-size:36px; line-height:40px; }
  .problem-panel { gap:32px; padding:32px; }
  .solution-graphic { padding:24px; }
  .flow-path { gap:8px; }
  .brand-motion { gap:24px 40px; }
  .motion-wordmark { --root-size:72px; --root-width:86px; --tail-size:60px; --tail-top:12px; --media-size:30px; --media-top:42px; --media-left:128px; --square-size:30px; height:88px; }
  .sprint-steps { gap:24px; }
  .sprint-steps article { padding:24px; }
  .step-icon { right:24px; top:32px; }
  .sprint-steps h3 { font-size:20px; line-height:28px; }
  .arc-showcase { gap:32px; }
  .about-layout { gap:64px; }
  .contact-section { gap:48px; }
  .partner-layout>.icon { display:none; }
}
@media(max-width:980px) {
  .navigation { gap:16px; }
  .menu-toggle { display:flex; align-items:center; gap:12px; min-height:44px; padding:8px 16px; border:1px solid #9f8ca5; border-radius:4px; background:transparent; color:var(--white); font-size:14px; }
  .menu-toggle>span { font-size:24px; line-height:1; }
  nav { display:none; position:absolute; top:100%; left:0; right:0; padding:24px 32px; background:var(--plum); border-bottom:1px solid var(--line-dark); font-size:16px; }
  nav.is-open { display:flex; flex-direction:column; align-items:stretch; gap:8px; }
  nav>a { min-height:48px; }
  .nav-cta { margin-top:8px; padding:12px 16px; justify-content:space-between; }
  .hero-layout { grid-template-columns:1fr 1fr; gap:32px; padding-block:64px; }
  h1 { font-size:48px; line-height:1.08; letter-spacing:-2px; }
  .hero .eyebrow { font-size:12px; }
  .hero-description { font-size:16px; line-height:28px; }
  .hero-links { align-items:start; gap:16px; flex-direction:column; }
  .inquiry-panel { padding:24px; }
  .inquiry-panel h2 { font-size:30px; line-height:36px; }
  .form-row { grid-template-columns:1fr; gap:0; }
  .panel-person { align-items:start; }
  .panel-person strong { font-size:12px; }
  .panel-person div>span { font-size:12px; }
  .proof-layout { grid-template-columns:1fr 1fr; gap:32px; }
  .proof-layout>div:last-child { display:none; }
  .proof-layout>div>strong { font-size:36px; }
  .section { padding-block:80px; }
  h2 { font-size:36px; line-height:40px; }
  .section-heading { gap:32px; margin-bottom:32px; }
  .section-heading>p { max-width:280px; }
  .problem-tabs { gap:16px; margin-bottom:24px; }
  .problem-tab { padding:24px 16px; }
  .problem-tab strong { font-size:18px; line-height:28px; }
  .tab-arrow { right:16px; top:24px; font-size:20px; }
  .problem-panel { grid-template-columns:1fr; gap:32px; }
  .flow-path strong { font-size:16px; line-height:24px; }
  .flow-path span { font-size:14px; line-height:24px; }
  .synergy-layout { grid-template-columns:1fr 1fr; gap:32px; }
  .synergy-section { padding-block:80px; }
  .synergy-map { height:384px; }
  .synergy-core { width:128px; height:128px; top:43%; }
  .synergy-core strong { font-size:16px; }
  .synergy-node { font-size:12px; padding:12px; gap:8px; }
  .synergy-node>span { font-size:12px; }
  .node-audience { top:4%; left:0; }.node-offer { top:4%; right:0; }.node-experience { top:68%; right:0; }.node-learning { top:68%; left:0; }.node-systems { bottom:0; }
  .synergy-detail { padding:24px 16px; min-height:192px; }
  .synergy-detail h3 { font-size:16px; line-height:24px; }
  .brand-manifesto { margin-top:64px; padding-top:64px; }
  .brand-manifesto:before { left:32px; right:32px; }
  .brand-motion { grid-template-columns:1fr; gap:24px; }
  .motion-heading,.motion-stage,.motion-meaning,.motion-words,.motion-footer { grid-column:1; grid-row:auto; }
  .motion-stage { min-height:104px; }
  .motion-meaning { font-size:20px; }
  .sprint-section,.arc-section,.contact-section { padding-block:80px; }
  .sprint-steps h3 { font-size:20px; }
  .sprint-bottom { align-items:start; }
  .sprint-bottom .button { flex-shrink:0; }
  .capabilities-section { padding-block:80px; }
  .capability-grid { gap:0 32px; }
  .capability { grid-template-columns:32px minmax(0,1fr); gap:16px; }
  .capability>.icon { width:32px; height:32px; }
  .capability h3 { font-size:20px; line-height:28px; }
  .arc-heading { gap:32px; }
  .arc-heading>div:last-child { max-width:200px; }
  .arc-showcase { grid-template-columns:1fr; }
  .arc-story { max-width:680px; }
  .arc-features { display:grid; grid-template-columns:1fr 1fr; gap:16px 24px; }
  .about-layout { grid-template-columns:.75fr 1.25fr; gap:40px; }
  .founder-graphic { min-height:280px; }
  .founder-monogram { font-size:72px; }
  .founder-caption { font-size:12px; letter-spacing:0; }
  .partner-layout { gap:32px; align-items:start; }
  .partner-layout h3 { font-size:24px; line-height:32px; }
  .contact-copy h2 { font-size:36px; line-height:40px; }
  .contact-section { gap:32px; }
  .contact-links>a { font-size:16px; }
}
@media(max-width:600px) {
  html { scroll-padding-top:96px; }
  .wrap { padding-inline:24px; }
  .navigation { min-height:80px; }
  .header-brand { width:168px; }
  .header-brand .motion-wordmark { --root-size:28px; --root-width:34px; --tail-size:24px; --tail-top:12px; }
  .header-motion-toggle { width:44px; }
  .menu-toggle { padding:8px 12px; gap:8px; }
  nav { padding:16px 24px 24px; }
  .hero-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:40px; padding-block:48px; }
  .hero-copy { display:block; }
  h1 { font-size:48px; line-height:1.08; letter-spacing:-2px; margin-bottom:24px; }
  .hero .eyebrow { font-size:12px; line-height:20px; letter-spacing:.5px; margin-bottom:24px; }
  .hero-description { font-size:18px; line-height:28px; margin-bottom:24px; }
  .hero-links { flex-direction:column; align-items:start; gap:16px; }
  .hero-links>.button { width:100%; }
  .plain-link { font-size:14px; }
  .hero-inquiry { margin:0; padding:24px; }
  .inquiry-panel h2 { font-size:30px; line-height:36px; }
  .inquiry-panel h2 em { margin:0; }
  .inquiry-panel>p:not(.panel-kicker) { font-size:16px; line-height:24px; }
  .panel-kicker { font-size:12px; line-height:20px; letter-spacing:.5px; }
  .form-row { grid-template-columns:1fr; }
  .inquiry-form label { font-size:14px; }
  .inquiry-form .button { font-size:16px; padding:12px 16px; gap:8px; }
  .panel-person strong { font-size:14px; }
  .panel-person div>span { font-size:12px; }
  .proof-layout { grid-template-columns:1fr 1fr; gap:24px; padding-block:32px; }
  .proof-layout>div { flex-direction:column; align-items:start; gap:16px; }
  .proof-layout>div>strong { font-size:48px; }
  .proof-layout>div>span { font-size:14px; line-height:24px; }
  .proof-layout b { font-size:12px; line-height:20px; }
  .section { padding-block:64px; }
  h2 { font-size:36px; line-height:40px; letter-spacing:-1px; }
  .section-heading { display:block; margin-bottom:32px; }
  .section-heading .eyebrow { font-size:12px; line-height:20px; letter-spacing:.5px; }
  .section-heading>p { max-width:none; font-size:16px; line-height:28px; margin-top:24px; }
  .problem-tabs { grid-template-columns:1fr; gap:16px; }
  .problem-tab { display:grid; grid-template-columns:32px minmax(0,1fr); gap:8px 16px; padding:24px 40px 24px 24px; }
  .problem-tab>.icon { grid-column:1; grid-row:1/3; width:32px; height:32px; margin:0; }
  .problem-tab strong { grid-column:2; font-size:18px; line-height:24px; margin:0; max-width:100%; }
  .problem-tab>span:not(.tab-arrow) { grid-column:2; font-size:14px; line-height:24px; }
  .tab-arrow { right:16px; }
  .problem-panel { padding:24px; gap:32px; }
  .problem-story h3 { font-size:24px; line-height:32px; }
  .problem-story>.text-link { font-size:14px; line-height:24px; }
  .solution-graphic { padding:24px 16px; }
  .flow-path { display:flex; flex-direction:column; gap:16px; align-items:stretch; }
  .flow-path>div { display:grid; grid-template-columns:32px minmax(0,1fr); gap:4px 16px; align-items:center; text-align:left; }
  .flow-path .icon { grid-row:1/3; width:32px; height:32px; margin:0; }
  .flow-path strong { font-size:16px; line-height:24px; margin:0; }
  .flow-path span { font-size:14px; line-height:24px; }
  .flow-path>i { transform:rotate(90deg); align-self:start; margin-left:8px; line-height:1; }
  .flow-payoff { align-items:start; }
  .flow-payoff>p { font-size:14px; line-height:24px; }
  .synergy-section { padding-block:64px; }
  .synergy-layout { grid-template-columns:minmax(0,1fr); gap:40px; }
  .synergy-copy .eyebrow { font-size:12px; line-height:20px; letter-spacing:.5px; }
  .synergy-copy h2 { font-size:36px; line-height:40px; }
  .synergy-copy .section-lead { font-size:20px; line-height:28px; }
  .synergy-copy>p { font-size:16px; line-height:28px; }
  .synergy-map { height:352px; }
  .synergy-core { top:43%; width:128px; height:128px; }
  .synergy-node { font-size:12px; padding:12px; min-height:48px; }
  .node-audience,.node-offer { top:0; }
  .node-learning,.node-experience { top:66%; }
  .synergy-detail { min-height:0; padding:24px; }
  .synergy-detail h3 { font-size:18px; line-height:28px; }
  .synergy-detail p { font-size:14px; line-height:24px; }
  .map-hint { font-size:12px; }
  .brand-manifesto { margin-top:48px; padding-top:48px; }
  .brand-manifesto:before { left:24px; right:24px; }
  .brand-motion { gap:24px; }
  .motion-heading { gap:16px; font-size:12px; letter-spacing:.5px; }
  .motion-toggle { padding:8px 12px; gap:8px; }
  .motion-wordmark { --root-size:48px; --root-width:56px; --tail-size:48px; --tail-top:0px; --media-size:24px; --media-top:36px; --media-left:112px; --square-size:24px; height:80px; }
  .motion-stage { min-height:80px; }
  .motion-meaning { font-size:18px; line-height:28px; }
  .motion-words { gap:8px; }
  .motion-words>button { font-size:12px; padding:8px 12px; min-height:44px; }
  .motion-footer { gap:16px; align-items:start; }
  .motion-footer strong { font-size:20px; line-height:28px; }
  .motion-footer>a { font-size:14px; }
  .sprint-section { padding-block:64px; }
  .sprint-section .section-heading>p { font-size:18px; line-height:28px; }
  .sprint-steps { grid-template-columns:1fr; gap:24px; }
  .sprint-steps article { padding:24px; }
  .step-number { font-size:48px; margin-bottom:32px; }
  .sprint-steps h3 { font-size:24px; line-height:32px; }
  .sprint-steps p { font-size:16px; line-height:28px; }
  .sprint-bottom { display:block; margin-top:32px; }
  .sprint-bottom p { font-size:16px; line-height:28px; }
  .sprint-bottom .button { margin-top:24px; width:100%; }
  .capabilities-section { padding-block:64px; }
  .capability-grid { grid-template-columns:1fr; gap:0; }
  .capability { grid-template-columns:40px minmax(0,1fr); padding-block:32px; gap:16px; }
  .capability>.icon { width:32px; height:32px; }
  .capability h3 { font-size:24px; line-height:32px; }
  .capability p { font-size:16px; line-height:28px; }
  .capability>span { font-size:14px; line-height:24px; }
  .arc-section { padding-block:64px; }
  .arc-heading { display:block; margin-bottom:32px; }
  .arc-heading h2 { font-size:36px; line-height:40px; }
  .arc-heading>div:last-child { display:flex; align-items:center; gap:24px; max-width:none; margin-top:32px; }
  .arc-wordmark { font-size:30px; line-height:36px; flex-shrink:0; }
  .arc-heading>div:last-child p { font-size:14px; line-height:24px; margin:0; }
  .arc-showcase { gap:32px; }
  .screen-bar { font-size:12px; padding:12px; }
  .arc-story h3 { font-size:24px; line-height:32px; }
  .arc-story>p { font-size:16px; line-height:28px; }
  .arc-features { grid-template-columns:1fr; gap:16px; }
  .arc-features>span { font-size:14px; }
  .arc-story .screen-note { font-size:12px; line-height:20px; }
  .about-section { padding-block:64px; }
  .about-layout { grid-template-columns:1fr; gap:40px; }
  .founder-graphic { min-height:192px; }
  .founder-monogram { font-size:72px; }
  .founder-monogram>span { font-size:36px; top:-16px; right:-24px; }
  .founder-caption { bottom:24px; font-size:12px; }
  .about-copy h2 { font-size:36px; line-height:40px; }
  .about-copy p { font-size:16px; line-height:28px; }
  .partner-section { padding-block:48px; }
  .partner-layout { display:block; }
  .partner-layout h3 { font-size:24px; line-height:32px; }
  .partner-layout p:last-child { font-size:16px; line-height:28px; }
  .partner-layout .button { margin-top:24px; }
  .contact-section { grid-template-columns:1fr; gap:40px; padding-block:64px; }
  .contact-copy h2 { font-size:36px; line-height:40px; }
  .contact-copy>p { font-size:18px; line-height:28px; }
  .contact-links { margin-top:24px; }
  .contact-links>a { font-size:16px; line-height:24px; }
  .footer-inquiry { padding:24px; }
  .site-footer { padding-block:40px 104px; }
  .footer-main { flex-wrap:wrap; gap:32px; padding-bottom:32px; }
  .footer-main>p { font-size:16px; line-height:24px; }
  .footer-main>a:last-child { width:100%; justify-content:space-between; font-size:14px; }
  .footer-bottom { font-size:12px; line-height:20px; gap:16px; }
  .footer-bottom>span:nth-child(2) { display:none; }
  .floating-inquiry { left:16px; right:16px; bottom:max(16px,env(safe-area-inset-bottom)); padding:12px 16px; justify-content:space-between; font-size:14px; }
  .inquiry-dialog .inquiry-panel { padding:48px 24px 24px; }
  .inquiry-dialog h2 { font-size:30px; line-height:36px; }
  .screen-dialog { width:calc(100% - 16px); }
  .screen-dialog-heading { padding:24px 64px 24px 16px; }
  .screen-dialog-heading h2 { font-size:14px; line-height:20px; }
  .privacy-main { padding-block:48px; }
  .privacy-main h1 { font-size:36px; line-height:40px; }
  .privacy-main p { font-size:16px; line-height:28px; }
}
@media(max-width:360px) {
  .wrap { padding-inline:16px; }
  .header-brand { width:148px; }
  .header-brand .motion-wordmark { --root-size:26px; --root-width:32px; --tail-size:22px; --tail-top:12px; }
  .menu-toggle { padding:8px; gap:4px; }
  .navigation { gap:8px; }
  h1 { font-size:36px; line-height:40px; }
  .hero .eyebrow { font-size:12px; }
  .hero-inquiry { padding:24px 16px; }
  .inquiry-panel h2 { font-size:30px; }
  .motion-wordmark { --root-size:48px; --root-width:56px; --tail-size:48px; --tail-top:0px; --media-size:24px; --media-top:24px; --media-left:96px; --square-size:20px; }
  .motion-footer { display:block; }
  .motion-footer>a { margin-top:16px; }
  .synergy-node { padding:12px 8px; gap:4px; }
  .arc-heading>div:last-child { gap:16px; }
  .arc-wordmark { font-size:24px; line-height:32px; }
  .brand-manifesto:before { left:16px; right:16px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*:before,*:after { animation:none!important; transition:none!important; }
  .reveal-word { opacity:1; }
}
/* Conversion and insight pass: retain the identity, make the buying journey explicit. */
.brand-group { gap:8px; }
.header-motion-toggle { border:1px solid var(--line-dark); border-radius:50%; flex-shrink:0; }
.motion-heading { justify-content:flex-start; }
.motion-heading .motion-toggle { order:-1; }
.reading-line { position:absolute; left:0; right:0; bottom:-1px; height:2px; pointer-events:none; }
.reading-line>span { display:block; width:100%; height:100%; background:var(--sage); transform-origin:left; transform:scaleX(0); }
@supports(animation-timeline:scroll()) {
  .reading-line>span { animation:reading-progress linear both; animation-timeline:scroll(root); }
}
@keyframes reading-progress { to {transform:scaleX(1)} }
.hero-copy>.eyebrow,.hero-copy>h1,.hero-copy>.hero-description,.hero-copy>.hero-links,.hero-copy>.hero-outcomes { animation:hero-enter 650ms var(--ease-out) both; }
.hero-copy>h1 { animation-delay:80ms; }
.hero-copy>.hero-description { animation-delay:160ms; }
.hero-copy>.hero-links { animation-delay:240ms; }
.hero-copy>.hero-outcomes { animation-delay:320ms; }
@keyframes hero-enter { from {opacity:0;transform:translateY(20px)} to {opacity:1;transform:translateY(0)} }
.hero-layout { gap:64px; }
.hero-description { font-size:18px; line-height:28px; }
.hero-links { gap:16px; }
.hero-links .plain-link { font-size:14px; }
.hero-outcomes { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:32px; padding-top:24px; border-top:1px solid var(--line-dark); max-width:520px; font-size:12px; line-height:20px; color:var(--soft-text); }
.hero-outcomes>span { display:flex; align-items:center; gap:8px; }
.hero-outcomes>span:before { content:""; width:4px; height:4px; background:var(--sage); border-radius:50%; }
.panel-contact { display:flex; flex-wrap:wrap; gap:8px 24px; margin-bottom:24px; }
.panel-contact>a { display:inline-flex; align-items:center; min-height:32px; gap:8px; font-size:14px; line-height:20px; color:var(--orchid); text-decoration:underline; text-underline-offset:4px; }
.panel-contact .icon { width:16px; height:16px; }
.form-row.single-field { grid-template-columns:1fr; }
.hero-inquiry h2 { font-size:30px; line-height:36px; }
.insight-section { padding-block:96px; background:var(--paper); }
.insight-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); align-items:center; gap:64px; }
.insight-copy .eyebrow { color:var(--muted); }
.insight-copy>p { color:var(--muted); font-size:16px; line-height:28px; }
.insight-copy .section-lead { font-size:20px; line-height:28px; color:var(--ink); }
.insight-lens { min-width:0; border:1px solid var(--line); background:var(--white); padding:32px; border-radius:8px; }
.insight-lens>.small-label { margin:0 0 24px; }
.insight-tabs { display:flex; gap:8px; padding-bottom:24px; }
.insight-tabs>button { flex:1; min-height:44px; border:1px solid var(--line); border-radius:4px; background:var(--paper); color:var(--ink); font-size:14px; font-weight:600; padding:8px; }
.insight-tabs>button[aria-selected=true] { background:var(--plum); color:var(--white); border-color:var(--plum); }
.lens-signal { padding:24px; background:var(--surface); border-radius:4px; }
.lens-signal>span,.lens-action>span { display:block; font-size:12px; line-height:20px; color:var(--muted); letter-spacing:.5px; margin-bottom:12px; }
.lens-signal>h3 { font-size:24px; line-height:32px; font-weight:550; letter-spacing:-.5px; margin:0; min-height:64px; }
.lens-search { display:grid; grid-template-columns:80px minmax(0,1fr); gap:24px; align-items:center; padding-block:24px; }
.lens-search>svg { width:80px; height:64px; fill:none; stroke:var(--orchid); stroke-width:2; }
.lens-search>p { margin:0; font-size:18px; line-height:28px; font-weight:550; }
.lens-action { padding:24px; border:1px solid #a2b49f; border-radius:4px; background:var(--mint); }
.lens-action>p { font-size:16px; line-height:24px; margin:0; min-height:96px; }
.lens-footnote { font-size:12px; line-height:20px; color:var(--muted); margin:16px 0 0; }
.offers-section { padding-block:96px; }
.offers-section .section-heading>p { max-width:400px; }
.offer-list { display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
.offer-row { position:relative; padding:40px 0; border-top:1px solid var(--line); min-width:0; display:grid; grid-template-columns:minmax(0,1fr) 128px; gap:24px; }
.offer-number { grid-column:1/-1; color:var(--muted); font-size:12px; line-height:20px; letter-spacing:.5px; }
.offer-row h3 { font-size:30px; line-height:36px; font-weight:550; letter-spacing:-.5px; margin-bottom:24px; }
.offer-row p { font-size:16px; line-height:28px; color:var(--muted); margin-bottom:24px; }
.offer-symbol { width:128px; height:104px; fill:none; stroke:var(--orchid); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; align-self:start; margin-top:16px; }
.offer-symbol circle { fill:var(--mint); }
.offer-link { display:flex; align-items:center; justify-content:space-between; gap:16px; color:var(--orchid); font-size:16px; font-weight:600; line-height:24px; }
.offer-link .icon { width:20px; height:20px; transition:transform 200ms var(--ease-out); }
.offer-guidance { margin-top:32px; padding:32px; background:var(--paper); display:flex; align-items:center; justify-content:space-between; gap:32px; border-radius:4px; }
.offer-guidance p { max-width:680px; margin:0; color:var(--muted); font-size:16px; line-height:28px; }
.offer-guidance strong { color:var(--ink); }
.offer-guidance .text-link { flex-shrink:0; }
.enterprise-band { background:var(--mint); padding:40px; margin-top:24px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:40px; border-radius:4px; }
.enterprise-band .eyebrow { font-size:12px; color:var(--muted); margin-bottom:16px; }
.enterprise-band h3 { font-size:30px; line-height:36px; font-weight:550; letter-spacing:-.5px; margin-bottom:16px; }
.enterprise-band p:not(.eyebrow) { max-width:640px; font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.benefits-section { padding-block:96px; background:var(--mint); }
.benefit-table { border-top:1px solid #a2b49f; }
.benefit-labels,.benefit-table article { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:64px; }
.benefit-labels { padding-block:24px; color:var(--muted); font-size:12px; line-height:20px; text-transform:uppercase; letter-spacing:.5px; }
.benefit-table article { border-top:1px solid #a2b49f; padding-block:32px; }
.benefit-table h3 { font-size:24px; line-height:32px; font-weight:550; margin:0; }
.benefit-table p { font-size:18px; line-height:28px; margin:0; color:var(--ink); }
.assurance-section { padding-block:96px; background:var(--paper); }
.assurance-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.assurance-layout>div>p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); max-width:400px; }
.assurance-layout ol { list-style:none; padding:0; margin:0; }
.assurance-layout li { display:flex; align-items:start; gap:24px; padding-bottom:32px; margin-bottom:32px; border-bottom:1px solid var(--line); }
.assurance-layout li:last-child { padding-bottom:0; margin-bottom:0; border:0; }
.assurance-layout li>span { color:var(--orchid); font-size:24px; line-height:32px; font-weight:550; }
.assurance-layout li h3 { font-size:24px; line-height:32px; font-weight:550; margin-bottom:12px; }
.assurance-layout li p { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.faq-section { padding-block:96px; }
.faq-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; }
.faq-layout>div>p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:80px; padding-block:24px; list-style:none; cursor:pointer; font-size:18px; line-height:28px; font-weight:600; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary>span { color:var(--orchid); font-size:24px; line-height:24px; transition:transform 200ms var(--ease-out); }
.faq-list details[open] summary>span { transform:rotate(45deg); }
.faq-list details>p { font-size:16px; line-height:28px; color:var(--muted); padding:0 40px 24px 0; margin:0; }
summary:focus-visible { outline:3px solid var(--focus); outline-offset:4px; }
.closing-note { padding-block:80px; background:var(--surface); }
.closing-note h2 { max-width:880px; font-size:36px; line-height:40px; }
.closing-note p:not(.eyebrow) { max-width:720px; font-size:18px; line-height:28px; color:var(--muted); margin-bottom:32px; }
.footer-offers { display:grid; grid-template-columns:repeat(3,1fr); gap:16px 40px; padding-block:0 40px; }
.footer-offers a { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:44px; padding-block:8px; border-bottom:1px solid var(--line-dark); font-size:14px; color:var(--soft-text); }
.footer-offers .icon { width:16px; height:16px; color:var(--sage); }
.app-link { margin-left:16px; }
.service-hero { padding-bottom:64px; }
.service-hero .hero-layout { align-items:start; padding-block:64px; }
.service-hero h1 { font-size:60px; line-height:1.08; letter-spacing:-2px; }
.service-hero .hero-description { max-width:600px; }
.service-hero .hero-links { align-items:start; flex-direction:column; }
.service-breadcrumb { display:inline-flex; min-height:44px; align-items:center; margin-bottom:24px; color:var(--soft-text); font-size:14px; }
.service-hero .eyebrow { font-size:12px; margin-bottom:24px; }
.service-hero .hero-inquiry { margin-top:68px; }
.conversation-free { font-size:14px; line-height:24px; color:var(--soft-text); }
.service-proof { font-size:14px; line-height:24px; color:var(--soft-text); margin:32px 0 0; max-width:480px; }
.engagement-path { --focus:var(--sage); }
.engagement-path>.small-label { color:var(--soft-text); margin-bottom:24px; }
.engagement-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.engagement-steps>div { position:relative; padding-top:24px; border-top:1px solid var(--line-dark); }
.engagement-steps>div:before { content:""; width:8px; height:8px; background:var(--sage); border-radius:50%; position:absolute; top:-4px; left:0; }
.path-number { display:block; color:var(--sage); font-size:12px; line-height:20px; margin-bottom:16px; }
.engagement-steps strong { font-size:24px; line-height:32px; font-weight:550; }
.engagement-steps p { color:var(--soft-text); font-size:16px; line-height:24px; margin:12px 0 0; }
.service-problem .section-heading h2 { max-width:880px; }
.symptom-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; }
.symptom-list p { font-size:18px; line-height:28px; color:var(--muted); margin:0; }
.symptom-list p>span { display:block; color:var(--orchid); font-size:36px; line-height:40px; margin-bottom:24px; }
.service-method { display:grid; grid-template-columns:.7fr 1.3fr; gap:64px; padding:40px; margin-top:48px; background:var(--mint); border-radius:4px; }
.service-method p { font-size:18px; line-height:28px; margin:0; }
.service-benefits { padding-block:96px; background:var(--paper); }
.benefit-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px; }
.benefit-columns article { border-top:1px solid var(--line); padding-top:24px; }
.benefit-index { font-size:14px; line-height:24px; display:block; color:var(--orchid); margin-bottom:24px; }
.benefit-columns h3 { font-size:24px; line-height:32px; font-weight:550; margin-bottom:16px; }
.benefit-columns p { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.deliverable-list { border-top:1px solid var(--line); }
.deliverable-list article { display:grid; grid-template-columns:48px 1fr 1.4fr; gap:32px; padding-block:32px; border-bottom:1px solid var(--line); }
.deliverable-list article>span { font-size:14px; line-height:24px; color:var(--orchid); }
.deliverable-list h3 { font-size:24px; line-height:32px; font-weight:550; margin:0; }
.deliverable-list p { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.scope-note { font-size:14px; line-height:24px; color:var(--muted); margin:24px 0 32px; max-width:880px; }
.service-tagline { padding-block:96px; background:var(--plum); color:var(--white); }
.service-tagline .eyebrow { color:var(--soft-text); }
.service-tagline h2 { max-width:960px; margin:0; font-size:60px; line-height:1.08; letter-spacing:-2px; }
.fit-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; }
.fit-section p { font-size:18px; line-height:28px; color:var(--muted); }
.fit-section .eyebrow { font-size:12px; }
.service-trust { padding-block:64px; background:var(--mint); }
.service-trust>.wrap { display:grid; grid-template-columns:80px minmax(0,1fr); gap:32px; align-items:start; }
.service-trust .avatar { width:80px; height:80px; font-size:24px; background:var(--plum); color:var(--sage); }
.service-trust h2 { font-size:30px; line-height:36px; letter-spacing:-.5px; margin-bottom:16px; }
.service-trust p { font-size:18px; line-height:28px; color:var(--muted); max-width:880px; margin-bottom:16px; }
.custom-apps>img { border:1px solid var(--line); border-radius:4px; }
@media(hover:hover) and (pointer:fine) {
  .offer-row:hover .offer-link { text-decoration:underline; text-underline-offset:6px; }
  .offer-row:hover .offer-link .icon { transform:translate(4px,-4px); }
  .insight-tabs>button:hover:not([aria-selected=true]) { background:var(--surface); border-color:var(--orchid); }
  .faq-list summary:hover { color:var(--orchid); }
  .panel-contact>a:hover { color:var(--plum); }
}
@media(max-width:1100px) {
  .hero-layout,.insight-layout { gap:40px; }
  .hero-outcomes { gap:12px 16px; }
  .offer-list { gap:0 32px; }
  .offer-row { grid-template-columns:minmax(0,1fr) 80px; }
  .offer-symbol { width:80px; height:80px; }
  .offer-row h3 { font-size:24px; line-height:32px; }
  .enterprise-band { grid-template-columns:1fr; gap:24px; }
  .enterprise-band .button { justify-self:start; }
  .assurance-layout,.faq-layout,.fit-section { gap:48px; }
  .service-hero h1 { font-size:48px; }
  .service-tagline h2 { font-size:48px; }
}
@media(max-width:980px) {
  .insight-layout { grid-template-columns:1fr; gap:40px; }
  .insight-copy { max-width:680px; }
  .insight-lens { max-width:680px; width:100%; }
  .offer-row { grid-template-columns:minmax(0,1fr); }
  .offer-symbol { position:absolute; right:0; top:24px; width:48px; height:48px; margin:0; }
  .offer-number { max-width:calc(100% - 56px); }
  .offer-row h3 { font-size:30px; line-height:36px; }
  .benefit-labels,.benefit-table article { gap:32px; }
  .assurance-layout,.faq-layout { grid-template-columns:1fr; gap:40px; }
  .offer-guidance { display:block; }
  .offer-guidance .text-link { margin-top:16px; }
  .footer-offers { grid-template-columns:1fr 1fr; }
  .service-hero h1 { font-size:36px; line-height:40px; letter-spacing:-1px; }
  .service-hero .hero-inquiry { margin-top:68px; }
  .symptom-list { gap:24px; }
  .service-method { grid-template-columns:1fr; gap:24px; }
  .benefit-columns { gap:32px; }
  .deliverable-list article { grid-template-columns:32px 1fr 1.2fr; gap:24px; }
}
@media(max-width:600px) {
  .brand-group { gap:4px; }
  .header-brand { width:156px; }
  .hero-layout { gap:40px; }
  .hero-outcomes { display:grid; gap:12px; margin-top:24px; }
  .hero-copy>h1 { font-size:48px; line-height:1.08; }
  .hero-inquiry h2 { font-size:30px; line-height:36px; }
  .panel-contact { display:grid; gap:8px; }
  .panel-contact>a { min-height:44px; }
  .insight-section,.offers-section,.benefits-section,.assurance-section,.faq-section,.service-benefits,.service-tagline { padding-block:64px; }
  .insight-copy h2 { font-size:36px; line-height:40px; }
  .insight-lens { padding:24px; }
  .insight-tabs { gap:4px; }
  .insight-tabs>button { font-size:12px; padding:8px 4px; }
  .lens-signal,.lens-action { padding:24px 16px; }
  .lens-signal>h3 { font-size:20px; line-height:28px; min-height:84px; }
  .lens-search { grid-template-columns:48px minmax(0,1fr); gap:16px; }
  .lens-search>svg { width:48px; height:48px; }
  .lens-search>p { font-size:16px; line-height:24px; }
  .lens-action>p { font-size:16px; line-height:28px; min-height:168px; }
  .offer-list { grid-template-columns:1fr; }
  .offer-row { padding-block:32px; }
  .offer-row h3 { font-size:30px; line-height:36px; }
  .offer-row p { max-width:480px; }
  .enterprise-band { padding:24px; margin-top:8px; }
  .enterprise-band .button { width:100%; font-size:14px; gap:12px; padding:12px 16px; }
  .enterprise-band h3 { font-size:24px; line-height:32px; }
  .offer-guidance { margin-top:24px; padding:24px; }
  .benefit-labels { display:none; }
  .benefit-table article { grid-template-columns:1fr; gap:16px; padding-block:24px; }
  .benefit-table h3 { font-size:24px; line-height:32px; }
  .benefit-table p { font-size:16px; line-height:28px; }
  .assurance-layout li { gap:16px; }
  .assurance-layout li h3 { font-size:20px; line-height:28px; }
  .faq-list summary { font-size:16px; line-height:24px; gap:16px; }
  .faq-list details>p { padding-right:16px; }
  .closing-note { padding-block:64px; }
  .closing-note h2 { font-size:30px; line-height:36px; }
  .closing-note p:not(.eyebrow) { font-size:16px; line-height:28px; }
  .footer-offers { grid-template-columns:1fr; gap:8px; padding-bottom:32px; }
  .app-link { margin-left:0; }
  .service-hero { padding-bottom:48px; }
  .service-hero .hero-layout { grid-template-columns:1fr; padding-block:32px 40px; }
  .service-breadcrumb { margin-bottom:24px; }
  .service-hero .hero-inquiry { margin-top:0; }
  .service-hero .hero-copy>h1 { font-size:36px; line-height:40px; letter-spacing:-1px; }
  .service-proof { margin-top:24px; }
  .service-hero .hero-links { gap:16px; }
  .engagement-steps { grid-template-columns:1fr; gap:24px; }
  .engagement-steps>div { padding-top:16px; padding-left:32px; }
  .engagement-steps>div:before { top:24px; }
  .engagement-steps strong { font-size:24px; line-height:32px; }
  .path-number { margin-bottom:8px; }
  .symptom-list { grid-template-columns:1fr; gap:24px; }
  .symptom-list p { display:grid; grid-template-columns:24px 1fr; gap:16px; font-size:16px; line-height:28px; }
  .symptom-list p>span { font-size:24px; line-height:28px; margin:0; }
  .service-method { margin-top:32px; padding:24px; }
  .service-method p { font-size:16px; line-height:28px; }
  .benefit-columns { grid-template-columns:1fr; gap:32px; }
  .benefit-index { margin-bottom:16px; }
  .deliverable-list article { grid-template-columns:24px 1fr; gap:16px; padding-block:24px; }
  .deliverable-list h3 { font-size:20px; line-height:28px; }
  .deliverable-list p { grid-column:2; }
  .service-tagline h2 { font-size:36px; line-height:40px; letter-spacing:-1px; }
  .fit-section { grid-template-columns:1fr; gap:24px; }
  .fit-section p { font-size:16px; line-height:28px; }
  .service-trust { padding-block:48px; }
  .service-trust>.wrap { grid-template-columns:48px 1fr; gap:16px; }
  .service-trust .avatar { width:48px; height:48px; font-size:16px; }
  .service-trust h2 { font-size:24px; line-height:32px; }
  .service-trust p { font-size:16px; line-height:28px; }
}
@media(max-width:360px) {
  .header-brand { width:136px; }
  .hero-copy>h1 { font-size:36px; line-height:40px; }
  .insight-lens { padding:16px; }
  .insight-tabs>button { font-size:12px; }
  .lens-action>p { min-height:196px; }
  .offer-number { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .hero-copy>.eyebrow,.hero-copy>h1,.hero-copy>.hero-description,.hero-copy>.hero-links,.hero-copy>.hero-outcomes,.reading-line>span { animation:none; }
}
@media(max-width:600px) {
  .hero-copy>h1 { font-size:36px; line-height:40px; letter-spacing:-1px; }
  .hero-outcomes { display:none; }
}
.hero-outcomes { font-size:14px; line-height:24px; gap:16px 24px; }
body:not(.offer-page) .hero-copy { align-self:start; padding-top:32px; }
.hero-range { font-size:16px; line-height:24px; color:var(--white); max-width:480px; margin-bottom:32px; }
@media(max-width:600px) {
  body:not(.offer-page) .hero-copy { padding-top:0; }
  .hero-range { font-size:16px; line-height:24px; margin-bottom:24px; }
}
/* Shared navigation: stable page identity and direct access to every offer. */
.navigation-global { min-height:96px; gap:24px; }
.brand-identity { display:flex; flex-direction:column; gap:0; }
.brand-identity .header-brand { height:40px; }
.brand-identity .motion-wordmark { height:40px; }
.current-location { color:var(--soft-text); font-size:12px; line-height:20px; letter-spacing:.2px; padding-left:1px; }
.site-menu-toggle,.solutions-trigger,.breadcrumb-solutions { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:8px 12px; background:transparent; border:1px solid var(--line-dark); border-radius:4px; color:var(--white); font-size:14px; line-height:24px; font-weight:550; }
.site-menu-toggle { flex-shrink:0; }
.menu-glyph { display:block; position:relative; width:18px; height:16px; }
.menu-glyph>i { display:block; position:absolute; left:0; width:18px; height:1.5px; background:currentColor; transition:transform 200ms var(--ease-out),opacity 160ms var(--ease-out); }
.menu-glyph>i:nth-child(1) { top:1px; }.menu-glyph>i:nth-child(2) { top:7px; }.menu-glyph>i:nth-child(3) { top:13px; }
.site-menu-toggle[aria-expanded=true] i:nth-child(1) { transform:translateY(6px) rotate(45deg); }
.site-menu-toggle[aria-expanded=true] i:nth-child(2) { opacity:0; }
.site-menu-toggle[aria-expanded=true] i:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
.header-shortcuts { display:flex; align-items:center; position:static; padding:0; margin-left:auto; gap:24px; border:0; background:transparent; font-size:14px; }
.header-shortcuts>a { min-height:44px; display:inline-flex; align-items:center; }
.header-shortcuts>a[aria-current=page] { color:var(--sage); }
.solutions-trigger { padding:8px 0; border:0; }
.header-conversation { display:inline-flex; align-items:center; min-height:44px; font-size:14px; line-height:20px; margin:0; flex-shrink:0; }
.site-menu { --focus:var(--orchid); position:fixed; inset:112px 24px auto; margin:0 auto; width:min(1184px,calc(100% - 48px)); max-height:calc(100dvh - 136px); background:var(--white); color:var(--ink); border-radius:8px; padding:32px; }
body:has(.site-menu[open]),body:has(.inquiry-dialog[open]) { overflow:hidden; }
.site-menu-heading { display:flex; justify-content:space-between; align-items:start; gap:24px; margin-bottom:32px; }
.site-menu-heading .small-label { margin-bottom:12px; color:var(--muted); }
.site-menu-heading h2 { font-size:30px; line-height:36px; letter-spacing:-.5px; margin:0; }
.site-menu-close { display:grid; place-items:center; flex-shrink:0; width:44px; height:44px; background:var(--surface); color:var(--ink); border:0; border-radius:4px; font-size:30px; line-height:1; }
.site-menu-layout { display:grid; grid-template-columns:.65fr 1.7fr; gap:40px; }
.menu-overview { padding-right:32px; border-right:1px solid var(--line); }
.menu-overview>.small-label { margin-top:24px; margin-bottom:12px; }
.menu-home { display:flex; justify-content:space-between; align-items:center; gap:16px; font-size:20px; line-height:28px; font-weight:600; min-height:44px; color:var(--orchid); }
.menu-home .icon { width:20px; height:20px; }
.menu-home[aria-current=page] { text-decoration:underline; text-underline-offset:6px; }
.menu-overview>p:not(.small-label) { font-size:14px; line-height:24px; color:var(--muted); margin:0; }
.menu-local { margin-top:32px; }
.menu-local>.small-label { margin-bottom:12px; }
.menu-local>a { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:44px; padding:8px 0; font-size:14px; line-height:20px; }
.menu-local>a .icon { width:16px; height:16px; color:var(--orchid); }
.menu-offer-area>.small-label { margin-bottom:16px; }
.menu-offer-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.menu-offer { position:relative; display:flex; flex-direction:column; justify-content:center; min-height:112px; padding:16px 40px 16px 16px; gap:8px; border:1px solid var(--line); border-radius:4px; background:var(--paper); transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out); }
.menu-offer-title { font-size:16px; line-height:24px; font-weight:650; }
.menu-offer-description { font-size:14px; line-height:20px; color:var(--muted); }
.menu-offer>.icon { position:absolute; right:16px; top:20px; width:16px; height:16px; color:var(--orchid); }
.menu-offer[aria-current=page] { background:var(--plum); color:var(--white); border-color:var(--plum); --focus:var(--sage); }
.menu-offer[aria-current=page]>.icon { color:var(--sage); }
.menu-offer[aria-current=page] .menu-offer-description { color:var(--soft-text); }
.current-page-badge { color:var(--sage); font-size:12px; line-height:16px; font-weight:600; }
.site-menu-footer { display:flex; align-items:center; gap:24px; margin-top:32px; padding-top:24px; border-top:1px solid var(--line); }
.site-menu-footer>p { font-size:14px; line-height:24px; margin:0 auto 0 0; color:var(--muted); }
.site-menu-footer strong { color:var(--ink); font-weight:550; }
.site-menu-footer .button { min-height:48px; font-size:16px; padding:8px 16px; }
.menu-motion-preference { display:flex; flex-direction:column; gap:4px; align-items:start; padding:8px; border:0; border-radius:4px; color:var(--muted); background:transparent; min-height:44px; font-size:12px; line-height:16px; }
.menu-motion-preference [data-motion-control] { font-size:14px; line-height:20px; color:var(--orchid); text-decoration:underline; text-underline-offset:4px; }
.breadcrumb-trail { display:flex; flex-wrap:wrap; align-items:center; gap:8px; position:static; padding:0; margin:0 0 24px; border:0; background:transparent; font-size:14px; line-height:24px; color:var(--soft-text); }
.breadcrumb-trail>a,.breadcrumb-trail>button { min-height:44px; }
.breadcrumb-trail>a { text-decoration:underline; text-underline-offset:4px; }
.breadcrumb-solutions { border:0; padding:8px 0; color:var(--soft-text); text-decoration:underline; text-underline-offset:4px; }
.breadcrumb-trail>[aria-current=page] { color:var(--sage); font-weight:600; }
.service-hero .hero-copy>.eyebrow { font-size:16px; line-height:24px; letter-spacing:.5px; }
.closing-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr); gap:64px; align-items:center; }
.closing-note .closing-copy h2 { font-size:36px; line-height:40px; }
.followup-visual { margin:0; padding:32px; background:var(--plum); color:var(--white); border-radius:8px; }
.followup-visual figcaption { display:flex; align-items:center; gap:12px; font-size:16px; line-height:24px; font-weight:600; margin-bottom:32px; }
.followup-visual ol { padding:0; margin:0; list-style:none; }
.followup-visual li { position:relative; display:flex; gap:16px; padding-bottom:32px; }
.followup-visual li:not(:last-child):before { content:""; position:absolute; top:36px; bottom:0; left:17px; width:1px; background:var(--sage); }
.followup-visual li:last-child { padding-bottom:0; }
.followup-visual li>span { display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--sage); border-radius:50%; flex-shrink:0; font-size:12px; line-height:20px; color:var(--sage); }
.followup-visual strong { display:block; font-size:16px; line-height:24px; font-weight:600; }
.closing-note .followup-visual li p { font-size:14px; line-height:24px; margin:8px 0 0; color:var(--soft-text); }
.closing-note .followup-visual .visual-note { font-size:12px; line-height:20px; color:var(--soft-text); margin:24px 0 0; padding-top:24px; border-top:1px solid var(--line-dark); }
.benefit-table h3>.icon { width:32px; height:32px; display:block; margin-bottom:16px; color:var(--orchid); }
.service-tagline-layout { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,.7fr); gap:64px; align-items:center; }
.service-tagline-layout h2 { font-size:48px; line-height:1.1; letter-spacing:-1.5px; }
.offer-illustration { margin:0; color:var(--sage); }
.offer-illustration svg { width:100%; max-width:280px; height:auto; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.offer-illustration figcaption { font-size:14px; line-height:24px; color:var(--soft-text); text-align:center; margin-top:16px; }
@media(hover:hover) and (pointer:fine) {
 .site-menu-toggle:hover,.solutions-trigger:hover { background:var(--plum-raised); }
 .menu-offer:hover:not([aria-current=page]) { border-color:var(--orchid); background:var(--surface); }
 .menu-local>a:hover { color:var(--orchid); }
 .site-menu-close:hover { background:var(--line); }
}
@media(max-width:1100px) {
 .header-shortcuts { display:none; }
 .navigation-global { min-height:88px; justify-content:space-between; }
 .site-menu { top:104px; max-height:calc(100dvh - 128px); }
 .site-menu-layout { grid-template-columns:.7fr 1.3fr; gap:24px; }
 .menu-overview { padding-right:24px; }
 .menu-offer-grid { grid-template-columns:1fr; }
 .menu-offer { min-height:88px; }
 .closing-layout,.service-tagline-layout { gap:40px; }
 .service-tagline-layout h2 { font-size:36px; line-height:40px; }
}
@media(max-width:600px) {
 .navigation-global { min-height:88px; gap:8px; }
 .navigation-global .brand-group { gap:8px; }
 .site-menu-toggle { padding:8px; gap:8px; }
 .brand-identity .header-brand { width:140px; height:36px; }
 .brand-identity .motion-wordmark { --root-size:26px; --root-width:32px; --tail-size:22px; --tail-top:12px; height:36px; }
 .header-conversation { font-size:14px; padding:12px; gap:0; }
 .header-conversation .icon { display:none; }
 .current-location { font-size:12px; line-height:20px; }
 .site-menu { inset:100px 12px auto; width:calc(100% - 24px); max-height:calc(100dvh - 112px); padding:24px; }
 .site-menu-heading { gap:16px; margin-bottom:24px; }
 .site-menu-heading h2 { font-size:24px; line-height:32px; }
 .site-menu-layout { grid-template-columns:1fr; gap:24px; }
 .menu-overview { padding:0 0 24px; border:0; border-bottom:1px solid var(--line); }
 .menu-overview>.small-label,.menu-overview>p:not(.small-label),.menu-local { display:none; }
 .menu-home { font-size:18px; line-height:28px; }
 .menu-offer-grid { gap:8px; }
 .menu-offer { padding:16px 40px 16px 16px; min-height:88px; }
 .site-menu-footer { flex-wrap:wrap; gap:16px; margin-top:24px; padding-top:24px; }
 .site-menu-footer>p { flex-basis:100%; }
 .site-menu-footer .button { flex:1; }
 .breadcrumb-trail { gap:8px; font-size:12px; line-height:20px; margin-bottom:16px; }
 .breadcrumb-solutions { font-size:12px; line-height:20px; }
 .service-hero .hero-copy>.eyebrow { font-size:14px; line-height:24px; }
 .closing-layout { grid-template-columns:1fr; gap:40px; }
 .closing-note .closing-copy h2 { font-size:30px; line-height:36px; }
 .followup-visual { padding:24px; }
 .service-tagline-layout { grid-template-columns:1fr; gap:32px; }
 .offer-illustration { max-width:200px; justify-self:center; }
}
@media(max-width:360px) {
 .menu-button-label { display:none; }
 .site-menu-toggle { width:44px; padding:8px; }
 .header-conversation { font-size:12px; padding:12px 8px; }
 .brand-identity .header-brand { width:136px; }
 .site-menu { padding:16px; }
}
/* Work examples are real local interactions; sample data stays visibly labeled. */
.menu-work { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:44px; margin-top:12px; color:var(--orchid); font-size:16px; line-height:24px; font-weight:600; }
.menu-work .icon { width:20px; height:20px; }
.menu-work[aria-current=page] { text-decoration:underline; text-underline-offset:6px; }
.wordpress-band { display:grid; grid-template-columns:1.5fr .7fr; gap:64px; align-items:center; padding:40px; margin-top:24px; border:1px solid var(--line); background:var(--paper); border-radius:4px; }
.wordpress-band .eyebrow { color:var(--orchid); }
.wordpress-band h3 { font-size:30px; line-height:36px; font-weight:550; letter-spacing:-.5px; margin-bottom:24px; }
.wordpress-band p:not(.eyebrow) { font-size:16px; line-height:28px; color:var(--muted); }
.wordpress-connection { display:flex; flex-direction:column; align-items:center; gap:12px; }
.wordpress-connection>span { width:100%; padding:16px; border:1px solid var(--line); border-radius:4px; background:var(--white); text-align:center; font-size:16px; line-height:24px; font-weight:550; }
.wordpress-connection>span:nth-of-type(2) { background:var(--plum); color:var(--sage); border-color:var(--plum); }
.wordpress-connection>i { color:var(--orchid); font-size:24px; font-style:normal; line-height:24px; }
.work-intro { padding-block:80px; }
.work-intro h1 { max-width:800px; }
.work-intro-copy { font-size:20px; line-height:32px; color:var(--soft-text); max-width:720px; margin-bottom:32px; }
.work-jump-links { display:flex; align-items:center; gap:32px; flex-wrap:wrap; }
.work-jump-links>a:not(.button) { display:inline-flex; align-items:center; min-height:44px; color:var(--soft-text); font-size:16px; line-height:24px; text-decoration:underline; text-underline-offset:6px; }
.built-work-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.project-image { display:block; aspect-ratio:16/10; background:var(--plum); border:1px solid var(--line); border-radius:4px; overflow:hidden; }
.project-image img { width:100%; height:100%; object-fit:cover; object-position:top; }
.project-type { font-size:12px; line-height:20px; color:var(--muted); letter-spacing:.5px; margin:24px 0 16px; }
.built-work-grid h3 { font-size:30px; line-height:36px; font-weight:550; letter-spacing:-.5px; margin-bottom:16px; }
.built-work-grid article>p:not(.project-type) { font-size:16px; line-height:28px; color:var(--muted); }
.concept-index { padding-block:80px; background:var(--mint); }
.concept-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.concept-links>a { position:relative; padding:32px; border:1px solid #a2b49f; background:var(--white); border-radius:4px; }
.concept-links>a>span { color:var(--muted); font-size:12px; line-height:20px; letter-spacing:.5px; }
.concept-links h3 { font-size:24px; line-height:32px; font-weight:550; margin:24px 0 16px; }
.concept-links p { font-size:16px; line-height:24px; color:var(--muted); margin:0 0 32px; }
.concept-links .icon { width:24px; height:24px; color:var(--orchid); }
.concept-case { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:80px; align-items:center; padding-block:96px; }
.concept-brief>p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); }
.concept-brief dl { margin:32px 0; }
.concept-brief dl>div { border-top:1px solid var(--line); padding-block:16px; }
.concept-brief dt { font-size:14px; line-height:24px; font-weight:650; margin-bottom:8px; }
.concept-brief dd { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.concept-case-alt { background:var(--paper); }
.demo-panel { padding:32px; border:1px solid var(--line); border-radius:8px; background:var(--white); min-width:0; }
.demo-label { font-size:12px; line-height:20px; letter-spacing:.5px; color:var(--muted); margin-bottom:24px; }
.demo-panel h3 { font-size:30px; line-height:36px; font-weight:550; letter-spacing:-.5px; margin-bottom:24px; }
.demo-panel>label:not(.demo-check) { display:block; font-size:14px; line-height:24px; font-weight:600; margin-bottom:8px; }
.demo-panel label output { float:right; color:var(--orchid); font-variant-numeric:tabular-nums; }
.demo-panel input[type=range] { padding:0; margin:16px 0 24px; min-height:32px; border:0; accent-color:var(--orchid); background:transparent; }
.demo-check { display:flex; align-items:start; gap:12px; padding:12px 0; min-height:44px; font-size:16px; line-height:24px; cursor:pointer; }
.demo-check input[type=checkbox] { display:inline-block; width:20px; height:20px; min-height:20px; padding:0; margin:2px 0 0; flex-shrink:0; accent-color:var(--orchid); }
.demo-panel>.button { width:100%; margin-top:16px; }
.response-plan,.onboarding-path { margin-top:24px; padding:24px; background:var(--mint); border-radius:4px; }
.response-plan>p,.onboarding-path>p { font-size:16px; line-height:24px; margin:0; }
.response-plan ol { margin:0; padding:0; list-style:none; }
.response-plan li { display:grid; grid-template-columns:80px minmax(0,1fr); gap:16px; padding-block:16px; border-bottom:1px solid #a2b49f; }
.response-plan li:first-child { padding-top:0; }
.response-plan li:last-child { padding-bottom:0; border:0; }
.response-plan li>span { font-size:12px; line-height:24px; color:var(--orchid); font-variant-numeric:tabular-nums; }
.response-plan li strong { display:block; font-size:16px; line-height:24px; font-weight:600; }
.response-plan li p { font-size:14px; line-height:24px; color:var(--muted); margin:8px 0 0; }
.demo-panel .demo-note { font-size:12px; line-height:20px; margin:24px 0 0; color:var(--muted); }
.demo-tabs { display:flex; gap:8px; margin-bottom:24px; }
.demo-tabs>button { min-height:44px; flex:1; padding:8px 12px; font-size:14px; line-height:24px; background:var(--paper); border:1px solid var(--line); border-radius:4px; color:var(--ink); }
.demo-tabs>button[aria-selected=true] { background:var(--plum); border-color:var(--plum); color:var(--white); }
.journey-bars { display:flex; flex-direction:column; gap:24px; min-height:192px; justify-content:center; }
.journey-bar { display:grid; grid-template-columns:120px minmax(0,1fr) 24px; gap:16px; align-items:center; font-size:14px; line-height:20px; }
.journey-bar>strong { text-align:right; font-size:16px; font-weight:550; font-variant-numeric:tabular-nums; }
.journey-track { height:12px; background:var(--surface); border-radius:2px; overflow:hidden; }
.journey-track>i { display:block; width:100%; height:100%; background:var(--orchid); transform-origin:left; transition:transform 300ms var(--ease-out); }
.journey-insight { font-size:16px; line-height:28px; color:var(--ink); background:var(--mint); padding:24px; border-radius:4px; margin:24px 0; }
.sample-journeys { border-block:1px solid var(--line); }
.sample-journeys summary { cursor:pointer; min-height:48px; padding:12px 0; font-size:14px; line-height:24px; color:var(--orchid); }
.sample-journeys ol { padding-left:24px; font-size:14px; line-height:28px; color:var(--muted); margin:8px 0 24px; }
.onboarding-path .onboarding-progress { color:var(--orchid); font-size:16px; line-height:24px; font-weight:600; margin-bottom:16px; }
.onboarding-path .demo-check { border-top:1px solid #a2b49f; padding-block:16px; }
.work-closing { padding-block:80px; background:var(--surface); }
.work-closing p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); max-width:680px; }
@media(hover:hover) and (pointer:fine) {
 .concept-links>a:hover { border-color:var(--orchid); }
 .project-image:hover { outline:2px solid var(--orchid); outline-offset:4px; }
 .menu-work:hover { text-decoration:underline; text-underline-offset:6px; }
}
@media(max-width:1100px) {
 .concept-case { gap:48px; }
 .wordpress-band { gap:40px; }
 .concept-links>a { padding:24px; }
 .built-work-grid { gap:32px; }
}
@media(max-width:980px) {
 .concept-case { grid-template-columns:1fr; gap:32px; }
 .concept-brief { max-width:680px; }
 .demo-panel { max-width:680px; width:100%; }
 .wordpress-band { grid-template-columns:1.3fr 1fr; gap:32px; padding:32px; }
}
@media(max-width:600px) {
 .wordpress-band { grid-template-columns:1fr; padding:24px; gap:32px; }
 .wordpress-band h3 { font-size:24px; line-height:32px; }
 .wordpress-connection { width:100%; max-width:400px; justify-self:center; }
 .work-intro { padding-block:48px; }
 .work-intro h1 { font-size:36px; line-height:40px; letter-spacing:-1px; }
 .work-intro-copy { font-size:18px; line-height:28px; }
 .work-jump-links { gap:16px; align-items:start; flex-direction:column; }
 .work-jump-links .button { width:100%; }
 .built-work-grid { grid-template-columns:1fr; gap:40px; }
 .built-work-grid h3 { font-size:24px; line-height:32px; }
 .concept-index,.concept-case,.work-closing { padding-block:64px; }
 .concept-links { grid-template-columns:1fr; gap:16px; }
 .concept-links h3 { margin-top:16px; }
 .concept-links p { margin-bottom:24px; }
 .concept-brief>p:not(.eyebrow) { font-size:16px; line-height:28px; }
 .demo-panel { padding:24px; }
 .demo-panel h3 { font-size:24px; line-height:32px; }
 .response-plan,.onboarding-path { padding:24px 16px; }
 .response-plan li { grid-template-columns:1fr; gap:8px; }
 .demo-panel>.button { padding:12px 16px; font-size:14px; }
 .journey-bar { grid-template-columns:88px minmax(0,1fr) 16px; gap:12px; font-size:12px; line-height:20px; }
 .journey-insight { padding:24px 16px; }
 .demo-tabs>button { font-size:14px; padding:8px; }
 .work-closing p:not(.eyebrow) { font-size:16px; line-height:28px; }
}
@media(max-width:360px) {
 .demo-panel { padding:16px; }
 .demo-panel>.button { font-size:14px; padding:12px; }
}
html { scrollbar-gutter:stable; }
.work-intro-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr); gap:64px; align-items:center; }
.work-intro-layout h1 { font-size:60px; line-height:1.08; letter-spacing:-2px; }
.work-intro-layout .work-intro-copy { font-size:18px; line-height:28px; }
.work-intro-layout .work-jump-links { gap:16px 24px; }
.work-preview { background:var(--plum-raised); border:1px solid var(--line-dark); border-radius:8px; padding:32px; }
.work-preview>.small-label { color:var(--soft-text); margin-bottom:24px; }
.work-preview>a { position:relative; display:flex; align-items:center; gap:16px; padding-block:24px; min-height:96px; border-top:1px solid var(--line-dark); }
.work-preview>a>span { display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--sage); color:var(--sage); border-radius:50%; flex-shrink:0; font-size:12px; line-height:20px; }
.work-preview strong { display:block; font-size:24px; line-height:32px; font-weight:550; }
.work-preview small { display:block; color:var(--soft-text); font-size:14px; line-height:24px; margin-top:8px; }
.work-preview .icon { margin-left:auto; width:20px; height:20px; color:var(--sage); }
@media(max-width:980px) {
 .work-intro-layout { grid-template-columns:1fr; gap:40px; }
 .work-intro-layout h1 { font-size:48px; line-height:1.08; }
 .work-preview { max-width:680px; }
}
@media(max-width:600px) {
 .work-intro-layout h1 { font-size:36px; line-height:40px; letter-spacing:-1px; }
 .work-preview { padding:24px; }
 .work-preview>a { gap:16px; }
 .work-preview strong { font-size:20px; line-height:28px; }
}
/* Final editorial hierarchy and menu behavior. */
.site-menu { padding:0; overflow:hidden; }
.site-menu[open] { display:flex; flex-direction:column; }
.site-menu-heading { flex-shrink:0; margin:0; padding:24px 32px; border-bottom:1px solid var(--line); background:var(--white); z-index:2; }
.site-menu-scroll { min-height:0; overflow:auto; overscroll-behavior:contain; padding:24px 32px 32px; }
.site-menu-close { position:relative; }
.current-location { color:var(--sage); font-size:12px; line-height:20px; }
.location-prefix { color:var(--soft-text); }
.proof-title { font-size:24px; line-height:28px; font-weight:550; letter-spacing:-.5px; color:var(--ink); margin:0; }
.proof-title strong { font-weight:700; }
.proof-layout { grid-template-columns:.9fr 1.15fr 1.15fr .9fr; }
.footer-main>p { font-size:36px; line-height:40px; letter-spacing:-1px; font-weight:650; max-width:480px; }
.footer-main>p strong { font-weight:650; }
.hero-copy>.eyebrow,.hero-copy>h1,.hero-copy>.hero-description,.hero-copy>.hero-links,.hero-copy>.hero-outcomes { animation-duration:900ms; }
@keyframes hero-enter { from {opacity:0;transform:translateY(32px)} to {opacity:1;transform:translateY(0)} }
.connection-signal { position:absolute; top:0; left:0; width:10px; height:10px; border-radius:50%; background:var(--sage-light); box-shadow:0 0 0 6px #b6d4b424; pointer-events:none; opacity:0; z-index:1; }
.team-section { padding-block:96px; background:var(--paper); }
.team-section .section-heading { align-items:start; }
.team-section .section-heading>p { max-width:400px; }
.agent-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.agent-tab { display:flex; flex-direction:column; align-items:start; text-align:left; min-width:0; padding:12px 12px 16px; border:1px solid var(--line); border-radius:8px; background:var(--white); color:var(--ink); transition:transform 180ms var(--ease-out),border-color 180ms var(--ease-out),background-color 180ms var(--ease-out); }
.agent-tab img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:4px; margin-bottom:16px; }
.agent-name { display:block; font-size:20px; line-height:28px; font-weight:650; margin-bottom:8px; }
.agent-role { display:block; font-size:14px; line-height:24px; color:var(--muted); }
.agent-tab[aria-selected=true] { border-color:var(--orchid); background:var(--surface); box-shadow:inset 0 -3px var(--orchid); }
.agent-role-panel { margin-top:24px; padding:40px; background:var(--white); border:1px solid var(--line); border-radius:8px; display:grid; grid-template-columns:1.1fr 1fr; gap:64px; }
.agent-role-panel .small-label { margin-bottom:16px; }
.agent-role-panel h3 { font-size:24px; line-height:32px; font-weight:550; margin-bottom:32px; }
.agent-role-panel blockquote { font-size:20px; line-height:32px; margin:0; color:var(--orchid); }
.agent-role-panel blockquote:before { content:'“'; }.agent-role-panel blockquote:after { content:'”'; }
.agent-work>div+div { margin-top:24px; padding-top:24px; border-top:1px solid var(--line); }
.agent-work h4 { font-size:16px; line-height:24px; font-weight:650; margin:0 0 12px; }
.agent-work p { font-size:16px; line-height:28px; color:var(--muted); margin:0; }
.company-intro { display:grid; grid-template-columns:1.1fr 1fr; gap:64px; margin-top:64px; align-items:center; }
.company-intro h3 { font-size:36px; line-height:40px; letter-spacing:-1px; font-weight:550; margin-bottom:24px; }
.company-intro p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); }
.company-intro .text-link { display:flex; width:fit-content; margin-top:16px; }
.company-flow { display:grid; grid-template-columns:1fr 1fr; gap:24px; list-style:none; padding:0; margin:0; }
.company-flow li { border-top:1px solid var(--line); padding-top:24px; }
.company-flow li>span { display:block; font-size:14px; line-height:24px; color:var(--orchid); margin-bottom:16px; }
.company-flow strong { display:block; font-size:20px; line-height:28px; font-weight:550; }
.company-intro .company-flow p { font-size:14px; line-height:24px; margin:12px 0 0; }
.agent-service-bridge { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.agent-service-bridge p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); }
.agent-mini-roster { display:flex; align-items:center; gap:16px; }
.agent-mini-roster>img { width:calc((100% - 32px)/3); height:auto; border-radius:8px; }
@media(hover:hover) and (pointer:fine) {
 .agent-tab:hover { transform:translateY(-4px); border-color:var(--orchid); }
}
@media(max-width:1100px) {
 .proof-layout { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
 .proof-title { grid-column:1/-1; font-size:24px; line-height:28px; }
 .proof-title br { display:none; }
 .proof-layout>div { align-items:start; flex-direction:column; }
 .agent-tabs { gap:12px; }
 .agent-name { font-size:18px; line-height:28px; }
 .agent-tab { padding:8px 8px 16px; }
 .agent-role { font-size:12px; line-height:20px; }
 .agent-role-panel,.company-intro { gap:40px; }
}
@media(max-width:980px) {
 .proof-layout>div:last-child { display:flex; }
 .agent-role-panel { grid-template-columns:1fr; gap:32px; padding:32px; }
 .company-intro { grid-template-columns:1fr; gap:40px; }
 .agent-service-bridge { gap:32px; }
}
@media(max-width:600px) {
 .site-menu-heading { padding:16px 24px; }
 .site-menu-scroll { padding:16px 24px 24px; }
 .site-menu-heading .small-label { margin-bottom:8px; font-size:12px; }
 .site-menu-heading h2 { font-size:20px; line-height:28px; }
 .proof-layout { grid-template-columns:1fr 1fr; }
 .proof-title { font-size:24px; line-height:28px; }
 .proof-title br { display:block; }
 .proof-layout>div:last-child { grid-column:1/-1; flex-direction:row; align-items:center; gap:16px; }
 .proof-layout>div:last-child>span { max-width:240px; }
 .footer-main>p { font-size:30px; line-height:36px; letter-spacing:-.5px; }
 .team-section { padding-block:64px; }
 .agent-tabs { grid-template-columns:1fr 1fr; gap:16px; }
 .agent-tab { padding:8px 8px 16px; }
 .agent-name { font-size:18px; line-height:28px; }
 .agent-role { font-size:12px; line-height:20px; }
 .agent-tab:last-child { grid-column:1/-1; display:grid; grid-template-columns:80px 1fr; gap:0 16px; align-content:center; }
 .agent-tab:last-child img { grid-row:1/3; width:80px; height:80px; margin:0; }
 .agent-tab:last-child .agent-name { align-self:end; }
 .agent-tab:last-child .agent-role { align-self:start; }
 .agent-role-panel { padding:24px; }
 .agent-role-panel h3 { font-size:20px; line-height:28px; }
 .agent-role-panel blockquote { font-size:18px; line-height:28px; }
 .company-intro { margin-top:40px; }
 .company-intro h3 { font-size:30px; line-height:36px; }
 .company-intro p:not(.eyebrow) { font-size:16px; line-height:28px; }
 .company-flow { gap:24px; }
 .company-flow strong { font-size:18px; line-height:28px; }
 .agent-service-bridge { grid-template-columns:1fr; }
 .agent-service-bridge p:not(.eyebrow) { font-size:16px; line-height:28px; }
}
@media(max-width:360px) {
 .site-menu-heading { padding:16px; }
 .site-menu-scroll { padding:16px; }
 .agent-tabs { gap:12px; }
}
.connections-highlight .map-connections { stroke:var(--sage); stroke-width:2; }
.connections-highlight .map-connections circle { opacity:1; }
.brand-identity { width:192px; min-width:0; }
.current-location { display:block; width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
@media(max-width:1100px) { .brand-identity { width:176px; } }
@media(max-width:600px) { .brand-identity { width:140px; } }
@media(max-width:360px) { .brand-identity { width:136px; } }
/* Keep dismiss controls reachable in every overlay, including a long inquiry. */
.inquiry-dialog { overflow:hidden; }
.inquiry-dialog[open] { display:flex; flex-direction:column; }
.inquiry-dialog>.inquiry-panel { min-height:0; overflow:auto; overscroll-behavior:contain; padding-top:48px; }
.inquiry-dialog>.dialog-close { position:absolute; top:8px; right:8px; z-index:10; }
.screen-dialog-heading { position:sticky; top:0; z-index:2; background:var(--plum); }
@media(max-width:1100px) { .agent-role { font-size:14px; line-height:20px; } }
/* Primary hierarchy: solutions and conversation. About and examples support it. */
.menu-secondary-links { margin-top:16px; }
.menu-secondary-links>a { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:44px; padding-block:8px; font-size:14px; line-height:24px; color:var(--muted); }
.menu-secondary-links .icon { width:16px; height:16px; color:var(--orchid); }
.menu-secondary-links>a[aria-current=page] { color:var(--orchid); text-decoration:underline; text-underline-offset:4px; }
.founder-about-link { font-size:14px; line-height:24px; min-height:32px; display:inline-flex; align-items:center; color:var(--orchid); }
.about-intro { padding-block:80px; }
.about-intro-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:80px; align-items:center; }
.about-intro h1 { font-size:60px; line-height:1.08; letter-spacing:-2px; }
.about-intro p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--soft-text); max-width:680px; }
.about-intro .about-intro-lead { font-size:20px; line-height:32px; color:var(--white); }
.about-intro .founder-graphic { min-height:400px; border:1px solid var(--line-dark); background:var(--plum-raised); }
.about-intro .button { margin-top:16px; }
.about-practice { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.about-practice p:not(.eyebrow) { font-size:18px; line-height:28px; color:var(--muted); }
.team-page .team-section .section-heading h2 { font-size:36px; line-height:40px; }
.team-page .agent-tabs { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.team-page .agent-tab { display:grid; grid-template-columns:48px minmax(0,1fr); gap:0 12px; padding:16px; align-content:center; }
.team-page .agent-tab img { grid-row:1/3; width:48px; height:48px; border-radius:4px; margin:0; }
.team-page .agent-name { font-size:16px; line-height:24px; margin-bottom:4px; }
.team-page .agent-role { font-size:12px; line-height:20px; }
.team-page .agent-role-panel { padding:32px; }
@media(max-width:1100px) {
 .team-page .agent-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .about-intro-layout,.about-practice { gap:40px; }
}
@media(max-width:600px) {
 .about-intro { padding-block:48px; }
 .about-intro-layout,.about-practice { grid-template-columns:1fr; gap:32px; }
 .about-intro h1 { font-size:36px; line-height:40px; letter-spacing:-1px; }
 .about-intro p:not(.eyebrow),.about-practice p:not(.eyebrow) { font-size:16px; line-height:28px; }
 .about-intro .about-intro-lead { font-size:18px; line-height:28px; }
 .about-intro .founder-graphic { min-height:240px; }
 .team-page .agent-tabs { grid-template-columns:1fr; gap:8px; }
 .team-page .agent-tab,.team-page .agent-tab:last-child { grid-column:auto; grid-template-columns:48px minmax(0,1fr); gap:0 12px; padding:16px; }
 .team-page .agent-tab:last-child img { width:48px; height:48px; }
 .team-page .agent-role-panel { padding:24px; }
}

/* Scroll-led explanations: controls stay next to the story they affect. */
.story-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:44px; margin-bottom:16px; }
.story-toolbar>div { min-width:0; }
.story-toolbar strong { display:block; font-size:16px; line-height:24px; font-weight:600; }
.story-counter { display:block; font-size:12px; line-height:20px; color:var(--muted); }
.story-toggle { flex-shrink:0; min-height:44px; padding:8px 12px; border:1px solid var(--line); border-radius:4px; background:transparent; color:var(--ink); font-size:12px; line-height:20px; }
.story-toggle[hidden] { display:none; }
.synergy-explorer .story-counter,.synergy-explorer .story-instruction { color:var(--soft-text); }
.synergy-explorer .story-toggle { color:var(--sage); border-color:var(--line-dark); }
.story-instruction { font-size:14px; line-height:24px; margin:0 0 16px; }
.problem-tab .tab-short { display:none; }
@media (hover:hover) and (pointer:fine) {
 .story-toggle:hover { border-color:var(--orchid); }
 .synergy-explorer .story-toggle:hover { border-color:var(--sage); }
}
@media(max-width:600px) {
 .problem-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:16px; }
 .problem-tab { display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:8px; padding:16px 8px; min-height:96px; }
 .problem-tab>.icon { width:24px; height:24px; }
 .problem-tab .tab-long,.problem-tab>span { display:none; }
 .problem-tab .tab-short { display:block; font-size:14px; line-height:20px; letter-spacing:0; }
 .story-toolbar { gap:8px; }
 .story-toggle { padding-inline:8px; }
 .story-toolbar strong { font-size:14px; }
}

#synergy-connections { scroll-margin-top:112px; }

@media(max-width:600px) { .synergy-map { height:320px; } }

/* Canvas Lab Hex Float: transparent glass, native HTML and native hit targets. */
.hex-float-layer { position:fixed; inset:0; width:100%; height:100vh; height:100lvh; pointer-events:none; z-index:8; opacity:.72; contain:strict; transform:translateZ(0); backface-visibility:hidden; }
.hex-float-layer[hidden] { display:none; }
.inquiry-panel,.demo-panel { position:relative; z-index:9; }
.glass-motion-toggle { min-height:44px; border:0; padding:8px 0; color:var(--soft-text); background:transparent; font-size:12px; line-height:20px; text-decoration:underline; text-underline-offset:4px; }
.glass-motion-toggle[hidden] { display:none; }
@media(max-width:600px) {
 .hex-float-layer { opacity:.62; }
 .footer-bottom { flex-wrap:wrap; }
}
@media(prefers-reduced-motion:reduce) { .hex-float-layer { display:none; } }
/* Keep the glass behind readable content and every conversion control. */
.wrap { position:relative; z-index:9; }

/* Quiet reading surfaces: the glass remains visible in the surrounding space. */
.reading-surface { background:rgba(255,255,255,.92); border-radius:3px; box-shadow:0 0 0 .4em rgba(255,255,255,.92); }
