/* Adapted from the supplied kryyt.html and Motion & Loading System board. */
:root { --signal-gold:#ffb000; --signal-edge:#ad710e; --signal-ink:#ffca6a; --signal-halo:#ffad003d; --signal-ease:cubic-bezier(.2,.7,.2,1); }
.btn, .theme-toggle, .nav-toggle { transition:box-shadow 180ms var(--signal-ease),border-color 180ms var(--signal-ease),background-color 180ms var(--signal-ease),color 180ms var(--signal-ease),transform 140ms var(--signal-ease); }
.btn--primary { background:#121210; color:var(--signal-ink); border:1px solid #986311; box-shadow:inset 0 0 13px #f4a00026,0 1px 2px #17120a10; }
.btn--primary:hover, .btn--primary:focus-visible { color:#ffdc94; background:#21190d; border-color:#ffb000; box-shadow:inset 0 0 17px #ffad0033,0 0 0 1px #ffbc4440,0 0 18px #ffa60038; transform:translateY(-1px); }
.btn--primary:active { transform:translateY(1px); box-shadow:inset 0 0 18px #ffad0040; }
.btn--primary img { filter:brightness(0) saturate(100%) invert(83%) sepia(53%) saturate(789%) hue-rotate(333deg); }
.btn--ghost:hover, .theme-toggle:hover, .nav-toggle:hover { border-color:#b98b35; background:#fff9eb; box-shadow:0 0 12px #ffb00017; }
:root[data-theme='dark'] .btn--primary { background:#121210; color:var(--signal-ink); border-color:#b17a21; }
:root[data-theme='dark'] .btn--ghost:hover, :root[data-theme='dark'] .theme-toggle:hover { background:#292218; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline:2px solid #a87514; outline-offset:3px; }
form[data-website-form] input:focus, form[data-website-form] textarea:focus { border-color:#b48025; box-shadow:0 0 0 3px #ffb00017; }
.nav-links a { position:relative; }
.nav-links a::after { content:''; position:absolute; left:0; right:0; bottom:-7px; height:1px; background:#e9a022; box-shadow:0 0 6px #ffad0080; transform:scaleX(0); transform-origin:left; transition:transform 180ms var(--signal-ease); }
.nav-links a:hover::after, .nav-links a:focus-visible::after { transform:scaleX(1); }
.product-item { transition:border-color 200ms var(--signal-ease),transform 200ms var(--signal-ease); }
.product-item:hover { border-color:#e0a32e; transform:translateY(-2px); }
.product-item:hover > img { filter:drop-shadow(0 0 5px #ffb00070); }
.product-item > span img, .inline-link img { transition:transform 180ms var(--signal-ease); }
.product-item:hover > span img, .inline-link:hover img { transform:translate(2px,-2px); }
.plan:hover, .models .card:hover { border-color:#c8902d; box-shadow:0 0 0 1px #ffb00012,0 5px 18px #ffad0010; }
.landing-hero { background:#fafaf8; }
.hero-scene img { width:60%; margin-left:auto; object-fit:contain; object-position:right bottom; }
.hero-subtitle span { color:#a56505; }
.developer-art { display:block; width:100%; max-width:350px; height:auto; margin-top:32px; }
.hero-caption { color:#77510d; }
.nav-links.open { animation:kryyt-menu-in 200ms var(--signal-ease) both; }
.form-note:not(.error):not(:empty) { color:#77510d; }
form[aria-busy='true'] .btn--primary { position:relative; padding-right:42px; cursor:progress; }
form[aria-busy='true'] .btn--primary::after { content:''; position:absolute; right:15px; width:13px; height:13px; border:1px solid #ffb00055; border-top-color:#ffce66; border-right-color:#ffb000; border-radius:50%; animation:kryyt-ring 1.2s linear infinite; box-shadow:0 0 7px #ffb00044; }
@keyframes kryyt-ring { to { transform:rotate(360deg); } }
@keyframes kryyt-menu-in { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:1100px) { .hero-scene img { width:57%; } }
@media(max-width:640px) { .hero-scene { inset:412px 0 0; }.hero-scene img { width:100%; object-position:right bottom; }.landing-hero { height:760px; }.developer-art { max-width:300px; margin-top:24px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }.btn--primary:hover,.product-item:hover { transform:none; } }
