.btn { display: inline-flex; align-items: center; gap: 0.75rem; background: var(--color-fg); color: var(--color-bg); padding: 0.875rem 1.75rem; border-radius: var(--radius-pill); font-weight: 600; font-size: 0.875rem; transition: transform var(--duration-fast) var(--ease-out-soft), opacity var(--duration-fast) ease; -webkit-tap-highlight-color: transparent; touch-action: manipulation; white-space: nowrap; cursor: pointer; border: none; } .btn:hover { opacity: 0.9; } .btn:active { transform: scale(0.97); } .hero-cta-row { display: flex; align-items: flex-start; justify-content: center; gap: 1rem; margin-top: 1.5rem; position: relative; z-index: 10; } .hero-cta { display: inline-flex; align-items: center; justify-content: center; padding: 0.7rem 1.35rem; height: 50px !important; border-radius: var(--radius-pill) !important; font-family: var(--font-body); font-size: 0.8125rem; font-weight: 600; letter-spacing: -0.01em; border: none; cursor: pointer; text-decoration: none; transition: transform var(--duration-fast) var(--ease-out-soft), background var(--duration-fast) ease, opacity var(--duration-fast) ease; -webkit-tap-highlight-color: transparent; touch-action: manipulation; } .hero-cta:hover { transform: scale(0.99); } .hero-cta:active { transform: scale(0.97); } .hero-cta-dark { background: #000000; color: #fff; } .hero-cta-dark:hover { background: #000; border-color: var(--color-fg-dim); } .hero-cta-light { position: relative; background: transparent; color: var(--color-fg); border-radius: 50px !important; padding: 0.75rem 1.75rem !important; font-weight: 500; font-size: 0.875rem; text-decoration: none; transition: transform 0.2s ease, box-shadow 0.2s ease; } .hero-cta-unsure { position: relative; background: transparent; color: var(--color-fg); border-radius: 50px !important; padding: 0.75rem 1.75rem !important; font-weight: 500; font-size: 0.875rem; text-decoration: none; transition: transform 0.2s ease, box-shadow 0.2s ease; } @media (hover: none) and (pointer: coarse) { .btn { min-height: 48px; min-width: 48px; } } .download-expandable { position: relative; display: inline-block; background: #000; border-radius: var(--radius-pill); overflow: hidden; } .download-expandable[aria-expanded="true"] { border-radius: 10px; } .download-expandable .hero-cta { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; padding-right: 1rem; background: transparent !important; border: none; margin: 0; color: #fff; } .download-btn-text { flex: 1; } .dropdown-arrow { transition: transform 0.3s ease; flex-shrink: 0; } .download-expandable[aria-expanded="true"] .dropdown-arrow { transform: rotate(180deg); } .download-options { max-height: 0; overflow: hidden; transition: max-height 0.3s ease, opacity 0.3s ease; opacity: 0; background: #000; } .download-options.show { max-height: 200px; opacity: 1; } .download-option { display: flex; align-items: center; gap: 0.75rem; padding: 0.75rem 1rem; color: #fff; text-decoration: none; transition: background 0.2s ease; font-size: 0.875rem; font-weight: 500; } .download-option:hover { background: rgba(255, 255, 255, 0.1); } .download-option svg { flex-shrink: 0; }