/* Bright CTA sections, rather than black panels with only a red button. */
body .cta-block,body .cta-band,body .v2-blog-cta{background:#d93324!important;background-image:none!important;color:#fff!important;border:0!important;padding-top:72px;padding-bottom:72px}
body .cta-block h2,body .cta-band h2,body .v2-blog-cta h2{color:#0a0a09!important}
body .cta-block p,body .cta-band p,body .v2-blog-cta p{color:#fff!important}
body .cta-block .btn,body .cta-band .btn,body .v2-blog-cta .v2-blog-button{background:#f7f5f1!important;color:#0a0a09!important;border:2px solid #f7f5f1!important}
body .cta-block .btn:hover,body .cta-band .btn:hover,body .v2-blog-cta .v2-blog-button:hover,body .cta-block .btn:active,body .cta-band .btn:active,body .v2-blog-cta .v2-blog-button:active{background:#f7f5f1!important;color:#0a0a09!important}
body.unified-site .about-hero,body.unified-site .services-hero,body.unified-site .portfolio-page-hero,body.unified-site .contact-hero,body.unified-site .blog-hero{margin-bottom:0;padding-bottom:80px}
.grin-seam,.grin-cap,.blog-hero-seam{display:none!important}
.r3-portfolio-stage{background:#0a0a09;color:#f7f5f1;padding:64px 24px 48px;overflow:hidden}
.r3-web-intro{max-width:1200px;margin:0 auto 12px;display:grid;grid-template-columns:1fr auto;gap:14px 24px;align-items:center}
.r3-web-intro h2{font:400 clamp(38px,4vw,58px)/1.05 'League Gothic',sans-serif;text-transform:uppercase;margin:0}
.r3-web-intro p{grid-column:1;font:14px/1.7 Manrope,sans-serif;color:#c7c5be;margin:0}
.r3-motion-toggle{grid-column:2;grid-row:1/3;color:#f7f5f1;background:transparent;border:1px solid #77766e;padding:12px 16px;font:700 11px Manrope,sans-serif;cursor:pointer}
.r3-logo-web{position:relative;height:820px;max-width:1200px;margin:0 auto;isolation:isolate}
.r3-web-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:-1}
.r3-web-lines line{stroke:#aaa69c;stroke-opacity:.22;stroke-width:1;vector-effect:non-scaling-stroke}
.r3-web-lines .r3-red-thread{stroke:#ed5c4f;stroke-opacity:.36}
body #page-portfolio .r3-logo-node{position:absolute;left:var(--node-x);top:var(--node-y);width:175px;height:110px;transform:translate(-50%,-50%);appearance:none;border:0;border-radius:0;background:radial-gradient(ellipse,#0a0a09 50%,transparent 74%);box-shadow:none;color:#f7f5f1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:12px;cursor:pointer;animation:r3-logo-drift var(--float-duration) ease-in-out var(--float-delay) infinite;will-change:transform}
body #page-portfolio .r3-logo-node:hover,body #page-portfolio .r3-logo-node:focus-visible{animation-play-state:paused;outline:1px solid #ed5c4f;outline-offset:7px;background:#151412}
body #page-portfolio .r3-logo-node .client-logo-cover{display:flex;align-items:center;justify-content:center;width:150px!important;height:62px!important;max-width:100%;font-size:32px!important;color:#f7f5f1!important;transform:none!important;line-height:1.05;padding:0!important}
body #page-portfolio .r3-logo-node .client-logo-cover img{display:block;width:100%;height:100%;object-fit:contain;transform:none!important;filter:brightness(0) invert(1)!important}
body #page-portfolio .r3-logo-node .client-logo-counsel img{filter:grayscale(1) brightness(1.3)!important}
body #page-portfolio .r3-logo-node .client-logo-junkyard img,body #page-portfolio .r3-logo-node .client-logo-uptown img{filter:grayscale(1) invert(1)!important}
body #page-portfolio .r3-logo-node .client-logo-kidtrain{overflow:hidden}
body #page-portfolio .r3-logo-node .client-logo-kidtrain img{transform:scale(1.85)!important}
body #page-portfolio .r3-logo-node .v2-client-label{font:600 10px/1.4 Manrope,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#c7c5be!important;white-space:normal}
.r3-logo-web.is-paused .r3-logo-node{animation-play-state:paused!important}
@keyframes r3-logo-drift{0%,100%{transform:translate(-50%,-50%) translate(-3px,3px)}50%{transform:translate(-50%,-50%) translate(4px,-5px)}}
@media(max-width:900px){.r3-logo-web{height:920px}.r3-logo-web .r3-logo-node{left:calc(18% + mod(var(--node-index),3)*32%)}.r3-web-intro{display:block}.r3-motion-toggle{margin-top:20px}}
@media(max-width:600px){.r3-logo-web{height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px;padding:36px 0}.r3-web-lines{display:none}body #page-portfolio .r3-logo-web .r3-logo-node{position:relative;left:auto!important;top:auto!important;width:100%;height:128px;transform:none;animation:r3-mobile-drift var(--float-duration) ease-in-out var(--float-delay) infinite}.r3-portfolio-stage{padding:48px 24px}.r3-web-intro h2{font-size:38px}body #page-portfolio .r3-logo-node .client-logo-cover{width:125px!important;font-size:26px!important}body #page-portfolio .r3-logo-node .v2-client-label{font-size:9px}}
@keyframes r3-mobile-drift{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){body #page-portfolio .r3-logo-node{animation:none!important;will-change:auto}}
@media(min-width:601px) and (max-width:900px){body #page-portfolio .r3-logo-node:nth-of-type(3n+1){left:17%}body #page-portfolio .r3-logo-node:nth-of-type(3n+2){left:50%}body #page-portfolio .r3-logo-node:nth-of-type(3n){left:83%}body #page-portfolio .r3-logo-node{top:12%}body #page-portfolio .r3-logo-node:nth-of-type(n+4){top:36%}body #page-portfolio .r3-logo-node:nth-of-type(n+7){top:60%}body #page-portfolio .r3-logo-node:nth-of-type(n+10){top:84%}}
body #page-portfolio .r3-logo-node .client-logo-dinesafe img{filter:grayscale(1) invert(1)!important}
body #page-portfolio .r3-logo-node .client-logo-kidtrain img{transform:scale(2.4)!important}
body #page-portfolio .r3-logo-node .client-logo-wordmark{font-size:52px!important}
body .r3-cta{background:#d93324!important;color:#fff!important}
body .r3-cta h2{color:#0a0a09!important}body .r3-cta p{color:#fff!important}
body .r3-cta .btn,body .r3-cta .btn:hover,body .r3-cta .btn:active{background:#f7f5f1!important;color:#0a0a09!important;border-color:#f7f5f1!important}
@media(max-width:600px){body #page-portfolio .r3-logo-node .client-logo-charity{font-size:17px!important}body #page-portfolio .r3-logo-node .client-logo-stick{font-size:22px!important}body #page-portfolio .r3-logo-node .client-logo-blender{font-size:20px!important}}
/* Conversion copy remains visible independently of legacy scroll-reveal timing. */
body .cta-block .cta-inner,body .cta-block .cta-copy,body .cta-block .cta-actions,body .cta-block h2,body .cta-block p,body .cta-band .cta-band-inner,body .cta-band h2,body .cta-band p,body .r3-cta h2,body .r3-cta p{opacity:1!important;visibility:visible!important;transform:none!important}
