.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.5rem;font:600 1rem var(--font-sans);text-decoration:none;border:2px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:background .18s,color .18s,transform .18s,box-shadow .18s}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--primary{background:var(--btn);color:var(--on-btn)}
.btn--primary:hover{background:var(--btn-hover)}
.btn--outline{background:transparent;color:var(--link);border-color:var(--link)}
.btn--outline:hover{background:var(--sky)}
.btn--light{background:#fff;color:var(--navy)}
.btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.btn--ghost:hover{background:rgba(255,255,255,.12)}
.sticky-cta{position:fixed;z-index:40;right:max(1rem,env(safe-area-inset-right,0px));bottom:calc(env(safe-area-inset-bottom,0px) + 1rem);box-shadow:var(--shadow-md);transition:opacity .2s,transform .2s}
.sticky-cta.is-hidden{opacity:0;pointer-events:none;transform:translateY(14px)}
