:root{font-family:ui-sans-serif,system-ui,sans-serif;color:#f28b60;background:#17140f}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body:before,body:after{content:'';position:fixed;inset:-25%;pointer-events:none;will-change:transform;opacity:.5;background:radial-gradient(ellipse at 30% 40%,#9c3e182e,transparent 54%);animation:drift 14s ease-in-out infinite alternate}body:after{background:radial-gradient(ellipse at 75% 65%,#d9873a24,transparent 50%);animation-delay:-7s;animation-duration:19s}main{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:10px;position:relative}.number{font-size:clamp(200px,45vw,660px);font-weight:800;line-height:.85;letter-spacing:-.11em;font-variant-numeric:tabular-nums;position:relative;isolation:isolate;animation:breath 7s ease-in-out infinite alternate;will-change:transform}.sign{font-size:.35em;letter-spacing:-.06em;vertical-align:25%;margin-left:.16em}.number:after{content:'';position:absolute;inset:-5% -7%;background:linear-gradient(110deg,transparent 35%,#ffe4c524 49%,transparent 63%);mix-blend-mode:screen;transform:translateX(-80%);animation:sweep 8s ease-in-out infinite;pointer-events:none}.count{font-size:clamp(17px,2.3vw,28px);letter-spacing:.2em;color:#b5a99a;margin-top:50px;font-variant-numeric:tabular-nums}.line{position:absolute;bottom:0;left:0;width:100%;height:5px;background:#2c241a}.line i{display:block;height:100%;width:0;background:#f08a61;transition:width 2.4s cubic-bezier(.16,1,.3,1);position:relative}.line i:after{content:'';position:absolute;right:0;top:-3px;width:4px;height:11px;background:#ffe0bf;animation:edge 2.4s ease-in-out infinite alternate;box-shadow:0 0 18px #f08a61}@keyframes drift{to{transform:translate3d(8%,5%,0) scale(1.1)}}@keyframes breath{to{transform:translateY(-8px)}}@keyframes sweep{0%,25%{transform:translateX(-85%);opacity:0}40%{opacity:.7}70%,100%{transform:translateX(85%);opacity:0}}@keyframes edge{to{opacity:.25;transform:scaleY(.5)}}html.paused *,html.paused:before,html.paused:after,html.paused body:before,html.paused body:after{animation-play-state:paused!important}@media(max-width:500px){.number{font-size:49vw}.count{margin-top:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.number:after{display:none}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
