:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#142d3c;background:#eef3f6;font-size:16px}*{box-sizing:border-box}body{margin:0}main{max-width:1120px;margin:auto;padding:36px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:32px}.mark{font-size:14px;letter-spacing:.15em;font-weight:800}.cause{font-size:14px;color:#506572}.instrument{display:grid;grid-template-columns:1fr 1fr;background:white;box-shadow:0 15px 55px #112c3d0c;border-radius:24px;overflow:hidden}.setup{padding:48px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.13em;margin:0 0 22px;color:#5b7180}h1{font-size:clamp(36px,4vw,54px);line-height:1.08;letter-spacing:-.045em;margin:0 0 20px}.intro{line-height:1.6;color:#526674;margin-bottom:30px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:14px;font-weight:650}input[type=number],select{display:block;width:100%;margin-top:9px;padding:13px;border:1px solid #c9d6df;border-radius:9px;font:inherit;color:#142d3c;background:#f8fafc}input[type=number]{font-size:24px;font-weight:650}.estimate{font-size:14px;color:#536977;margin:14px 0 26px}.volume{display:flex;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}.volume input{width:100px;accent-color:#193d51}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.45}.small{border:1px solid #c9d6df;border-radius:7px;padding:9px;background:white;font-size:14px}.note{font-size:14px;line-height:1.5;color:#566b78;min-height:42px}#error{color:#a62c2c;font-size:14px}.session{padding:50px 42px;background:#102b3c;color:white;text-align:center;display:flex;flex-direction:column;justify-content:center}.session .eyebrow{color:#a5bdcc}#count{font-size:clamp(84px,10vw,132px);line-height:1.15;letter-spacing:-.06em;font-weight:600;font-variant-numeric:tabular-nums}.of{color:#c1d0d9;margin:10px 0 32px}.track{height:5px;border-radius:5px;background:#345164;overflow:hidden}#progress{height:100%;width:0;background:#ffb84a}.details{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#bbccd7;margin-top:14px;margin-bottom:40px}.details strong{font-weight:600;color:white}.primary{background:#ffb84a;border:0;border-radius:12px;min-height:72px;font-size:20px;font-weight:750;color:#132e40}.reset{background:none;color:#d4e0e8;border:0;padding:17px;min-height:50px}.phone{font-size:13px;color:#a4bbca;line-height:1.7;margin:15px 0 0}footer{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:#596e7b;padding-top:24px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d88709;outline-offset:3px}.pulse{animation:pulse .16s ease-out}@keyframes pulse{50%{color:#ffb84a}}@media(prefers-reduced-motion:reduce){.pulse{animation:none}}@media(max-width:760px){main{padding:20px 16px}header{display:block;padding-bottom:22px}.cause{display:block;margin-top:8px}.instrument{grid-template-columns:1fr}.setup{padding:26px}h1{font-size:36px}h1 br{display:none}.intro{margin:12px 0 22px}.session{padding:30px 26px}.session .eyebrow{margin-bottom:10px}#count{font-size:90px}.of{margin-bottom:20px}.details{margin-bottom:24px}footer{display:block;line-height:1.8}footer span{display:block}} 

#beat-ring{position:relative;isolation:isolate;width:min(100%,280px);aspect-ratio:1;margin:0 auto 12px;border:4px solid #496477;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
#beat-ring::after{content:"";position:absolute;inset:-4px;border:5px solid #ffd077;border-radius:50%;background:#ffb84a16;box-shadow:0 0 24px #ffb84a99,inset 0 0 22px #ffb84a33;opacity:0;pointer-events:none;z-index:-1}
#beat-ring.beat-flash::after{animation:beat-ring-fade var(--beat-interval,1s) linear both}
#beat-ring #count{font-size:var(--count-size,108px);line-height:1.1;letter-spacing:-.045em;padding-right:.045em}
@keyframes beat-ring-fade{0%{opacity:1}20%{opacity:.8}65%{opacity:.3}100%{opacity:0}}
@media(max-width:760px){#beat-ring{width:min(100%,250px)}#beat-ring #count{font-size:min(var(--count-size,108px),90px)}}

#silence{margin:0 0 24px;padding:18px;border:1px solid #496477;border-radius:12px}#silence[hidden]{display:none}#silence-label{margin:0 0 8px;color:#c1d0d9;font-size:16px}#silence-count{font-size:42px;font-weight:600;font-variant-numeric:tabular-nums}
