/* Mediscrum shared web tokens */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,650;9..144,700&family=Manrope:wght@400;500;600;700&display=swap");

:root {
	--ms-ink: #062a2e;
	--ms-ink-soft: #1a454b;
	--ms-teal: #0d5c63;
	--ms-teal-mid: #147a82;
	--ms-seafoam: #6fc3bc;
	--ms-mist: #e8f4f2;
	--ms-sand: #f3efe6;
	--ms-coral: #c45c3e;
	--ms-coral-hot: #d96a4a;
	--ms-white: #fffcf7;
	--ms-muted: #5a7378;
	--ms-line: rgba(6, 42, 46, 0.12);
	--ms-radius: 18px;
	--ms-shadow: 0 24px 60px rgba(6, 42, 46, 0.14);
	--font-display: "Fraunces", Georgia, serif;
	--font-body: "Manrope", sans-serif;
	--ease-out: cubic-bezier(0.22, 1, 0.36, 1);
}

.ms-page,
.ms-page * {
	box-sizing: border-box;
}

.ms-page {
	font-family: var(--font-body);
	color: var(--ms-ink);
	background: var(--ms-sand);
	-webkit-font-smoothing: antialiased;
}

.ms-page a {
	color: inherit;
	text-decoration: none;
}

.ms-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.85rem 1.45rem;
	border-radius: 999px;
	border: none;
	font-family: var(--font-body);
	font-weight: 600;
	font-size: 0.95rem;
	letter-spacing: 0.01em;
	cursor: pointer;
	transition: transform 0.35s var(--ease-out), box-shadow 0.35s var(--ease-out),
		background 0.25s ease, color 0.25s ease;
}

.ms-btn:hover {
	transform: translateY(-2px);
}

.ms-btn-primary {
	background: var(--ms-coral);
	color: var(--ms-white);
	box-shadow: 0 12px 28px rgba(196, 92, 62, 0.28);
}

.ms-btn-primary:hover {
	background: var(--ms-coral-hot);
	box-shadow: 0 16px 34px rgba(196, 92, 62, 0.36);
}

.ms-btn-ghost {
	background: transparent;
	color: var(--ms-white);
	border: 1.5px solid rgba(255, 252, 247, 0.45);
}

.ms-btn-ghost:hover {
	background: rgba(255, 252, 247, 0.1);
}

.ms-btn-ink {
	background: var(--ms-ink);
	color: var(--ms-white);
}

.ms-btn-ink:hover {
	background: var(--ms-teal);
}

.ms-reveal {
	opacity: 1;
	transform: none;
	transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

@supports (animation: fade 1s) {
	.js-anim .ms-reveal:not(.is-in) {
		opacity: 0;
		transform: translateY(28px);
	}
}

.ms-reveal.is-in {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.ms-reveal,
	.ms-btn,
	.ms-brand-hero,
	.ms-hero-title,
	.ms-hero-lead,
	.ms-hero-cta,
	.ms-hero-visual,
	.ms-login-shell,
	.ms-cap-line,
	.ms-claim-line,
	.ms-claim-area,
	.ms-cap-pulse,
	.ms-orb,
	.ms-float {
		transition: none !important;
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
	}
}
