/* Soft controls and slow ambient motion in the Nabytech brand palette. */
.button,.button-small,.reader-control,.carousel-button,.filter-button,.menu-toggle{border-radius:12px;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .25s ease,transform .25s cubic-bezier(.22,1,.36,1)}
.button,.button-small{padding:17px 24px;box-shadow:0 5px 15px #005cb925}
.reader-control,.carousel-button,.filter-button,.menu-toggle{box-shadow:0 3px 11px #0b0d100d}
.reader-control{padding:14px 19px}
.carousel-button{padding:14px 17px}
.filter-button{padding:13px 20px}
.footer-bottom button{min-height:48px;padding:10px 14px;border:1px solid #63656955;border-radius:12px;background:white;text-decoration:none;box-shadow:0 3px 11px #0b0d100d;transition:color .2s,background .2s,box-shadow .2s}
.footer-bottom button:hover{color:#005CB9;border-color:#005CB9;box-shadow:0 5px 14px #005cb919}
.footer-bottom button:active{background:#005CB9;color:white}
.button:hover{transform:none}
.filter-button[aria-pressed="true"]{background:#005CB9;border-color:#005CB9;color:white;box-shadow:0 4px 13px #005cb926}
.service-tab{border-radius:10px;transition:background-color .25s ease,color .25s ease,box-shadow .25s ease,padding .3s ease}
.service-tab[aria-selected="true"]{background:#005cb908;box-shadow:inset 4px 0 #005CB9,0 3px 10px #005cb908}
.service-tab .tab-arrow{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;line-height:1}
.service-tab[aria-selected="true"] .tab-arrow{transform:none}
.connection-node{border-radius:8px;transition:background .3s ease,box-shadow .3s ease,transform .3s ease}
.connection-node .node-symbol{display:block;animation:icon-soft-float 7.5s ease-in-out infinite;animation-play-state:paused}
.connection-node:nth-of-type(2) .node-symbol{animation-delay:-2s;animation-duration:8.5s}
.connection-node:nth-of-type(3) .node-symbol{animation-delay:-4s;animation-duration:9.5s}
.connection-node:nth-of-type(4) .node-symbol{animation-delay:-1s;animation-duration:8s}
.connection-board.is-motion-visible .node-symbol{animation-play-state:running}
.logo-orbit{animation-duration:28s}
.orbit-two{animation-duration:36s}
.logo-glow{animation:logo-light-drift 26s ease-in-out infinite alternate,glow-soft-breathe 9s ease-in-out infinite alternate;animation-play-state:paused}
.ambient-wave{position:absolute;inset:15% -10% auto;width:120%;height:80%;opacity:.17;animation:wave-soft-drift 32s ease-in-out infinite alternate;animation-play-state:paused}
.ambient-particle{position:absolute;width:5px;height:5px;border-radius:50%;background:#007CBA;box-shadow:0 0 12px 3px #007cba30;opacity:.28;animation:particle-soft-drift 11s ease-in-out infinite alternate;animation-play-state:paused}
.particle-one{left:3%;top:22%;animation-delay:-2s}
.particle-two{left:12%;bottom:10%;width:4px;height:4px;animation-duration:14s}
.particle-three{right:4%;top:34%;animation-delay:-5s;animation-duration:13s}
.particle-four{right:18%;top:9%;width:3px;height:3px;animation-delay:-3s}
.particle-five{left:54%;bottom:8%;width:4px;height:4px;animation-duration:16s;animation-delay:-6s}
.hero-logo-scene.is-motion-visible .ambient-wave,.hero-logo-scene.is-motion-visible .ambient-particle{animation-play-state:running}
.hero-logo-scene.is-motion-visible .logo-glow{animation-play-state:running}
@keyframes glow-soft-breathe{from{opacity:.35}to{opacity:.8}}
@keyframes wave-soft-drift{from{transform:translate(-3%,3%) scaleY(.96)}to{transform:translate(4%,-3%) scaleY(1.04)}}
@keyframes particle-soft-drift{from{transform:translate(0,0);opacity:.2}to{transform:translate(5px,-9px);opacity:.5}}
@keyframes icon-soft-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(hover:hover) and (pointer:fine){
 .button:hover,.button-small:hover{background:#007CBA;transform:translateY(-3px);box-shadow:0 8px 20px #005cb92b}
 .reader-control:hover,.carousel-button:hover,.filter-button:hover,.menu-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0b0d1017;border-color:#005CB9}
 .connection-node:hover{transform:translateY(-2px);box-shadow:0 6px 17px #005cb91c}
 .service-tab:hover{background:#005cb906}
}
.button:active,.button-small:active,.reader-control:active,.carousel-button:active,.filter-button:active,.menu-toggle:active{transform:translateY(1px) scale(.98);box-shadow:0 1px 4px #005cb92b;background:#005CB9;border-color:#005CB9;color:white;transition-duration:.08s}
.service-tab:active{background:#005cb914}
.button:disabled,.reader-control:disabled,.carousel-button:disabled{transform:none;box-shadow:0 2px 6px #0b0d100a}
@media(max-width:1100px){.connection-board{grid-template-columns:1fr 1fr}.connection-node:nth-of-type(3){border-left:0}.connection-node:nth-of-type(n+3){border-top:1px solid var(--line)}}
@media(max-width:700px){.reader-control{padding:14px 10px}.carousel-button{padding:14px 12px}.connection-board{grid-template-columns:1fr}.connection-node{border-left:0;border-top:1px solid var(--line);padding:20px 17px;gap:14px}.connection-node:first-of-type{border-top:0}.connection-node .node-symbol{display:block;min-width:32px;font-size:30px}.connection-node small{font-size:var(--note-size)}.connection-node .node-arrow{right:16px;top:18px}.ambient-particle{width:3px;height:3px;box-shadow:0 0 9px 2px #007cba25}}
@media(max-width:370px){.reader-control{padding:13px 8px}.filter-button{padding:13px 15px}}
@media(max-width:370px){.carousel-controls{grid-template-columns:1fr}.carousel-play{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.ambient-wave,.ambient-particle,.node-symbol{animation:none!important}.button:hover,.reader-control:hover,.carousel-button:hover,.filter-button:hover,.menu-toggle:hover,.connection-node:hover,.button:active,.reader-control:active,.carousel-button:active,.filter-button:active,.menu-toggle:active{transform:none!important}}
html[data-motion="off"] .button:hover,html[data-motion="off"] .reader-control:hover,html[data-motion="off"] .carousel-button:hover,html[data-motion="off"] .filter-button:hover,html[data-motion="off"] .menu-toggle:hover,html[data-motion="off"] .connection-node:hover,html[data-motion="off"] .button:active,html[data-motion="off"] .reader-control:active,html[data-motion="off"] .carousel-button:active,html[data-motion="off"] .filter-button:active,html[data-motion="off"] .menu-toggle:active{transform:none!important}
