/* FROG index — the Gallerette lesson applied without losing FROG green. */
body:has([data-frog-nav]){background:#ffffff!important}
body:has([data-frog-nav]) .hero{
  min-height:calc(100vh - 84px)!important;
  display:block!important;
  padding:0 0 clamp(120px,18vh,210px)!important;
  background:#ffffff!important;
  overflow:visible!important;
}
body:has([data-frog-nav]) > main,
body:has([data-frog-nav]) > main > .hero,
body:has([data-frog-nav]) > main > .hero .hero-grid{
  overflow:visible!important;
  clip-path:none!important;
}
body:has([data-frog-nav]) .hero:before,
body:has([data-frog-nav]) .hero-scrim,
body:has([data-frog-nav]) .hero-sketch{display:none!important}
body:has([data-frog-nav]) .hero-grid{
  display:flex!important;flex-direction:column!important;align-items:center!important;
  text-align:center!important;
}
body:has([data-frog-nav]) .hero-copy{display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important;position:relative!important;z-index:1!important}
body:has([data-frog-nav]) .hero h1{
  max-width:17ch!important;
  margin:0 0 16px!important;
  color:#214507!important;
  font:400 clamp(16px,1.45vw,18px)/1.35 "IBM Plex Mono",monospace!important;
  letter-spacing:-.035em!important;
  text-shadow:none!important;
}
body:has([data-frog-nav]) .hero-lede{
  max-width:42ch!important;
  margin:0 0 48px!important;
  color:#214507!important;
  font:500 clamp(15px,1.4vw,18px)/1.55 "IBM Plex Mono",monospace!important;
}
body:has([data-frog-nav]) .hero-access{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,200px))!important;
  justify-content:center!important;gap:22px!important;width:100%!important;max-width:460px!important;color:#486b14!important;
  font:400 12px/1.55 "IBM Plex Mono",monospace!important;text-align:center!important;
}
body:has([data-frog-nav]) .hero-access a{
  display:grid!important;place-items:center!important;width:100%!important;min-height:72px!important;
  padding:14px!important;box-sizing:border-box!important;background:#ffffff!important;color:#214507!important;
  min-width:0!important;text-align:center!important;text-decoration:none!important;text-transform:uppercase!important;border:1px solid rgba(33,69,7,.24)!important;border-radius:0!important;
  line-height:1.25!important;box-shadow:none!important;
}
body:has([data-frog-nav]) .hero-access a:hover{background:#edf4dd!important;color:#214507!important;border-color:#5a7f10!important}
body:has([data-frog-nav]) .hero-coin-mount{
  position:relative!important;top:auto!important;right:auto!important;margin:62px auto 0!important;
  width:min(78vw,560px)!important;height:min(42vw,280px)!important;padding:0!important;
  overflow:visible!important;z-index:5!important;animation:coinFloat 6s ease-in-out infinite!important;
}
body:has([data-frog-nav]) .hero-coin-mount iframe{
  display:block!important;width:100%!important;height:100%!important;border:0!important;background:transparent!important;
  transform:none!important;
}
@keyframes coinFloat{0%,100%{transform:translate3d(0,0,0) rotate(-.3deg)}50%{transform:translate3d(0,-12px,0) rotate(.45deg)}}
body:has([data-frog-nav]) .frog-offerings{padding:0 0 clamp(150px,20vh,260px)!important;background:#ffffff!important}
body:has([data-frog-nav]) .frog-offerings .wrap{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:72px!important}
body:has([data-frog-nav]) .frog-offering-group{display:flex!important;flex-direction:column!important;gap:22px!important}
body:has([data-frog-nav]) .frog-offering-links{display:flex!important;flex-direction:column!important;gap:10px!important}
body:has([data-frog-nav]) .frog-offering-links a{color:#214507!important;text-decoration:none!important;font:400 14px/1.45 "IBM Plex Mono",monospace!important}
body:has([data-frog-nav]) .frog-offering-links a:hover{color:#5a7f10!important}
body.frog-offering-page,body:has(.frog-offering-page){background:#ffffff!important;color:#214507!important}
.frog-offering-page section{min-height:calc(100vh - 84px);padding:clamp(150px,22vh,260px) 0!important;background:#ffffff!important}
.frog-offering-page h1{margin:18px 0 28px!important;font:400 clamp(18px,2vw,26px)/1.3 "IBM Plex Mono",monospace!important;color:#214507!important;letter-spacing:-.04em!important}
.frog-offering-page p,.frog-offering-page a{font:400 12px/1.55 "IBM Plex Mono",monospace!important;color:#486b14!important;text-decoration:none!important}
.frog-offering-page a:hover{color:#214507!important}
body:has([data-frog-nav]) .hero-cta,
body:has([data-frog-nav]) .offer-actions{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:21px!important}
body:has([data-frog-nav]) .hero-cta a,
body:has([data-frog-nav]) .offer-link{
  min-height:0!important;padding:0!important;background:transparent!important;color:#486b14!important;
  border:0!important;border-bottom:1px solid transparent!important;border-radius:0!important;
  font:400 12px/1.35 "IBM Plex Mono",monospace!important;text-decoration:none!important;box-shadow:none!important;
}
body:has([data-frog-nav]) .hero-cta a:hover,
body:has([data-frog-nav]) .offer-link:hover{color:#214507!important;border-bottom-color:currentColor!important}
body:has([data-frog-nav]) .hero-cta :is(.btn,.btn-green,.btn-ghost){
  min-height:0!important;padding:0!important;background:transparent!important;color:#486b14!important;
  border:0!important;border-bottom:1px solid transparent!important;border-radius:0!important;box-shadow:none!important;
}
body:has([data-frog-nav]) .about-impact{padding:0!important;background:#ffffff!important;border-top:0!important}
body:has([data-frog-nav]) .about-impact-grid{display:block!important;padding:34px 0 150px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body:has([data-frog-nav]) .about-impact h2{max-width:24ch!important;margin:0!important;font:400 12px/1.5 "IBM Plex Mono",monospace!important;letter-spacing:0!important;text-shadow:none!important}
body:has([data-frog-nav]) .about-impact-copy{display:none!important}
body:has([data-frog-nav]) .offers{padding:0!important;background:#ffffff!important;border-top:0!important}
body:has([data-frog-nav]) .offers .wrap{padding-top:34px!important;padding-bottom:clamp(160px,24vh,300px)!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body:has([data-frog-nav]) .head{display:block!important;margin:0 0 92px!important}
body:has([data-frog-nav]) .head .mono{margin-bottom:10px!important;color:#5a7f10!important;font-size:10px!important}
body:has([data-frog-nav]) .head h2{margin:0!important;color:#214507!important;font:400 12px/1.5 "IBM Plex Mono",monospace!important;letter-spacing:0!important;text-shadow:none!important}
body:has([data-frog-nav]) .offer-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body:has([data-frog-nav]) .offer,
body:has([data-frog-nav]) .offer.sprint,
body:has([data-frog-nav]) .offer.pond-card{
  min-height:220px!important;padding:22px 0!important;background:transparent!important;color:#214507!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
body:has([data-frog-nav]) .offer-kicker,
body:has([data-frog-nav]) .offer .dek{display:none!important}
body:has([data-frog-nav]) .offer h3{margin:0 0 52px!important;color:#214507!important;font:400 12px/1.45 "IBM Plex Mono",monospace!important;letter-spacing:0!important}
body:has([data-frog-nav]) .offer-actions a,
body:has([data-frog-nav]) a.offer-link,
body:has([data-frog-nav]) a.offer-link.secondary{
  min-height:0!important;padding:0!important;background:transparent!important;color:#486b14!important;
  border:0!important;border-bottom:1px solid transparent!important;border-radius:0!important;box-shadow:none!important;
  font:400 12px/1.35 "IBM Plex Mono",monospace!important;text-align:left!important;
}
body:has([data-frog-nav]) .offer-actions a:hover{color:#214507!important;border-bottom-color:currentColor!important}
body:has([data-frog-nav]) .contact{padding:0!important;background:#ffffff!important;border-top:0!important}
body:has([data-frog-nav]) .contact-grid{grid-template-columns:minmax(0,.58fr) minmax(0,1fr)!important;gap:clamp(42px,8vw,120px)!important;padding:34px 0 160px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body:has([data-frog-nav]) .contact h2{margin:0!important;color:#214507!important;font:400 12px/1.5 "IBM Plex Mono",monospace!important;letter-spacing:0!important;text-shadow:none!important}
body:has([data-frog-nav]) .contact-copy{display:none!important}
body:has([data-frog-nav]) .contact-card{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body:has([data-frog-nav]) .field{border:0!important;padding:14px 0 0!important}
body:has([data-frog-nav]) .field input,
body:has([data-frog-nav]) .field select,
body:has([data-frog-nav]) .field textarea{border:0!important;background:transparent!important;font-size:1rem!important}
/* The inherited marketing shell adds panels and pills several levels down.
   The index deliberately has neither. */
body:has([data-frog-nav]) :is(.about-impact-grid,.offer-grid,.offers .wrap,.contact-grid,.contact-actions,.contact-form-wrap,.fields){
  background:transparent!important;border-radius:0!important;box-shadow:none!important;
}
body:has([data-frog-nav]) :is(.about-impact-grid,.offer-grid,.contact-grid){border:0!important}
body:has([data-frog-nav]) .frog-nav-shell,
body:has([data-frog-nav]) .frog-nav-inner{border-radius:0!important;box-shadow:none!important}
body:has([data-frog-nav]) .frog-nav-shell{padding:0!important;background:#ffffff!important;border:0!important}
body:has([data-frog-nav]) .frog-nav-inner{position:relative!important;justify-content:flex-end!important;padding:24px 0!important}
body:has([data-frog-nav]) .frog-nav-logo{
  position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;
}
body:has([data-frog-nav]) [data-frog-nav],
body:has([data-frog-nav]) [data-frog-nav] *{border:0!important;border-radius:0!important}
/* One diagonal mark opens a quiet, vertically unfolding menu. */
body:has([data-frog-nav]) .frog-nav-menu-button{
  width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;
  position:relative!important;color:#5a7f10!important;font-size:0!important;
}
body:has([data-frog-nav]) .frog-nav-menu-button span{
  display:block!important;width:28px!important;height:1px!important;background:currentColor!important;
  transform:rotate(-45deg)!important;transform-origin:center!important;transition:transform .2s ease!important;
}
body:has([data-frog-nav]) .frog-nav-menu.is-open .frog-nav-menu-button span{transform:rotate(45deg)!important}
body:has([data-frog-nav]) .frog-nav-panel{
  min-width:190px!important;padding:12px 0!important;top:calc(100% + 10px)!important;
  background:#ffffff!important;transform:translateY(-8px)!important;
  transform-origin:top right!important;overflow:hidden!important;
}
body:has([data-frog-nav]) .frog-nav-menu.is-open .frog-nav-panel{transform:translateY(0)!important}
body:has([data-frog-nav]) .frog-nav-panel a{
  justify-content:flex-start!important;min-height:44px!important;padding:10px 0!important;color:#486b14!important;
  font:400 1rem/1.4 "IBM Plex Mono",monospace!important;letter-spacing:0!important;
}
body:has([data-frog-nav]) .frog-nav-panel a span{display:none!important}
body:has([data-frog-nav]) .offers :is(.btn,.offer-link,.offer-link.secondary),
body:has([data-frog-nav]) .offers :is(.btn,.offer-link,.offer-link.secondary)::before,
body:has([data-frog-nav]) .offers :is(.btn,.offer-link,.offer-link.secondary)::after{
  background:transparent!important;box-shadow:none!important;border-radius:0!important;
}
body:has([data-frog-nav]) :is(.hero,.about-impact,.offers,.contact,.about-impact-grid,.offer-grid,.offer,.contact-grid,.field){border-top:0!important;border-bottom:0!important}
/* Exact MMAADD tool marquee, transferred from the local MMAADD deployment. */
#mmaadd-institute {
  --ma-paper-dim:#486b14;
  --ma-ease:cubic-bezier(.2,.7,.2,1);
  display:block;
  width:min(100vw,1100px);
  max-width:1100px;
}
#mmaadd-institute .ma-stack { background: transparent; border-top: none; border-bottom: none; padding:clamp(40px,6vw,68px) 0 0; }
#mmaadd-institute .ma-marquee { width:100%; margin-top: 36px; position: relative; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
#mmaadd-institute .ma-track { display: flex; gap: 10px; width: max-content; animation: ma-scroll 150s linear infinite; }
#mmaadd-institute .ma-stack:hover .ma-track { animation-play-state: paused; }
@keyframes ma-scroll { to { transform: translateX(-50%); } }
#mmaadd-institute .ma-tool-wall { margin:0; display:flex; gap:12px; width:max-content; }
#mmaadd-institute .ma-tool-logo { box-sizing:border-box; width:64px; height:64px; flex:0 0 64px; display:grid; place-items:center; padding:11px; transition:transform .25s var(--ma-ease); animation:ma-wave 6.8s ease-in-out infinite; }
#mmaadd-institute .ma-tool-logo:hover { transform:translateY(-3px); }
@keyframes ma-wave { 0%,100%{translate:0 0} 50%{translate:0 -5px} }
#mmaadd-institute .ma-tool-logo:nth-child(2n){animation-delay:-1.1s}
#mmaadd-institute .ma-tool-logo:nth-child(3n){animation-delay:-2.4s}
#mmaadd-institute .ma-tool-logo:nth-child(5n){animation-delay:-3.8s}
@media (prefers-reduced-motion:reduce){#mmaadd-institute .ma-tool-logo{animation:none}}
#mmaadd-institute .ma-tool-logo img { display:block; width:100%; height:100%; object-fit:contain; opacity:.82; filter:brightness(0) saturate(100%) invert(19%) sepia(45%) saturate(1147%) hue-rotate(48deg) brightness(92%) contrast(96%); }
#mmaadd-institute .ma-tool-logo--black img { filter:brightness(0) saturate(100%) invert(19%) sepia(45%) saturate(1147%) hue-rotate(48deg) brightness(92%) contrast(96%); }
@media(max-width:760px){
  body:has([data-frog-nav]) .hero{min-height:76vh!important;padding:125px 0 110px!important}
  body:has([data-frog-nav]) .offer-grid,
  body:has([data-frog-nav]) .contact-grid,
  body:has([data-frog-nav]) .frog-offerings .wrap{grid-template-columns:1fr!important}
  body:has([data-frog-nav]) .hero-access{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    width:calc(100vw - 48px)!important;
    max-width:calc(100vw - 48px)!important;
    column-gap:24px!important;
    font-size:11px!important;
  }
  body:has([data-frog-nav]) .hero-access div{
    flex-wrap:nowrap!important;
  }
  body:has([data-frog-nav]) .hero-access div:first-child{
    justify-content:flex-start!important;
    text-align:right!important;
  }
  body:has([data-frog-nav]) .hero-access div:last-child{
    justify-content:flex-start!important;
    text-align:left!important;
  }
  body:has([data-frog-nav]) .hero-access a{
    width:100%!important;
    padding:0 8px!important;
    font-size:8.5px!important;
  }
  body:has([data-frog-nav]) .offer{min-height:0!important;padding:22px 0 46px!important}
  body:has([data-frog-nav]) .contact-grid{padding-bottom:96px!important}
}
