/* Innovate Community — article shell synchronized with production pages, 2026-08-11 */
@font-face{font-family:"Advent Pro";src:url("advent-pro-latin.woff2") format("woff2");font-display:swap;font-style:normal;font-weight:300 700}
@font-face{font-family:"Space Grotesk";src:url("space-grotesk-latin.woff2") format("woff2");font-display:swap;font-style:normal;font-weight:300 700}

/* The article stylesheet still contains its retired site-header/site-footer rules.
   These selectors make the production shell independent of them. */
html body > header.nav.ic-unified-nav{font-family:"Advent Pro",Arial,sans-serif!important}
html body > footer.footer-redesign{font-family:"Advent Pro",Arial,sans-serif!important}
html body > footer.footer-redesign *{box-sizing:border-box}
html body > footer.footer-redesign img{max-width:100%;height:auto}
.process-footer{
      position:relative;
      z-index:2;
      margin-top:clamp(70px,8vw,120px);
      padding-top:26px;
      border-top:1px solid rgba(58,29,19,.32);
      display:flex;
      justify-content:space-between;
      gap:30px;
      align-items:center;
      font-size:clamp(22px,2.2vw,38px);
      line-height:1;
      letter-spacing:-.055em;
      color:#3a1d13;
    }
.footer{
      background:#050505;
      color:var(--paper);
      padding:60px clamp(20px,3vw,52px) 30px;
    }
.footer-logo{
      font-size:clamp(50px,10vw,170px);
      line-height:.78;
      letter-spacing:-.09em;
      font-weight:700;
      text-transform:uppercase;
    }
.footer-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:30px;
      border-top:1px solid rgba(255,255,255,.18);
      margin-top:40px;
      padding-top:30px;
    }
@media (max-width:820px){
.hero-bottom,
      .intro,
      .cards,
      .footer-grid{
        grid-template-columns:1fr;
      }
.process-footer{
        display:block;
      }
}
h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .brand,
    .big,
    .clean-title,
    .process-title,
    .footer-logo,
    .hero h1,
    .service h2,
    .service-page h1,
    .service-page h2,
    .marquee{
      font-family:"Space Grotesk", Arial, sans-serif !important;
    }
body,
    p,
    a,
    li,
    span,
    small,
    label,
    input,
    textarea,
    button,
    .pill,
    .eyebrow,
    .label,
    .body,
    .hero-copy,
    .meta,
    .clean-copy,
    .service p,
    .service-page-copy,
    .service-page-kicker,
    .back-link,
    .process-kicker,
    .quote-label,
    .footer-grid{
      font-family:"Advent Pro", Arial, sans-serif !important;
      font-weight:400;
    }
p,
    li,
    a,
    small,
    label,
    input,
    textarea,
    button,
    .pill,
    .eyebrow,
    .label,
    .body,
    .hero-copy,
    .meta,
    .meta *,
    .clean-copy,
    .service p,
    .service-page-copy,
    .service-page-kicker,
    .back-link,
    .process-kicker,
    .quote-label,
    .footer-grid,
    .footer-grid *{
      font-family:"Advent Pro", Arial, sans-serif !important;
      font-weight:400 !important;
    }
h1,
    h1 *,
    h2,
    h2 *,
    h3,
    h3 *,
    h4,
    h4 *,
    h5,
    h5 *,
    h6,
    h6 *,
    .brand,
    .brand *,
    .big,
    .big *,
    .clean-title,
    .clean-title *,
    .process-title,
    .process-title *,
    .footer-logo,
    .footer-logo *,
    .hero h1,
    .hero h1 *,
    .service h2,
    .service h2 *,
    .service-page h1,
    .service-page h1 *,
    .service-page h2,
    .service-page h2 *,
    .marquee,
    .marquee *{
      font-family:"Space Grotesk", Arial, sans-serif !important;
    }
.footer-redesign{
  background:var(--footer-bg,#f6f2eb) !important;
  color:var(--footer-fg,#111) !important;
  padding:0 !important;
  border-top:1px solid var(--footer-line,rgba(17,17,17,.22)) !important;
  overflow:hidden !important;
  isolation:isolate !important;
}
.footer-redesign::before{display:none !important;content:none !important;}
.footer-redesign-inner{position:relative;z-index:2;padding:clamp(54px,6vw,92px) clamp(22px,4vw,72px) 0 !important;}
.footer-redesign-main{display:grid !important;grid-template-columns:minmax(280px,.85fr) minmax(640px,1.65fr) !important;gap:clamp(56px,9vw,150px) !important;align-items:start !important;padding-bottom:clamp(54px,7vw,96px) !important;}
.footer-brand-block{display:flex !important;justify-content:flex-start !important;align-items:flex-start !important;min-height:320px !important;}
.footer-redesign .footer-logo{width:clamp(150px,16vw,220px) !important;max-width:220px !important;min-width:150px !important;display:block !important;margin:0 !important;padding:0 !important;font-size:0 !important;line-height:0 !important;opacity:1 !important;visibility:visible !important;}
.footer-redesign .footer-logo-img{width:100% !important;height:auto !important;display:block !important;opacity:1 !important;visibility:visible !important;object-fit:contain !important;mix-blend-mode:normal !important;filter:var(--footer-logo-filter,contrast(1.12) brightness(.92)) !important;}
.footer-nav-block{display:grid !important;grid-template-columns:repeat(3,minmax(150px,1fr)) !important;gap:clamp(36px,6vw,92px) !important;align-items:start !important;}
.footer-redesign .footer-col{min-width:0 !important;}
.footer-redesign .footer-col h3,.footer-follow h3{font-family:"Space Grotesk",Arial,sans-serif !important;font-size:15px !important;line-height:1 !important;letter-spacing:.07em !important;text-transform:uppercase !important;font-weight:700 !important;margin:0 0 24px !important;color:var(--footer-fg,#111) !important;}
.footer-redesign .footer-col ul{list-style:none !important;padding:0 !important;margin:0 !important;display:grid !important;gap:14px !important;}
.footer-redesign .footer-col li,.footer-redesign .footer-col a{font-family:"Advent Pro",Arial,sans-serif !important;font-size:clamp(18px,1.25vw,22px) !important;line-height:1.18 !important;letter-spacing:-.025em !important;font-weight:400 !important;color:var(--footer-fg,#111) !important;text-decoration:none !important;}
.footer-redesign a{transition:opacity .25s ease,transform .25s ease,color .25s ease;}
.footer-redesign a:hover{color:var(--footer-fg,#111) !important;opacity:1 !important;}
.footer-follow{margin-top:clamp(40px,5vw,70px) !important;padding-top:0 !important;}
.footer-socials{display:flex !important;align-items:center !important;gap:clamp(22px,3vw,46px) !important;position:relative !important;}
.footer-socials::before{content:"" !important;display:block !important;flex:1 1 auto !important;height:1px !important;background:var(--footer-line,rgba(17,17,17,.32)) !important;order:2 !important;max-width:160px !important;}
.footer-socials a{order:1 !important;font-size:clamp(17px,1.1vw,20px) !important;line-height:1 !important;}
.footer-redesign-bottom{border-top:1px solid var(--footer-line,rgba(17,17,17,.32)) !important;min-height:74px !important;display:grid !important;grid-template-columns:1fr auto 1fr !important;align-items:center !important;gap:24px !important;font-family:"Advent Pro",Arial,sans-serif !important;font-size:clamp(15px,1vw,18px) !important;line-height:1 !important;letter-spacing:-.01em !important;color:var(--footer-fg,#111) !important;}
.footer-legal-links{display:flex !important;align-items:center !important;justify-content:center !important;gap:clamp(26px,4vw,58px) !important;}
.footer-redesign-bottom a{color:var(--footer-fg,#111) !important;text-decoration:none !important;}
.back-top{justify-self:end !important;}
.footer-redesign .footer-inner,.footer-redesign .footer-top,.footer-redesign .footer-grid,.footer-redesign .footer-bottom,.footer-redesign .footer-manifesto{all:unset;}
@media (max-width:980px){
.footer-redesign-main{grid-template-columns:1fr !important;gap:44px !important}
.footer-brand-block{min-height:auto !important}
.footer-redesign .footer-logo{width:180px !important;min-width:0 !important}
.footer-nav-block{grid-template-columns:1fr 1fr !important}
.footer-redesign-bottom{grid-template-columns:1fr !important;gap:18px !important;padding:24px 0 !important}
.footer-legal-links{justify-content:flex-start !important;flex-wrap:wrap !important}
.back-top{justify-self:start !important}
}
@media (max-width:640px){
.footer-redesign .footer-logo{width:170px !important}
.footer-nav-block{grid-template-columns:1fr !important}
}
.footer-redesign{
  background:var(--footer-bg,#d7b7ff) !important;
  color:var(--footer-fg,#111) !important;
  padding:0 !important;
  border-top:1px solid var(--footer-line,rgba(17,17,17,.22)) !important;
  overflow:hidden !important;
}
.footer-redesign-inner{position:relative;z-index:2;padding:clamp(54px,6vw,92px) clamp(22px,4vw,72px) 0 !important;}
.footer-redesign-main{display:grid !important;grid-template-columns:minmax(260px,0.9fr) minmax(560px,1.6fr) !important;gap:clamp(56px,9vw,150px) !important;align-items:start !important;padding-bottom:clamp(54px,7vw,96px) !important;}
.footer-brand-block{display:flex !important;align-items:flex-start !important;justify-content:flex-start !important;}
.footer-redesign .footer-logo{width:clamp(220px,25vw,360px) !important;max-width:360px !important;margin:0 !important;padding:0 !important;font-size:0 !important;line-height:0 !important;}
.footer-redesign .footer-logo-img{width:100% !important;max-width:100% !important;height:auto !important;display:block !important;margin:0 !important;mix-blend-mode:multiply !important;filter:var(--footer-logo-filter,contrast(1.08) brightness(.96)) !important;}
.footer-nav-block{display:grid !important;grid-template-columns:repeat(3,minmax(150px,1fr)) !important;gap:clamp(36px,6vw,92px) !important;align-items:start !important;}
.footer-redesign .footer-col h3,.footer-follow h3{font-family:"Space Grotesk",Arial,sans-serif !important;font-size:15px !important;line-height:1 !important;letter-spacing:.07em !important;text-transform:uppercase !important;font-weight:700 !important;margin:0 0 24px !important;color:var(--footer-fg,#111) !important;}
.footer-redesign .footer-col a,.footer-follow a{display:block !important;font-family:"Advent Pro",Arial,sans-serif !important;font-size:clamp(22px,2.1vw,34px) !important;line-height:1.02 !important;letter-spacing:-.045em !important;color:var(--footer-fg,#111) !important;margin:0 0 10px !important;transition:color .22s ease, transform .22s ease !important;}
.footer-redesign .footer-col a:hover,.footer-follow a:hover{color:var(--footer-fg,#111) !important;transform:none !important;}
.footer-bottom{border-top:1px solid var(--footer-line,rgba(17,17,17,.22)) !important;padding:24px 0 !important;display:flex !important;justify-content:space-between !important;gap:24px !important;font-size:13px !important;text-transform:uppercase !important;letter-spacing:.08em !important;color:var(--footer-fg,#111) !important;}
@media (max-width:900px){
.footer-redesign-main,.footer-nav-block{grid-template-columns:1fr !important;}
.footer-bottom{display:block !important;}
}
.nav,
.hero,
section,
.intro,
.process,
.quote,
.footer-redesign-inner,
.footer,
.impact-note{
  padding-left:var(--ic-page-pad) !important;
  padding-right:var(--ic-page-pad) !important;
}
.process-footer{
  max-width:var(--ic-container-lg) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  margin-top:clamp(64px,7vw,96px) !important;
}
.footer-redesign-inner{
  max-width:var(--ic-container-xl) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.footer-redesign .footer-col a:focus-visible,
.footer-redesign-bottom a:focus-visible{color:#111!important;background:#ccff00!important}
.footer-redesign .footer-logo{
  width:clamp(90px,10vw,150px) !important;
  max-width:150px !important;
  min-width:90px !important;
}
.footer-redesign .footer-logo-img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}
a, button, [role="button"],
.project-card, .card, .menu-toggle, .lang-switcher,
.logo, .chat-button, .nav-link, .footer a {
  transition: opacity .35s ease, transform .35s ease, background-color .35s ease, color .35s ease !important;
}
a:hover, button:hover, [role="button"]:hover,
.project-card:hover, .card:hover, .menu-toggle:hover, .lang-switcher:hover,
.logo:hover, .chat-button:hover, .nav-link:hover, .footer a:hover {
  opacity: .88 !important;
}
html body .floating-talk:hover,
html body .floating-talk:focus,
html body .floating-talk:focus-visible,
html body .floating-talk:active,
html body .footer-talk:hover,
html body .footer-talk:focus,
html body .footer-talk:focus-visible,
html body .footer-talk:active,
html body a[href^="mailto:"].floating-talk:hover,
html body a[href^="mailto:"].floating-talk:focus-visible{
  background:var(--ic-acid) !important;
  background-color:var(--ic-acid) !important;
  border-color:var(--ic-acid) !important;
  color:var(--ic-ink) !important;
  -webkit-text-fill-color:var(--ic-ink) !important;
  opacity:1 !important;
  transform:translateY(-2px) !important;
  box-shadow:
    0 16px 42px rgba(204,255,0,.20),
    0 10px 30px rgba(0,0,0,.16) !important;
}
html body .floating-talk:hover *,
html body .floating-talk:focus *,
html body .floating-talk:focus-visible *,
html body .floating-talk:active *,
html body .footer-talk:hover *,
html body .footer-talk:focus *,
html body .footer-talk:focus-visible *,
html body .footer-talk:active *{
  color:var(--ic-ink) !important;
  -webkit-text-fill-color:var(--ic-ink) !important;
}
html body footer a,
html body .footer a,
html body .footer-redesign a,
html body .footer-redesign-bottom a{
  position:relative !important;
  display:inline-block !important;
  transition:
    color .45s ease,
    opacity .45s ease,
    transform .75s var(--ic-ease),
    text-shadow .75s var(--ic-ease) !important;
}
html body footer a::after,
html body .footer a::after,
html body .footer-redesign a::after,
html body .footer-redesign-bottom a::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:-5px !important;
  height:1.5px !important;
  border-radius:999px !important;
  background:var(--ic-acid) !important;
  transform:scaleX(0) !important;
  transform-origin:right center !important;
  transition:transform .75s var(--ic-ease) !important;
  pointer-events:none !important;
}
html body footer a:has(img)::after,
html body .footer a:has(img)::after,
html body .footer-redesign a:has(img)::after,
html body .footer-redesign-bottom a:has(img)::after,
html body footer .floating-talk::after,
html body .footer .floating-talk::after,
html body footer .footer-talk::after,
html body .footer .footer-talk::after{
  display:none !important;
}
html body footer a:hover,
html body footer a:focus-visible,
html body .footer a:hover,
html body .footer a:focus-visible,
html body .footer-redesign a:hover,
html body .footer-redesign a:focus-visible,
html body .footer-redesign-bottom a:hover,
html body .footer-redesign-bottom a:focus-visible{
  color:#fff !important;
  opacity:1 !important;
  transform:translateY(-2px) !important;
  text-shadow:0 0 18px rgba(204,255,0,.22) !important;
}
html body footer a:hover::after,
html body footer a:focus-visible::after,
html body .footer a:hover::after,
html body .footer a:focus-visible::after,
html body .footer-redesign a:hover::after,
html body .footer-redesign a:focus-visible::after,
html body .footer-redesign-bottom a:hover::after,
html body .footer-redesign-bottom a:focus-visible::after{
  transform:scaleX(1) !important;
  transform-origin:left center !important;
}
html body footer h2:hover,
html body footer h3:hover,
html body footer h4:hover,
html body .footer h2:hover,
html body .footer h3:hover,
html body .footer h4:hover,
html body .footer-redesign h2:hover,
html body .footer-redesign h3:hover,
html body .footer-redesign h4:hover{
  text-shadow:0 0 20px rgba(204,255,0,.18) !important;
}
html body .floating-talk:focus-visible,
html body .footer-talk:focus-visible,
html body footer a:focus-visible,
html body .footer a:focus-visible,
html body .footer-redesign a:focus-visible{
  outline:2px solid var(--ic-acid) !important;
  outline-offset:4px !important;
}
html body footer .footer-logo-link::after,
html body .footer .footer-logo-link::after,
html body .footer-redesign .footer-logo-link::after{
  display:none !important;
}
@media (prefers-reduced-motion:reduce){
html body .floating-talk,
  html body .footer-talk,
  html body footer a,
  html body .footer a,
  html body .footer-redesign a,
  html body .footer-redesign-bottom a,
  html body footer a::after,
  html body .footer a::after,
  html body .footer-redesign a::after,
  html body .footer-redesign-bottom a::after{
    transition:none !important;
    transform:none !important;
  }
}
.footer-redesign-inner{max-width:none!important;width:100%!important}
@media (min-width:981px){
html body footer.footer-redesign .footer-redesign-inner{
    padding:clamp(54px,6vw,92px) clamp(22px,4vw,72px) 0!important;
  }
html body footer.footer-redesign .footer-redesign-main{
    display:grid!important;
    grid-template-columns:minmax(210px,.62fr) minmax(0,1.72fr)!important;
    gap:clamp(54px,7vw,118px)!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
  }
html body footer.footer-redesign .footer-brand-block{
    min-width:0!important;
    min-height:300px!important;
  }
html body footer.footer-redesign .footer-logo{
    width:clamp(118px,10vw,150px)!important;
    min-width:0!important;
    max-width:150px!important;
  }
html body footer.footer-redesign .footer-nav-block{
    display:grid!important;
    grid-template-columns:minmax(150px,1fr) minmax(185px,1.18fr) minmax(190px,1fr)!important;
    gap:clamp(38px,5vw,82px)!important;
    min-width:0!important;
    width:100%!important;
  }
html body footer.footer-redesign .footer-col,
  html body footer.footer-redesign .footer-col *{min-width:0!important}
html body footer.footer-redesign .footer-col a{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}
html body.page-service footer.footer-redesign {--footer-bg:#f6f2eb !important; --footer-fg:#111 !important; --footer-line:rgba(17,17,17,.22) !important; --footer-hover:#9d1000 !important; --footer-logo-filter:contrast(1.12) brightness(.92) !important; background:#f6f2eb !important; color:#111 !important;}

/* Keep the redesigned footer visible and in the normal document flow on article pages. */
html body > footer.footer-redesign{position:relative!important;z-index:3!important;width:100%!important}
