/* Bold navigation and contact accents, with motion kept to user interactions. */
html body.theme-vibrant .wrap>header.reference-header nav.open{background:radial-gradient(ellipse at 25% 30%,#39412866,transparent 60%),radial-gradient(ellipse at 80% 80%,#34303966,transparent 55%),linear-gradient(125deg,#171b16,#141217 80%)!important;gap:10px!important}
html body.theme-vibrant .wrap>header.reference-header nav.open a{position:relative!important;overflow:visible!important;text-decoration:none!important;animation:expressive-menu-in .5s cubic-bezier(.22,1,.36,1) both!important;animation-delay:calc(var(--menu-order,0) * 45ms)!important;transition:color .25s ease!important}
html body.theme-vibrant .wrap>header.reference-header nav.open a:before{content:attr(data-menu-number);position:absolute;right:calc(100% + 8px);top:50%;font-size:11px;letter-spacing:.08em;font-weight:500;color:#abb3a2;transform:translateY(-50%);opacity:0;transition:opacity .2s ease}
html body.theme-vibrant .wrap>header.reference-header nav.open a:is(:hover,:focus-visible){color:#d3f329!important;outline-offset:8px!important}
html body.theme-vibrant .wrap>header.reference-header nav.open a:is(:hover,:focus-visible):before{opacity:1}
html body.theme-vibrant .wrap>header.reference-header nav.open a .menu-word{position:relative;display:block;overflow:hidden;line-height:1.2;padding:0 .035em}
.menu-word>span{display:block;transition:transform .42s cubic-bezier(.22,1,.36,1)}
.menu-word>.menu-echo{position:absolute;inset:0;transform:translateY(110%);color:#d3f329}
nav.open a:is(:hover,:focus-visible) .menu-word>.menu-original{transform:translateY(-110%)}
nav.open a:is(:hover,:focus-visible) .menu-word>.menu-echo{transform:translateY(0)}
html body.theme-vibrant .modern-footer .footer-invitation{position:relative;overflow:hidden;isolation:isolate;gap:40px!important;padding:clamp(30px,4vw,64px)!important;border:1px solid #d3f32925!important;border-radius:24px!important}
html body.theme-vibrant .modern-footer .footer-invitation:before{content:'';position:absolute;width:400px;height:400px;right:-140px;top:-180px;background:radial-gradient(circle,#d3f32918,transparent 68%);z-index:-1;pointer-events:none}
html body.theme-vibrant .modern-footer .footer-contact{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;min-height:76px!important;min-width:290px!important;max-width:100%!important;padding:12px 14px 12px 28px!important;border:1px solid #d3f329!important;border-radius:100px!important;background:#d3f329!important;color:#141810!important;font-size:18px!important;font-weight:800!important;letter-spacing:-.03em!important;text-decoration:none!important;box-shadow:0 8px 30px #10151025!important;transition:transform .25s ease,box-shadow .25s ease,background .25s ease!important}
html body.theme-vibrant .modern-footer .footer-contact .contact-arrow{display:grid!important;place-items:center!important;flex:0 0 50px!important;width:50px!important;height:50px!important;border-radius:50%!important;background:#171d16!important;color:#d3f329!important;font-size:27px!important;transition:transform .3s cubic-bezier(.22,1,.36,1)!important}
html body.theme-vibrant .modern-footer .footer-contact:is(:hover,:focus-visible){transform:translateY(-3px)!important;background:#e0ff45!important;box-shadow:0 12px 40px #d3f32920!important}
html body.theme-vibrant .modern-footer .footer-contact:is(:hover,:focus-visible) .contact-arrow{transform:rotate(45deg)!important}
html body.theme-vibrant .acquisition-primary{transition:transform .25s ease,box-shadow .25s ease!important}
html body.theme-vibrant .acquisition-primary:is(:hover,:focus-visible){transform:translateY(-3px)!important;box-shadow:0 8px 24px #d3f32928!important}
@keyframes expressive-menu-in{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@media(max-width:900px){html body.theme-vibrant .modern-footer .footer-invitation{align-items:flex-start!important;flex-direction:column!important;gap:24px!important}.footer-contact{align-self:flex-start}}
@media(max-width:600px){html body.theme-vibrant .wrap>header.reference-header nav.open{gap:4px!important}html body.theme-vibrant .wrap>header.reference-header nav.open a:before{display:none}html body.theme-vibrant .modern-footer .footer-invitation{padding:26px 20px!important;border-radius:18px!important}html body.theme-vibrant .modern-footer .footer-contact{min-width:0!important;width:100%!important;min-height:64px!important;padding:10px 10px 10px 20px!important;font-size:16px!important;gap:12px!important}html body.theme-vibrant .modern-footer .footer-contact .contact-arrow{width:42px!important;height:42px!important;flex-basis:42px!important;font-size:24px!important}}
@media(prefers-reduced-motion:reduce){html body.theme-vibrant .wrap>header.reference-header nav.open a{animation:none!important}.menu-word>span{transition:none!important}nav.open a:is(:hover,:focus-visible) .menu-word>.menu-original{transform:none}nav.open a:is(:hover,:focus-visible) .menu-word>.menu-echo{display:none}html body.theme-vibrant .modern-footer .footer-contact,html body.theme-vibrant .modern-footer .footer-contact .contact-arrow,html body.theme-vibrant .acquisition-primary{transition:none!important;transform:none!important}}
html body.theme-vibrant .wrap .modern-footer .footer-invitation a.footer-contact span.contact-arrow{color:#d3f329!important}
html body.theme-vibrant .wrap .modern-footer .footer-invitation a.footer-contact>span:not(.contact-arrow){font-size:inherit!important;font-weight:inherit!important;line-height:1.3!important;color:#141810!important;white-space:nowrap}
/* Depth without obscuring content or intercepting clicks. */
html body.theme-vibrant .motion-scene{position:relative!important;isolation:isolate}
.motion-spotlight{position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at var(--light-x,75%) var(--light-y,20%),#d3f32920,transparent 52%);opacity:.75;transition:opacity .6s ease}
@media(hover:hover) and (pointer:fine) and (min-width:901px){
 html body.theme-vibrant .motion-card{rotate:var(--card-axis,1 0 0) var(--card-angle,0deg);transition:rotate .35s ease,transform .35s ease,box-shadow .35s ease!important;backface-visibility:hidden}
 html body.theme-vibrant .motion-card:hover{box-shadow:0 18px 45px #20352416!important}
 html body.theme-vibrant .motion-magnetic{translate:var(--magnet-x,0px) var(--magnet-y,0px);transition:translate .3s ease,transform .3s ease,box-shadow .3s ease!important}
 html body.theme-vibrant .portrait-showcase .showcase-result{animation:showcase-drift 6s ease-in-out infinite;animation-play-state:paused}
 html body.theme-vibrant .portrait-showcase.motion-visible .showcase-result{animation-play-state:running}
 html body.theme-vibrant .portrait-showcase .result-projects{animation-delay:-2s}
 html body.theme-vibrant .portrait-showcase .result-spend{animation-delay:-4s}
 html body.theme-vibrant .showcase-spark{animation:spark-turn 12s ease-in-out infinite;animation-play-state:paused}
 html body.theme-vibrant .portrait-showcase.motion-visible .showcase-spark{animation-play-state:running}
}
html body.theme-vibrant .motion-magnetic:active{scale:.97}
html body.theme-vibrant .motion-paused :is(.showcase-result,.showcase-spark){animation-play-state:paused!important}
@keyframes showcase-drift{0%,100%{translate:0 0}50%{translate:0 -8px}}
@keyframes spark-turn{0%,70%,100%{rotate:0deg}85%{rotate:90deg}}
@media(prefers-reduced-motion:reduce){html body.theme-vibrant :is(.motion-card,.motion-magnetic){rotate:none!important;translate:none!important;scale:none!important}.motion-spotlight{background:radial-gradient(ellipse at 75% 20%,#d3f32912,transparent 52%)}html body.theme-vibrant :is(.showcase-result,.showcase-spark){animation:none!important}}
