/* Pill buttons — portfolio signature: green primary with navy text,
   hover deepens green and flips text to white; press scale 0.98. */

.apw-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	font-family: var(--apw-font);
}

.apw-buttons--center { justify-content: center; }
.apw-buttons--right { justify-content: flex-end; }

.apw-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 2.75rem;
	padding: 0.75rem 1.5rem;
	border-radius: var(--apw-radius-pill);
	border: 1px solid transparent;
	font-family: var(--apw-font);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	text-decoration: none;
	cursor: pointer;
	transition: background-color var(--apw-duration-fast) ease-out,
		color var(--apw-duration-fast) ease-out,
		border-color var(--apw-duration-fast) ease-out,
		transform var(--apw-duration-instant) ease-out;
}

.apw-btn:active { transform: scale(0.98); }

.apw-btn--primary {
	background: var(--apw-brand);
	color: var(--apw-navy);
}

.apw-btn--primary:hover {
	background: var(--apw-brand-text);
	color: #fff;
}

.apw-btn--secondary {
	background: var(--apw-paper);
	color: var(--apw-navy);
	border-color: var(--apw-border);
}

.apw-btn--secondary:hover {
	background: var(--apw-mist);
	border-color: var(--apw-ink);
}

.apw-btn--ghost {
	background: transparent;
	color: var(--apw-navy);
}

.apw-btn--ghost:hover { background: var(--apw-mist); }

.apw-btn--sm { min-height: 2.75rem; padding: 0.5rem 1rem; font-size: 0.875rem; line-height: 1.43; }
.apw-btn--lg { padding: 1rem 2rem; font-size: 1.125rem; line-height: 1.55; }

.apw-btn__arrow {
	transition: transform var(--apw-duration-fast) ease-out;
}

.apw-btn:hover .apw-btn__arrow { transform: translateX(3px); }

.apw-btn__arrow svg { display: block; }
