/* ClickBurst footer v2 — shared by home and /portfolio. Brand palette: ink #111111, off-white #FFFDF8 / #F4F1EA, warm greys, lime #D8FF3E, blue #2457FF. */
.cbf{--cbf-ink:#111111;--cbf-ink-2:#171717;--cbf-white:#FFFDF8;--cbf-paper:#F4F1EA;--cbf-grey:#B3AFA6;--cbf-grey-2:#85817A;--cbf-line:rgba(244,241,234,.1);--cbf-lime:#D8FF3E;--cbf-blue:#2457FF;--cbf-display:"Space Grotesk",system-ui,sans-serif;--cbf-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--cbf-ease:cubic-bezier(.16,1,.3,1)}
footer.cbf{position:relative;overflow:hidden;isolation:isolate;margin:0;padding:0;background:var(--cbf-ink);color:var(--cbf-white);font-family:var(--cbf-sans);border-top:0;text-align:left}
.cbf *,.cbf *::before,.cbf *::after{box-sizing:border-box}
.cbf a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
.cbf a:focus-visible{outline:2px solid var(--cbf-lime);outline-offset:4px;border-radius:10px}
.cbf::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(216,255,62,.7) 30%,rgba(36,87,255,.55) 70%,transparent);opacity:.9;z-index:1}
.cbf-glow{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.cbf-glow::before,.cbf-glow::after{content:"";position:absolute;border-radius:50%;filter:blur(70px)}
.cbf-glow::before{width:min(70vw,760px);height:min(70vw,760px);left:-18%;top:-34%;background:radial-gradient(circle,rgba(216,255,62,.16),rgba(216,255,62,0) 65%);animation:cbfDrift 16s ease-in-out infinite alternate}
.cbf-glow::after{width:min(60vw,620px);height:min(60vw,620px);right:-20%;bottom:-10%;background:radial-gradient(circle,rgba(36,87,255,.14),rgba(36,87,255,0) 65%);animation:cbfDrift 19s ease-in-out infinite alternate-reverse}
@keyframes cbfDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(6%,8%,0)}}
.cbf-wrap{width:min(1280px,calc(100% - 48px));margin:0 auto;position:relative}

/* 1. CTA band */
.cbf-cta{display:grid;grid-template-columns:1fr auto;align-items:end;gap:28px 48px;padding:clamp(72px,9vw,120px) 0 clamp(48px,6vw,72px);border-bottom:1px solid var(--cbf-line)}
.cbf-kicker{display:flex;align-items:center;gap:10px;margin:0 0 22px;font:700 10px/1.4 var(--cbf-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--cbf-grey-2)}
.cbf-kicker i{width:8px;height:8px;border-radius:50%;background:var(--cbf-lime);box-shadow:0 0 0 4px rgba(216,255,62,.14),0 0 18px rgba(216,255,62,.6);flex:0 0 auto}
.cbf-burst{display:inline-flex;align-items:center;gap:clamp(16px,2.2vw,30px);font:700 clamp(54px,9.6vw,148px)/.86 var(--cbf-display);letter-spacing:-.065em;color:var(--cbf-white);transition:color .45s var(--cbf-ease)}
.cbf-burst-text{position:relative;padding-bottom:.06em}
.cbf-burst-text::after{content:"";position:absolute;left:0;right:0;bottom:-.02em;height:.07em;background:var(--cbf-lime);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--cbf-ease)}
.cbf-burst-arrow{flex:0 0 auto;display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:var(--cbf-lime);color:var(--cbf-ink);font:700 .42em/1 var(--cbf-display);letter-spacing:0;box-shadow:0 0 0 0 rgba(216,255,62,.45),0 18px 50px -12px rgba(216,255,62,.45);transition:transform .55s var(--cbf-ease),box-shadow .55s var(--cbf-ease)}
.cbf-burst:hover .cbf-burst-text::after,.cbf-burst:focus-visible .cbf-burst-text::after{transform:scaleX(1)}
.cbf-burst:hover .cbf-burst-arrow,.cbf-burst:focus-visible .cbf-burst-arrow{transform:rotate(-45deg) scale(1.06);box-shadow:0 0 0 10px rgba(216,255,62,.12),0 22px 60px -10px rgba(216,255,62,.6)}
.cbf-lede{max-width:300px;margin:0 0 .5em;font:500 15px/1.6 var(--cbf-sans);color:var(--cbf-grey)}

/* 2. Contact + nav */
.cbf-mid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px 64px;padding:clamp(40px,5vw,60px) 0;border-bottom:1px solid var(--cbf-line)}
.cbf-contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.cbf-contact li{min-width:0}
.cbf-contact .cbf-mail{grid-column:1/-1}
.cbf-chip{display:flex;align-items:center;gap:14px;min-height:64px;padding:10px 18px 10px 10px;border:1px solid var(--cbf-line);border-radius:18px;background:linear-gradient(180deg,rgba(255,253,248,.045),rgba(255,253,248,.015));transition:transform .4s var(--cbf-ease),border-color .4s var(--cbf-ease),background .4s var(--cbf-ease),box-shadow .4s var(--cbf-ease)}
.cbf-chip-ico{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:rgba(216,255,62,.1);color:var(--cbf-lime);transition:background .4s var(--cbf-ease),color .4s var(--cbf-ease)}
.cbf-chip-ico svg{width:20px;height:20px;display:block}
.cbf-chip-txt{min-width:0;font:600 15px/1.25 var(--cbf-sans);letter-spacing:.01em;color:#E6E6E6;overflow-wrap:break-word}
.cbf-chip-go{margin-left:auto;flex:0 0 auto;color:var(--cbf-grey-2);font:600 14px/1 var(--cbf-sans);transition:transform .4s var(--cbf-ease),color .4s var(--cbf-ease)}
.cbf-chip:hover,.cbf-chip:focus-visible{transform:translateY(-3px);border-color:rgba(216,255,62,.45);background:linear-gradient(180deg,rgba(216,255,62,.08),rgba(216,255,62,.02));box-shadow:0 18px 40px -22px rgba(216,255,62,.5)}
.cbf-chip:hover .cbf-chip-ico,.cbf-chip:focus-visible .cbf-chip-ico{background:var(--cbf-lime);color:var(--cbf-ink)}
.cbf-chip:hover .cbf-chip-go,.cbf-chip:focus-visible .cbf-chip-go{color:var(--cbf-lime);transform:translate(2px,-2px)}
.cbf-nav{display:flex;gap:48px;align-items:flex-start}
.cbf-nav ul{flex:1 1 0}
.cbf-nav ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;min-width:0}
.cbf-nav-head{font:700 10px/1.4 var(--cbf-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--cbf-grey-2);margin:0 0 8px}
.cbf-nav a{display:inline-flex;align-items:center;gap:0;min-height:36px;font:600 15px/1.2 var(--cbf-sans);color:var(--cbf-grey);transition:color .3s var(--cbf-ease),transform .3s var(--cbf-ease)}
.cbf-nav a::before{content:"";width:0;height:2px;margin-right:0;border-radius:2px;background:var(--cbf-lime);transition:width .35s var(--cbf-ease),margin .35s var(--cbf-ease)}
.cbf-nav a:hover,.cbf-nav a:focus-visible{color:var(--cbf-white)}
.cbf-nav a:hover::before,.cbf-nav a:focus-visible::before{width:14px;margin-right:8px}
.cbf-nav ul.cbf-nav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 40px}

/* 3. Wordmark ending */
.cbf-mark{padding:clamp(44px,6vw,80px) 0 clamp(18px,2vw,28px)}
.cbf-mark-row{display:flex;align-items:center;gap:clamp(12px,2vw,30px);line-height:1}
.cbf-mark-logo{flex:0 0 auto;display:block;width:clamp(52px,12.5vw,190px);height:auto;aspect-ratio:1;border-radius:22.5%;box-shadow:0 30px 80px -30px rgba(216,255,62,.55);transition:transform .6s var(--cbf-ease)}
.cbf-mark-logo:hover{transform:rotate(-6deg) scale(1.03)}
.cbf-word{display:block;min-width:0;margin:0;font:700 clamp(58px,17.4vw,250px)/.8 var(--cbf-display);letter-spacing:-.075em;white-space:nowrap;color:transparent;-webkit-text-stroke:1.5px var(--cbf-lime);background:linear-gradient(100deg,rgba(216,255,62,0) 0%,rgba(216,255,62,0) 38%,rgba(216,255,62,.95) 50%,rgba(216,255,62,0) 62%,rgba(216,255,62,0) 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;padding:.04em .05em .1em 0;animation:cbfSheen 9s ease-in-out infinite}
@keyframes cbfSheen{0%,35%{background-position:100% 0}75%,100%{background-position:0 0}}
.cbf-mark-sub{margin:clamp(18px,2vw,26px) 0 0;font:700 10px/1.6 var(--cbf-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--cbf-grey-2)}
.cbf-mark-sub b{color:var(--cbf-lime);font-weight:700}

/* 4. Bottom bar */
.cbf-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 24px;padding:22px 0 30px;border-top:1px solid var(--cbf-line);font:500 12px/1.6 var(--cbf-sans);color:var(--cbf-grey-2)}
.cbf-bottom-right{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px}
.cbf-top{color:var(--cbf-grey);transition:color .3s var(--cbf-ease)}
.cbf-top:hover,.cbf-top:focus-visible{color:var(--cbf-lime)}

@media (max-width:980px){
  .cbf-mid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .cbf-wrap{width:calc(100% - 36px)}
  .cbf-cta{grid-template-columns:1fr;padding:72px 0 44px}
  .cbf-kicker{margin-bottom:18px;font-size:9px}
  .cbf-burst{font-size:clamp(50px,15.5vw,84px)}
  .cbf-lede{font-size:14px;max-width:none}
  .cbf-contact{grid-template-columns:1fr 1fr;gap:10px}
  .cbf-contact .cbf-wide{grid-column:1/-1}
  .cbf-nav ul.cbf-nav-grid{gap:0 24px}
  .cbf-contact li:not(.cbf-wide) .cbf-chip-go{display:none}
  .cbf-contact li:not(.cbf-wide) .cbf-chip{padding-right:10px}
  .cbf-chip{min-height:58px;padding:8px 14px 8px 8px;gap:12px;border-radius:16px}
  .cbf-chip-ico{width:40px;height:40px;border-radius:12px}
  .cbf-chip-txt{font-size:14px}
  .cbf-nav{gap:32px}
  .cbf-word{-webkit-text-stroke-width:1.2px}
  .cbf-bottom{flex-direction:column;align-items:flex-start;padding-bottom:28px}
  .cbf-bottom-right{flex-direction:column;align-items:flex-start;gap:6px}
}
@media (prefers-reduced-motion:reduce){
  .cbf-glow::before,.cbf-glow::after,.cbf-word{animation:none}
  .cbf-word{background:none;-webkit-background-clip:border-box;background-clip:border-box}
  .cbf *{transition:none!important}
  .cbf-chip:hover,.cbf-chip:focus-visible,.cbf-mark-logo:hover{transform:none}
}

/* Tools we work with — marquee strip above the footer (shared). */
.cbt{--cbt-lime:#D8FF3E;position:relative;overflow:hidden;background:#111111;color:#FFFDF8;border-top:1px solid rgba(244,241,234,.1);padding:clamp(26px,3vw,38px) 0;font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif}
.cbt *{box-sizing:border-box}
.cbt-inner{display:flex;align-items:center;gap:clamp(18px,3vw,48px);width:min(1280px,calc(100% - 48px));margin:0 auto}
.cbt-label{flex:0 0 auto;display:flex;align-items:center;gap:10px;margin:0;font:700 10px/1.4 "Inter",system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#85817A;white-space:nowrap}
.cbt-label i{width:8px;height:8px;border-radius:50%;background:var(--cbt-lime);box-shadow:0 0 0 4px rgba(216,255,62,.14)}
.cbt-viewport{position:relative;flex:1 1 auto;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.cbt-track{display:flex;width:max-content;animation:cbtScroll 32s linear infinite;will-change:transform}
.cbt-viewport:hover .cbt-track,.cbt-viewport:focus-within .cbt-track{animation-play-state:paused}
.cbt-list{display:flex;align-items:center;flex:0 0 auto;margin:0;padding:0;list-style:none}
.cbt-list li{display:flex;align-items:center;white-space:nowrap;font:700 clamp(22px,2.6vw,36px)/1 "Space Grotesk",system-ui,sans-serif;letter-spacing:-.04em;color:#E6E6E6;transition:color .35s cubic-bezier(.16,1,.3,1)}
.cbt-list li::after{content:"✦";display:inline-block;margin:0 clamp(18px,2.4vw,34px);font-size:.5em;color:var(--cbt-lime);transform:translateY(-.08em)}
.cbt-list li:nth-child(even){color:transparent;-webkit-text-stroke:1px rgba(255,253,248,.7)}
.cbt-list li:hover{color:var(--cbt-lime);-webkit-text-stroke:0}
@keyframes cbtScroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media (max-width:760px){
  .cbt-inner{width:100%;flex-direction:column;align-items:flex-start;gap:16px}
  .cbt-label{padding:0 18px;font-size:9px}
  .cbt-viewport{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .cbt-track{animation:none;width:auto;flex-wrap:wrap}
  .cbt-list{flex-wrap:wrap;row-gap:12px}
  .cbt-list[aria-hidden="true"]{display:none}
  .cbt-viewport{-webkit-mask-image:none;mask-image:none}
}

/* static wordmark, no sheen */
.cbf-word{animation:none!important;background:none!important}

/* v3: plain, hand-made look — no glows, no gradients, solid wordmark */
.cbf::before{display:none!important}
.cbf-glow,.cbf-glow::before,.cbf-glow::after{display:none!important;animation:none!important}
.cbf-kicker i{box-shadow:none!important}
.cbf-burst:hover .cbf-burst-arrow,.cbf-burst:focus-visible .cbf-burst-arrow{box-shadow:none!important}
.cbf-chip{background:transparent!important;box-shadow:none!important;border-radius:10px!important}
.cbf-chip:hover,.cbf-chip:focus-visible{background:rgba(255,253,248,.04)!important;box-shadow:none!important;transform:none!important}
.cbf-mark-logo{box-shadow:none!important;border-radius:14%!important}
.cbf-word{color:#FFFDF8!important;-webkit-text-stroke:0!important;background:none!important;letter-spacing:-.06em!important}
