@import url('https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&display=swap');
:root{--navy:#0f1827;--panel:#162338;--ink:#f8faf7;--muted:#c3cbd4;--sage:#a6bc83;--sage-dark:#7d9162;--blue-sage:#315f68;--rust:#a87858;--line:rgba(248,250,247,.14);--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit}button{font:inherit}.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:var(--ink);color:var(--navy);padding:10px 14px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{height:78px;max-width:var(--max);margin:auto;padding:0 56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.wordmark{text-decoration:none;font-size:.78rem;letter-spacing:.14em;font-weight:400;white-space:nowrap}.wordmark span{font-weight:600}.site-header nav{display:flex;align-items:center;gap:26px}.site-header nav>a{font-size:.77rem;text-decoration:none;color:#e8ece8;transition:color .2s}.site-header nav>a:hover,.site-header nav>a:focus-visible{color:var(--sage)}.menu-toggle{display:none;background:none;color:var(--ink);border:1px solid var(--line);padding:8px 12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;background:var(--blue-sage);color:#fff;text-decoration:none;font-size:.84rem;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover,.button:focus-visible{background:#3d717b;transform:translateY(-1px)}.button-small{min-height:38px;padding:8px 14px!important;color:#fff!important}.page-shell{max-width:var(--max);margin:auto;padding:0 56px 0 88px;position:relative}.spine{position:absolute;left:53px;top:0;bottom:0;width:1px;background:var(--line)}.spine span{display:block;width:1px;height:100%;background:linear-gradient(var(--blue-sage),var(--sage-dark));transform:scaleY(0);transform-origin:top;animation:draw 1.7s cubic-bezier(.5,0,.2,1) forwards}.section{position:relative;padding:104px 0 94px;border-bottom:1px solid var(--line)}.node{position:absolute;left:-41px;top:112px;width:13px;height:13px;border-radius:50%;background:var(--navy);border:1px solid var(--sage-dark);box-shadow:0 0 0 4px var(--navy);transition:background .4s,box-shadow .4s}.section.is-visible>.node{background:var(--sage);box-shadow:0 0 0 4px var(--navy),0 0 20px rgba(166,188,131,.4)}.eyebrow{margin:0 0 18px;color:var(--sage);font-size:.7rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase}h1,h2,h3{margin:0;font-weight:500;letter-spacing:-.055em}h1{font-size:clamp(4rem,9vw,7.3rem);line-height:.88;max-width:900px}h2{font-size:clamp(2.8rem,5.6vw,4.7rem);line-height:.98;max-width:780px}h3{font-size:clamp(1.75rem,2.7vw,2.4rem);line-height:1.05}em{color:var(--sage);font-style:normal}.lede{max-width:680px;margin:30px 0 0;font-size:clamp(1.05rem,1.7vw,1.25rem);line-height:1.65;color:#e9eeea}.hero{min-height:610px;display:flex;flex-direction:column;justify-content:center}.hero .lede{max-width:650px}.actions{display:flex;align-items:center;gap:24px;margin-top:34px}.text-link{font-size:.86rem;text-decoration:none;border-bottom:1px solid rgba(248,250,247,.46);padding:5px 0 3px}.text-link:hover,.text-link:focus-visible{color:var(--sage);border-color:var(--sage)}.quiet-note{margin:22px 0 0;color:var(--muted);font-size:.78rem}.press{height:80px;display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center;border-bottom:1px solid var(--line);overflow:hidden}.press>p{margin:0;color:var(--sage);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}.press-window{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent)}.press-track{display:flex;width:max-content;animation:press-loop 26s linear infinite}.press-set{display:flex;align-items:center;gap:44px;padding-right:44px}.press-logo{display:block;flex:none;background-image:url('press-logos.webp');background-size:280px 140px;background-repeat:no-repeat;filter:grayscale(1) brightness(0) invert(1);opacity:.68}.logo-abc{width:34px;height:34px;background-position:-39px -30px}.logo-fox{width:38px;height:31px;background-position:-86px -30px}.logo-nbc{width:32px;height:31px;background-position:-149px -30px}.logo-si{width:28px;height:20px;background-position:-40px -65px}.logo-ibt{width:42px;height:20px;background-position:-69px -65px}.logo-morning{width:65px;height:20px;background-position:-117px -66px}.logo-cbs{width:55px;height:20px;background-position:-187px -66px}.proof{display:grid;grid-template-columns:.65fr 1.3fr 1.1fr 1.2fr;gap:20px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);text-transform:uppercase;font-size:.66rem;letter-spacing:.11em;color:#dbe1dc}.proof span{padding-right:15px;border-right:1px solid var(--line)}.proof span:last-child{border:0}.proof strong{color:var(--sage);font-size:1.5rem;letter-spacing:-.03em;margin-right:5px}.problem-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;margin-top:45px}.problem-copy p{color:var(--muted);max-width:660px}.problem-copy .beats{font-size:1.15rem;line-height:2;color:var(--ink)}.problem-copy .accent-line{color:var(--sage);font-weight:600;margin-top:28px}.friction-cards{display:flex;flex-direction:column;gap:10px;justify-content:center}.friction-cards span{padding:18px 20px;background:var(--panel);border-left:3px solid var(--blue-sage);font-size:.85rem}.friction-cards span:nth-child(2){border-color:var(--rust)}.friction-cards span:nth-child(3){border-color:var(--sage-dark)}.group-intro .lede{max-width:740px}.businesses{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:22px 0 100px;border-bottom:1px solid var(--line);scroll-margin-top:78px}.business-card{min-height:430px;padding:34px 30px;background:var(--panel);display:flex;flex-direction:column;border-top:4px solid var(--blue-sage);scroll-margin-top:100px}.business-card.rooted{border-color:var(--rust)}.business-card.nest{border-color:var(--sage-dark)}.business-name{text-transform:uppercase;font-weight:600;letter-spacing:.16em;font-size:.72rem;margin:0 0 30px}.business-card h3{margin-bottom:22px}.business-card>p:not(.business-name,.card-note){color:var(--muted);font-size:.93rem}.business-card .card-note{margin-top:auto;color:var(--sage);font-size:.78rem}.business-card a{margin-top:18px;width:max-content;text-decoration:none;border-bottom:1px solid currentColor;font-size:.82rem}.connection{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:center}.system-lines{margin-top:36px}.system-lines p{font-size:1.15rem;margin:.4rem 0;color:#e7ece8}.system-lines strong{display:inline-block;min-width:125px;text-transform:uppercase;font-size:.7rem;letter-spacing:.12em;color:var(--sage)}blockquote{margin:36px 0 0;padding:16px 0 16px 20px;border-left:2px solid var(--sage-dark);color:var(--muted);font-size:1rem}.orbit{width:min(300px,100%);aspect-ratio:1;position:relative;border:1px solid rgba(248,250,247,.22);border-radius:50%;display:grid;place-items:center;margin:auto}.orbit-ring{position:absolute;inset:48px;border:1px solid rgba(248,250,247,.17);border-radius:50%}.orbit-centre{width:116px;height:116px;border-radius:50%;background:var(--blue-sage);display:grid;place-items:center;text-align:center;text-transform:uppercase;letter-spacing:.12em;font-size:.64rem;line-height:1.8;z-index:2}.orbit-dot{position:absolute;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;text-transform:uppercase;letter-spacing:.08em;font-size:.55rem;font-weight:600}.operate{top:-12px;background:var(--blue-sage)}.connect{right:-12px;bottom:50px;background:var(--rust)}.support{left:-12px;bottom:50px;background:var(--sage-dark)}.statement{font-size:1.2rem;color:var(--sage);margin:28px 0}.capabilities{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}.capabilities span{padding:11px 14px;border:1px solid var(--line);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:45px}.outcomes p{background:var(--panel);padding:25px;margin:0;border-top:2px solid var(--blue-sage);font-size:1rem}.outcomes p:nth-child(2){border-color:var(--rust)}.outcomes p:nth-child(3){border-color:var(--sage-dark)}.final-cta{padding-bottom:120px}.final-cta .lede{max-width:750px}footer{max-width:var(--max);margin:auto;padding:45px 56px;display:grid;grid-template-columns:1fr auto;gap:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}footer p{margin:10px 0 0}.footer-links{display:flex;gap:22px;align-items:start}.footer-links a{text-decoration:none}.copyright{grid-column:1/-1;padding-top:25px;border-top:1px solid var(--line)}
@keyframes draw{to{transform:scaleY(1)}}@keyframes press-loop{to{transform:translateX(-50%)}}
@media(max-width:860px){.site-header{padding:0 24px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:77px;left:0;right:0;padding:22px 24px;background:var(--navy);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.site-header nav a{font-size:.9rem}.page-shell{padding:0 24px 0 52px}.spine{left:25px}.section{padding:76px 0 70px}.node{left:-33px;top:84px}.hero{min-height:570px}.proof{grid-template-columns:1fr 1fr}.proof span:nth-child(2){border-right:0}.problem-grid,.connection{grid-template-columns:1fr;gap:50px}.businesses,.outcomes{grid-template-columns:1fr}.business-card{min-height:340px}.orbit{margin:28px auto 0}.connection{gap:45px}footer{padding:38px 24px;grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.copyright{grid-column:auto}}
@media(max-width:520px){h1{font-size:3.8rem}.page-shell{padding-right:18px}.actions{align-items:flex-start;flex-direction:column;gap:14px}.press{grid-template-columns:1fr;height:104px;gap:6px;padding:15px 0}.proof{grid-template-columns:1fr;padding:20px 0}.proof span,.proof span:nth-child(2){border:0;border-bottom:1px solid var(--line);padding:8px 0}.proof span:last-child{border:0}.system-lines strong{display:block;margin-bottom:2px}.business-card{padding:28px 24px}.outcomes{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.spine span,.press-track{animation:none}.spine span{transform:scaleY(1)}*{transition:none!important}}

/* Larger, precisely measured continuous press loop. */
.press{height:96px}
.press-track{animation:none;will-change:transform}
.press-track.is-ready{animation:press-loop-exact 28s linear infinite}
.press-set{flex:none;gap:56px;padding-right:56px}
.press-logo{background-size:336px 168px}
.logo-abc{width:41px;height:41px;background-position:-47px -36px}
.logo-fox{width:46px;height:37px;background-position:-103px -36px}
.logo-nbc{width:38px;height:37px;background-position:-179px -36px}
.logo-si{width:34px;height:24px;background-position:-48px -78px}
.logo-ibt{width:50px;height:24px;background-position:-83px -78px}
.logo-morning{width:78px;height:24px;background-position:-140px -79px}
.logo-cbs{width:66px;height:24px;background-position:-224px -79px}
@keyframes press-loop-exact{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--press-offset),0,0)}}
@media(max-width:760px){.press-set{gap:36px;padding-right:36px}.press{height:108px}}
@media(prefers-reduced-motion:reduce){.press-track.is-ready{animation:none}}

/* Exact Graft press strip. */
.media-strip{z-index:3;background:#f8faf7;color:#747d89;border-bottom:1px solid rgba(103,115,132,.14);align-items:center;height:46px;display:flex;position:relative;overflow:hidden}
.media-label{z-index:2;background:#f8faf7;letter-spacing:.18em;white-space:nowrap;flex:0 0 auto;align-items:center;height:100%;padding:0 18px 0 24px;font-size:10px;font-weight:800;display:flex;position:relative}
.media-window{flex:1 1 0%;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.media-track{align-items:center;gap:0;width:max-content;animation:32s linear infinite media-scroll;display:flex}
.media-logo{filter:grayscale(1);opacity:.58;background-image:url('press-logos.webp');background-repeat:no-repeat;background-size:280px 140px;flex:0 0 auto;display:block}
.media-cycle{flex:0 0 auto;justify-content:space-around;align-items:center;gap:28px;min-width:max(calc(100vw - 105px),700px);padding-right:28px;display:flex}
.media-strip .logo-abc{background-position:-39px -30px;width:34px;height:34px}
.media-strip .logo-fox{background-position:-86px -30px;width:38px;height:31px}
.media-strip .logo-nbc{background-position:-149px -30px;width:32px;height:31px}
.media-strip .logo-si{background-position:-40px -65px;width:28px;height:20px}
.media-strip .logo-ibt{background-position:-69px -65px;width:42px;height:20px}
.media-strip .logo-morning{background-position:-117px -66px;width:65px;height:20px}
.media-strip .logo-cbs{background-position:-187px -66px;width:55px;height:20px}
@keyframes media-scroll{to{transform:translateX(-50%)}}
@media(max-width:700px){.media-strip{height:42px}.media-label{padding-inline:14px 12px;font-size:9px}.media-track{animation-duration:26s}.media-cycle{min-width:700px}}
@media(prefers-reduced-motion:reduce){.media-track{animation-play-state:paused}}

/* Same Graft carousel, enlarged for the Fortmox page scale. */
.media-strip{height:76px}
.media-logo{background-size:476px 238px}
.media-cycle{gap:42px;min-width:max(calc(100vw - 105px),980px);padding-right:42px}
.media-strip .logo-abc{background-position:-66px -51px;width:58px;height:58px}
.media-strip .logo-fox{background-position:-146px -51px;width:65px;height:53px}
.media-strip .logo-nbc{background-position:-253px -51px;width:54px;height:53px}
.media-strip .logo-si{background-position:-68px -111px;width:48px;height:34px}
.media-strip .logo-ibt{background-position:-117px -111px;width:71px;height:34px}
.media-strip .logo-morning{background-position:-199px -112px;width:111px;height:34px}
.media-strip .logo-cbs{background-position:-318px -112px;width:94px;height:34px}
@media(max-width:700px){.media-strip{height:68px}.media-cycle{min-width:980px}}

/* Contact page */
.contact-page .site-header{max-width:var(--max)}
.contact-main{max-width:var(--max);margin:0 auto;padding:0 56px}
.contact-hero{min-height:520px;padding:105px 32px 85px;border-bottom:1px solid var(--line)}
.contact-hero h1{max-width:820px}
.contact-hero .lede{max-width:680px}
.contact-options{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:24px 32px 100px}
.contact-card{min-height:280px;background:var(--panel);padding:32px;display:flex;flex-direction:column;border-top:3px solid var(--blue-sage)}
.contact-card:nth-child(2){border-color:var(--rust)}
.contact-card:nth-child(3){border-color:var(--sage-dark)}
.contact-card:nth-child(4){border-color:var(--blue-sage)}
.contact-card h2{font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.04em}
.contact-card p{color:var(--muted);max-width:480px}
.contact-card .text-link{margin-top:auto;width:max-content}
.contact-details{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:35px;color:var(--muted);font-size:.85rem}
.back-link{display:inline-block;margin-bottom:28px;color:var(--sage);text-decoration:none;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:760px){.contact-main{padding:0 20px}.contact-hero{padding:75px 16px 65px;min-height:460px}.contact-options{grid-template-columns:1fr;padding:20px 16px 70px}.contact-card{min-height:250px;padding:26px}}
