:root{--e:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth}
body{background:#000}
.font-display{font-family:'Barlow Condensed',sans-serif;letter-spacing:.005em}
.glass{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09)}
.card{transition:transform .35s var(--e),border-color .3s,background .3s}
.card:hover{transform:translateY(-4px);border-color:#2a5bf0;background:rgba(255,255,255,.07)}
.hero-bg{background:radial-gradient(55% 55% at 15% 15%,rgba(31,79,224,.38),transparent 70%),radial-gradient(50% 55% at 90% 80%,rgba(15,76,92,.55),transparent 70%)}
.tiles{background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(ellipse at 60% 45%,#000 20%,transparent 72%);mask-image:radial-gradient(ellipse at 60% 45%,#000 20%,transparent 72%)}
.tile-in{animation:tile 1.1s var(--e) both}
@keyframes tile{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s var(--e),transform .8s var(--e)}
.reveal.in{opacity:1;transform:none}
:focus-visible{outline:2px solid #fff;outline-offset:3px}
input:focus-visible,textarea:focus-visible{outline-color:#2a5bf0}
.err{border-color:#f87171!important}
@media(prefers-reduced-motion:reduce){.reveal,.tile-in{opacity:1;transform:none;transition:none;animation:none}html{scroll-behavior:auto}}
.marquee{display:flex;width:max-content;animation:mq 38s linear infinite}
@keyframes mq{to{transform:translateX(-50%)}}
.marquee:hover{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.marquee{animation:none}}
details summary{cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}
details[open] .plus{transform:rotate(45deg)}
.plus{transition:transform .3s var(--e)}
.shot img{transition:transform .8s var(--e)}
.shot:hover img{transform:scale(1.04)}
section[id]{scroll-margin-top:72px}
.card:hover{border-color:var(--c,#2a5bf0)}
.rail{scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rail::-webkit-scrollbar{display:none}
details[open]{border-color:rgba(94,210,156,.5)}
#glow{background:radial-gradient(440px circle at var(--x,50%) var(--y,30%),rgba(94,210,156,.10),rgba(31,79,224,.06) 45%,transparent 70%);opacity:0;transition:opacity .5s}
.btn-ring{transition:background .3s,border-color .3s,color .3s}
html{overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
h1,h2,h3{overflow-wrap:anywhere}
