/* Homepage visual cleanup: a calmer reading rhythm for the 2026 story. */
:root{--muted:#bbb1a5;--soft:#978d80}

/* The narrative remains spacious, without making every section a full-screen slide. */
.section{padding:clamp(64px,8vw,104px) 0}
.slide--text .wrap{max-width:760px}
.slide-h2-sentence{font-size:clamp(2.1rem,4.2vw,3.5rem);line-height:1.02}
.slide-body{font-size:clamp(.9rem,1.2vw,1rem);line-height:1.8;color:var(--muted)}

/* Make the three platform chapters read as one considered sequence, not repeats. */
#build-mmaadd,#build-happysunday,#build-softerbread{position:relative;border-top:0}
#build-mmaadd{background:linear-gradient(100deg,rgba(198,122,74,.075),transparent 56%)}
#build-happysunday{background:linear-gradient(260deg,rgba(184,145,42,.06),transparent 58%)}
#build-softerbread{background:linear-gradient(100deg,rgba(241,236,227,.035),transparent 56%)}
#build-mmaadd .wrap,#build-happysunday .wrap,#build-softerbread .wrap{padding-left:clamp(20px,4vw,48px);border-left:2px solid rgba(241,236,227,.72)}

/* Give long text sections a clear visual cadence without introducing more cards. */
#build-priorities .ptable{margin-top:34px;background:rgba(255,255,255,.018);border:1px solid var(--line);border-radius:14px;overflow:hidden}
#build-priorities .ptable tr:last-child td{border-bottom:0}
#build3{border-top:0;border-bottom:0}

/* The existing floating and pulsing treatments are reserved for intentional interaction. */
.card,.give-card,.band,.plat,.lane-card,.trust-item,.impact-tile,.fact,.role,.doc-item,.field-card,.exp,
.chip,.ppill,.mini-cta,.d-pill,.a-pill,.freq-pill,.r-pill,.amount,.give-mode button,
.nav-dot,.lang-select.nav-dot-select{animation:none!important}

@media(max-width:700px){
  .section{padding:60px 0}
  .slide-h2-sentence{font-size:clamp(2rem,10vw,3rem)}
  #build-mmaadd .wrap,#build-happysunday .wrap,#build-softerbread .wrap{padding-left:20px}
}

/* About uses the same long-scroll language, with stronger chapter breaks. */
body:has(#what-we-build) .section{padding:clamp(64px,8vw,104px) 0}
body:has(#what-we-build) .slide-h2-sentence{font-size:clamp(2rem,4.1vw,3.35rem)}
body:has(#what-we-build) .read-word{animation:none!important;opacity:1!important;transform:none!important}
body:has(#what-we-build) #believe-quote .reveal-after{opacity:1;transform:none;animation:none!important}
body:has(#what-we-build) #believe-quote{margin-top:48px;padding:0;background:none;border:0}
body:has(#what-we-build) #believe-quote .h2{max-width:26ch;margin-inline:auto}
body:has(#what-we-build) .belief-divider{width:34px;height:1px;background:var(--terra);opacity:.6;margin:44px auto 0}
body:has(#what-we-build) #ventures-system{border-top:0}
body:has(#what-we-build) #build-mmaadd,
body:has(#what-we-build) #build-happysunday,
body:has(#what-we-build) #build-softerbread{border-top:0}
body:has(#what-we-build) #build-mmaadd{background:linear-gradient(100deg,rgba(198,122,74,.07),transparent 56%)}
body:has(#what-we-build) #build-happysunday{background:linear-gradient(260deg,rgba(184,145,42,.055),transparent 58%)}
body:has(#what-we-build) #build-softerbread{background:linear-gradient(100deg,rgba(241,236,227,.03),transparent 56%)}
body:has(#what-we-build) #build-mmaadd .container,
body:has(#what-we-build) #build-happysunday .container,
body:has(#what-we-build) #build-softerbread .container{padding-left:clamp(20px,4vw,48px);border-left:2px solid rgba(241,236,227,.72)}
body:has(#what-we-build) #people-names{border-top:0;border-bottom:0;background:rgba(255,255,255,.016)}
body:has(#what-we-build) .people-group-label{margin:clamp(40px,6vw,64px) auto 16px;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--terra)}
body:has(#what-we-build) #where{padding-bottom:clamp(92px,12vw,156px)}

/* Labs: dense enough to scan, with each platform given a distinct chapter. */
body:has(#how-we-work) section.slide{padding:clamp(64px,8vw,104px) 0}
body:has(#how-we-work) .slide-h2-sentence{font-size:clamp(2rem,4vw,3.2rem)}
body:has(#how-we-work) .flow-num,body:has(#how-we-work) .flow-line::after{animation:none!important}
body:has(#how-we-work) .v2col{max-height:none;overflow:visible;align-items:start}
body:has(#how-we-work) .v2col-platform{position:sticky;top:104px;padding-top:12px}
body:has(#how-we-work) .v2col-portfolio{align-items:stretch;text-align:left;padding:clamp(22px,3vw,34px);background:rgba(255,255,255,.022);border-left:1px solid var(--line);box-shadow:0 22px 60px rgba(0,0,0,.24)}
body:has(#how-we-work) .v2col-item-eyebrow{margin-bottom:10px}
body:has(#how-we-work) .v2col-divider{padding-top:16px;margin-bottom:16px}
body:has(#how-we-work) #platform-mmaadd{background:linear-gradient(100deg,rgba(198,122,74,.065),transparent 58%);border-top:0}
body:has(#how-we-work) #platform-happysunday{background:linear-gradient(260deg,rgba(184,145,42,.05),transparent 58%);border-top:0}
body:has(#how-we-work) #platform-softerbread{background:linear-gradient(100deg,rgba(241,236,227,.03),transparent 58%);border-top:0}
body:has(#how-we-work) #give{border-top:0;padding-bottom:clamp(96px,13vw,164px)}
@media(max-width:900px){
  body:has(#how-we-work) .v2col-platform{position:static}
  body:has(#how-we-work) .v2col-portfolio{border-left:0;border-top:0;padding-inline:0;background:none;box-shadow:none}
}

/* Groundwork: reduce repeated chapter treatment and let the practical details breathe. */
body:has(#signup) section.slide{padding:clamp(64px,8vw,104px) 0}
body:has(#signup) .slide-h2-sentence{font-size:clamp(2rem,4vw,3.2rem)}
body:has(#signup) .flow-num,body:has(#signup) .flow-line::after{animation:none!important}
body:has(#signup) #where-facts,body:has(#signup) #who-bring{padding-top:0;padding-bottom:clamp(80px,10vw,132px)}
body:has(#signup) #where-facts .wrap,body:has(#signup) #who-bring .wrap{padding-top:clamp(28px,4vw,48px);border-top:0}
body:has(#signup) .slide-names{font-size:clamp(.78rem,1.2vw,.94rem);line-height:1.85;color:var(--muted)}
body:has(#signup) #get-involved{border-top:0;padding-bottom:clamp(90px,12vw,156px)}
body:has(#signup) #signup{padding-top:clamp(80px,10vw,128px)}

/* Site-wide finishing pass: quiet consistency across every route. */
html{scroll-padding-top:96px}
body{font-size:15px;line-height:1.72}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--terra);outline-offset:3px}

/* Keep reading measures intentional when pages use different local styles. */
.hero-sub,.hero .body,.slide-body,.slide--text .body,.intro{max-width:60ch}
.hero .body,.slide--text .body,.slide-body{line-height:1.72}
.section .wrap,.section .container,section .wrap,section .container{position:relative}

/* Repeated interactive tiles should feel stable; reserve motion for meaningful cues. */
.res,.gift-card,.tax-box,.form-card,.pond-cta,.faq-item,.acc,.cluster,.geo-row,.move,.bring-col{
  animation:none!important;
}
.res,.gift-card,.tax-box,.form-card,.pond-cta{box-shadow:0 18px 42px rgba(0,0,0,.16)}
.res:hover,.gift-card:hover,.pond-cta:hover{transform:translateY(-2px)}

/* Standardise long-form and slideshow pages without changing their structure. */
body:has(.slideshow) .slide--text .wrap{max-width:760px}
body:has(.slideshow) .slide--text .body{margin-inline:auto}
body:has(.slideshow) .slide-names{line-height:1.9}
body:has(.slideshow) .slideshow{isolation:isolate}

/* On the network chapter, let the osmosis map bridge the story and the places. */
#groundwork .wrap{display:flex;flex-direction:column;align-items:center}
#groundwork .eyebrow{order:1}
#groundwork .h2{order:2}
#groundwork .slide-body{order:3}
#groundwork .network-regions{order:4}
#groundwork .osmosis-animation-mini{order:5!important;margin-top:clamp(42px,6vw,68px)}
#groundwork .osmosis-caption-mini{order:6!important;margin-bottom:clamp(52px,7vw,84px)}
#groundwork .slide-names{order:7!important;margin-top:0}
#groundwork .actions{order:8;margin-top:clamp(32px,5vw,56px)!important}

/* A compact funding diagram makes the operating model easier to scan than a text block. */
.funding-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.1fr) auto minmax(0,1fr);align-items:stretch;gap:clamp(10px,2vw,24px);max-width:940px;margin:clamp(38px,6vw,64px) auto clamp(44px,6vw,72px)}
.funding-node{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:190px;padding:clamp(22px,3vw,32px) clamp(16px,2vw,24px);border:0;border-radius:18px;background:var(--panel,rgba(255,255,255,.022));box-shadow:0 16px 36px rgba(0,0,0,.22);text-align:center}
.funding-node strong{font-family:'IBM Plex Mono',monospace;font-size:clamp(.84rem,1.3vw,1rem);font-weight:400;line-height:1.35;color:var(--ink)}
.funding-node>span:last-child{font-size:12px;line-height:1.65;color:var(--muted);max-width:22ch}
.funding-kicker{font-size:9px;letter-spacing:.15em;line-height:1.55;text-transform:uppercase;color:var(--terra)}
.funding-pills{display:flex;flex-direction:column;gap:8px;width:100%}
.funding-pill{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border-radius:999px;background:rgba(255,255,255,.05);box-shadow:0 8px 18px rgba(0,0,0,.22);color:var(--ink);font-size:clamp(.76rem,1.15vw,.88rem);line-height:1.35;text-align:center}
.funding-osmosis{--osmosis-green:#7f9b62;background:linear-gradient(145deg,rgba(127,155,98,.3),rgba(127,155,98,.08) 62%,rgba(255,255,255,.025));box-shadow:0 16px 36px rgba(0,0,0,.22),0 0 0 1px rgba(127,155,98,.48) inset}
.funding-outcomes{position:relative;overflow:hidden}
.funding-outcomes-underlay{position:absolute;inset:0;z-index:0;opacity:.4;pointer-events:none}
.funding-outcomes-underlay .osmosis-map-mini{width:100%;height:100%;border-radius:0;box-shadow:none;background:none}
.funding-outcomes-underlay .osmosis-caption-mini{display:none}
.funding-outcomes::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,.25));pointer-events:none}
.funding-outcomes .funding-kicker,.funding-outcomes .funding-outcomes-cloud{position:relative;z-index:1}
.funding-osmosis strong{font-size:clamp(1.35rem,2.4vw,1.9rem);color:#c9ddb2}
.funding-osmosis>span:last-child{color:#c6cfbb}
.funding-flow-line{align-self:center;display:none;height:2px;background:linear-gradient(90deg,transparent,var(--line-s),transparent);position:relative;overflow:hidden;border-radius:2px}
.funding-flow-line::after{content:"";position:absolute;top:0;left:-55%;width:55%;height:100%;background:linear-gradient(90deg,transparent,#7f9b62,transparent);animation:fundingFlowMove 3.2s ease-in-out infinite;animation-delay:var(--fd,0s)}
@keyframes fundingFlowMove{to{left:110%}}
.funding-outcomes-cloud{position:relative;min-height:3.4em;width:100%;display:flex;align-items:center;justify-content:center}
.funding-outcome-phrase{position:absolute;left:0;right:0;text-align:center;font-family:'IBM Plex Mono',monospace;font-size:clamp(.84rem,1.3vw,1rem);font-weight:400;line-height:1.35;color:var(--ink);opacity:0;transition:opacity 900ms ease;padding:0 4px}
.funding-outcome-phrase.in{opacity:1}
@media(prefers-reduced-motion:reduce){.funding-flow-line::after{animation:none}.funding-outcome-phrase{transition:none}}
@media(max-width:700px){.funding-flow{grid-template-columns:1fr;max-width:360px;gap:16px}.funding-node{min-height:auto}.funding-flow-line{display:block!important;height:24px;width:2px;justify-self:center;background:linear-gradient(180deg,transparent,var(--line-s),transparent)}.funding-flow-line::after{left:0;top:-55%;width:100%;height:55%;background:linear-gradient(180deg,transparent,#7f9b62,transparent);animation-name:fundingFlowMoveY}}
@keyframes fundingFlowMoveY{to{top:110%}}
@media(min-width:701px){.funding-flow-line{display:block}}

/* Supporting pages inherit the same comfortable edge spacing as the main routes. */
body:has(.nav) .nav{margin-bottom:clamp(10px,2vw,20px)}
@media(max-width:760px){
  body{font-size:14px;line-height:1.68}
  .nav:has(.nav-inner){top:8px!important;width:calc(100% - 16px)!important;margin-top:8px!important}
  .nav:has(.nav-inner) .nav-inner{height:52px!important;padding-left:16px!important}
  .nav:has(.nav-inner) .nav-logo{height:34px!important}
  .nav:has(.nav-inner) .nav-links{gap:3px!important}
  .nav:has(.nav-inner) .nav-link{padding:7px 8px!important;font-size:10px!important}
  .nav-dot-wrap .lang-select.nav-dot-select{width:32px;height:32px;min-width:32px}
  .section{padding:60px 0}
  .footer{padding-top:64px!important}
}
@media(max-width:480px){
  .nav:has(.nav-inner) .nav-link{padding-inline:5px!important;font-size:9px!important}
  .nav:has(.nav-inner) .nav-has-dropdown{display:none!important}
  .nav:has(.nav-inner) .nav-links>a:nth-last-child(2){display:none!important}
  .hero h1,.h1{font-size:clamp(2.35rem,13vw,3.45rem)!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
