/* Additive animation layer. Original styles.css is preserved verbatim. */
.motion-control{position:fixed;right:18px;bottom:18px;z-index:50;border:1px solid #f36b2144;border-radius:30px;background:#fffefbf2;box-shadow:0 5px 20px #09142622;color:#172337;padding:10px 16px;font:600 12px "Segoe UI",sans-serif;cursor:pointer;backdrop-filter:blur(8px)}
.reading-progress{position:fixed;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,#075a9c,#11a7b8,#f36b21);transform:scaleX(0);transform-origin:left;z-index:60;pointer-events:none}
.product-card h3 a,.solution-card h3 a{color:inherit;text-decoration:none}.product-card h3 a:hover,.solution-card h3 a:hover{color:var(--blue)}
.product-card,.solution-card,.staff-card,.proof-grid article{transition:box-shadow .3s,border-color .3s,translate .3s;will-change:auto}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.product-card:hover,.solution-card:hover,.staff-card:hover,.proof-grid article:hover{translate:0 -5px;box-shadow:0 18px 35px #075a9c22;border-color:#11a7b877}.product-photo img,.solution-photo img,.proof-grid article img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}.solution-card:hover img,.proof-grid article:hover img{transform:scale(1.035)}}
.anniversary-mascot,.tech-orbit>img{animation:bt-float 5s ease-in-out infinite}.anniversary-logo{animation:bt-float 6s ease-in-out -2s infinite}.anniversary-badge{animation:bt-badge 4s ease-in-out infinite}.anniversary-stage::before{animation:bt-ring 36s linear infinite}.anniversary-stage::after{animation:bt-ring 28s linear reverse infinite}.tech-orbit::before{animation:bt-ring 28s linear infinite}.tech-orbit::after{animation:bt-ring 35s linear reverse infinite}.signal-card-top{animation:bt-float 6s ease-in-out -2s infinite}.signal-card-bottom{animation:bt-float 7s ease-in-out -4s infinite}.about-mascot-line img,.inquiry-mascot{animation:bt-float 6s ease-in-out infinite}.signal-card>span{animation:bt-signal 3s ease-in-out infinite}
.reward-grid span{animation:bt-reward 5s ease-in-out infinite}.reward-grid span:nth-child(2){animation-delay:.6s}.reward-grid span:nth-child(3){animation-delay:1.2s}.reward-grid span:nth-child(4){animation-delay:1.8s}
.hero-slide.is-active .hero-copy,.hero-slide.is-active .anniversary-copy{animation:bt-arrive .9s cubic-bezier(.2,.7,.2,1) both}.hero-slide.is-active .hero-panel,.hero-slide.is-active .anniversary-stage{animation:bt-arrive 1.1s cubic-bezier(.2,.7,.2,1) both}
.btn,.carousel-arrow,.nav-cta{transition:translate .2s,box-shadow .2s,background .2s}.btn:hover,.nav-cta:hover{translate:0 -2px;box-shadow:0 8px 20px #f36b2125}.carousel-arrow:hover{box-shadow:0 0 0 5px #11a7b814}
.about-capabilities span{transition:background .25s,color .25s,translate .25s}.about-capabilities span:hover{background:#075a9c;color:white;translate:0 -3px}
.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation-play-state:paused!important}.motion-paused{scroll-behavior:auto}.motion-paused .product-grid,.motion-paused .solutions-grid,.motion-paused .staff-grid{scroll-behavior:auto}
@keyframes bt-float{50%{translate:0 -10px}}@keyframes bt-ring{to{rotate:360deg}}@keyframes bt-badge{50%{box-shadow:0 0 0 12px #f36b2110,0 18px 42px #09142622}}@keyframes bt-signal{50%{opacity:.45;box-shadow:0 0 15px #11a7b8aa}}@keyframes bt-reward{0%,75%,100%{border-color:#13b5c852}35%{border-color:#f36b21;box-shadow:0 0 16px #f36b2122}}@keyframes bt-arrive{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:600px){.motion-control{bottom:10px;right:10px;padding:8px 12px;font-size:11px}}

#top { scroll-margin-top: 68px; }

/* Stronger depth and light, contained within the existing artwork. */
.bt-depth-panel{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .35s ease-out;isolation:isolate}
.bt-energy-field{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:0}
.bt-energy-field i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:#61e7f2;box-shadow:0 0 9px #11a7b8,0 0 20px #11a7b877;animation:bt-drift var(--duration) linear var(--delay) infinite}
.bt-energy-field i:nth-child(3n){background:#ffb47a;box-shadow:0 0 10px #f36b21;width:4px;height:4px}
.bt-energy-sweep{position:absolute;inset:-60%;background:conic-gradient(from 0deg,transparent 0deg,transparent 315deg,#11a7b815 340deg,transparent 360deg);animation:bt-ring 18s linear infinite;opacity:.8}
.anniversary-stage::before,.tech-orbit::before{border-style:dashed;border-color:#19d4e577;box-shadow:0 0 25px #11a7b818,inset 0 0 22px #11a7b810}
.anniversary-stage::after,.tech-orbit::after{border-top:2px solid #ff9b57;box-shadow:0 0 18px #f36b2114}
.anniversary-badge{filter:drop-shadow(0 0 13px #f36b2133)}
.signal-card{backdrop-filter:blur(10px)}
.product-showcase{position:relative}.product-showcase::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,#ffffff16 48%,transparent 61%);translate:-100% 0;animation:bt-showcase-light 12s ease-in-out infinite}
@keyframes bt-drift{0%{translate:0 20px;opacity:0}20%,70%{opacity:.8}100%{translate:18px -65px;opacity:0}}
@keyframes bt-showcase-light{0%,65%{translate:-100% 0}95%,100%{translate:100% 0}}
.motion-paused .bt-depth-panel{transform:none;transition:none}
@media(prefers-reduced-motion:reduce){.bt-depth-panel{transform:none!important}.bt-energy-field,.product-showcase::after{display:none}}
@media(max-width:650px){.bt-energy-field i:nth-child(2n){display:none}.bt-depth-panel{transform:none}}
/* Label both original slides so the second panel is easy to discover. */
.hero:not(.managed-banners) .hero-controls{position:absolute;top:34px;right:40px;bottom:auto;z-index:5;display:flex;gap:8px}
.hero:not(.managed-banners) .hero-dot{width:auto;height:auto;min-height:32px;padding:7px 12px;border:1px solid #668392;border-radius:20px;background:#102c40;color:#dbe8ef;font:500 11px/1.4 "Segoe UI",sans-serif;cursor:pointer}
.hero:not(.managed-banners) .hero-dot.is-active{background:#ffad73;border-color:#ffad73;color:#102c40}
@media(max-width:760px){.hero:not(.managed-banners) .hero-controls{top:24px;right:26px}.hero:not(.managed-banners) .hero-dot{font-size:10px;padding:6px 9px}.hero:not(.managed-banners) .anniversary-hero,.hero:not(.managed-banners) .hero-grid{padding-top:75px}}
/* Original compact indicators; accessible labels remain on the buttons. */
.hero:not(.managed-banners) .hero-controls{top:auto;bottom:18px;right:40px;gap:10px;align-items:center}
.hero:not(.managed-banners) .hero-dot{position:relative;width:38px;height:8px;min-height:8px;padding:0;border:0;border-radius:8px;background:#617584;font-size:0}
.hero:not(.managed-banners) .hero-dot:before{content:"";position:absolute;inset:-12px 0}
.hero:not(.managed-banners) .hero-dot.is-active{background:#f47732}
@media(max-width:760px){.hero:not(.managed-banners) .hero-controls{top:auto;bottom:18px;right:26px}.hero:not(.managed-banners) .hero-dot{width:38px;height:8px;min-height:8px;padding:0;font-size:0}}
/* Second-slide pattern only: connected traces around the original mascot. */
.hero-panel::before{inset:0;border:0;border-radius:50%;transform:none;background:radial-gradient(ellipse at center,#2494aa25,transparent 65%);box-shadow:none}
.hero-panel .tech-orbit::before,.hero-panel .tech-orbit::after{display:none}
.bt-network-pattern{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;fill:none}
.network-tracks{stroke:#72b9cc;stroke-opacity:.3;stroke-width:1}
.network-flow{stroke:#70dfec;stroke-width:2;stroke-dasharray:18 290;animation:bt-data-trace 7s linear infinite;filter:drop-shadow(0 0 4px #48cde4)}
.network-rings{transform-origin:280px 220px;animation:bt-pattern-orbit 40s linear infinite}
.network-rings circle:first-child{stroke:#5babbe;stroke-opacity:.38;stroke-width:1;stroke-dasharray:170 38 8 38}
.network-rings circle:last-child{stroke:#e99c65;stroke-opacity:.55;stroke-width:1;stroke-dasharray:80 195}
.network-nodes{fill:#eca365;stroke:#ffc99855;stroke-width:5}
@keyframes bt-data-trace{to{stroke-dashoffset:-308}}
@keyframes bt-pattern-orbit{to{transform:rotate(360deg)}}
.motion-paused .network-flow,.motion-paused .network-rings{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.network-flow,.network-rings{animation:none}}

.motion-control.motion-choice{display:flex;gap:3px;padding:5px;background:#102b3ff2;border:1px solid #81cde55c;border-radius:12px;box-shadow:0 6px 24px #0017292b;backdrop-filter:blur(14px)}
.motion-choice button{display:flex;align-items:center;gap:6px;border:0;border-radius:8px;padding:9px 12px;font:600 11px/1.2 inherit;font-family:inherit;color:#c3d9e7;background:transparent;cursor:pointer;min-height:36px}
.motion-choice button[aria-pressed="true"]{color:#082437;background:#83dff0;box-shadow:0 2px 9px #0002}
.motion-choice button:focus-visible{outline:2px solid #ffad70;outline-offset:2px}
.motion-static *,.motion-static *::before,.motion-static *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.motion-static .bt-depth-panel{transform:none!important}
@media(max-width:600px){.motion-control.motion-choice{bottom:10px;right:10px}.motion-choice button{padding:8px 10px}}
.hero .motion-control.motion-choice{position:relative;inset:auto;margin:14px 0 0 auto;width:fit-content;z-index:2;box-shadow:0 3px 12px #00172918}
/* Keep both panels rendered and move one track, rather than hide/show slides. */
.hero-slide-track{display:flex;width:100%;align-items:stretch;transition:transform 950ms cubic-bezier(.65,0,.25,1);will-change:transform}
.hero-slider .hero-slide-track>.hero-slide{display:grid;flex:0 0 100%;width:100%;min-width:0;height:auto;box-sizing:border-box}
.hero-slide-track .hero-copy,.hero-slide-track .anniversary-copy,.hero-slide-track .hero-panel,.hero-slide-track .anniversary-stage{animation:none!important}
.hero.motion-static .hero-slide-track{transition:none}
@media(prefers-reduced-motion:reduce){.hero-slide-track{transition:none}}
