/* Mr.Transfer — reset + base typography */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: clamp(86px, 7vw, 104px); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
	margin: 0;
	background: var(--c-bg);
	color: var(--c-text);
	font-family: var(--font-body);
	font-size: var(--fs-base);
	line-height: var(--lh-base);
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
}

h1, h2, h3, h4 {
	font-family: var(--font-display);
	font-weight: 600;
	line-height: var(--lh-tight);
	margin: 0 0 var(--sp-4);
	color: var(--c-text);
	letter-spacing: .005em;
}

p { margin: 0 0 var(--sp-4); }
p:last-child { margin-bottom: 0; }

a { color: var(--c-gold); text-decoration: none; transition: color var(--dur-fast) var(--ease-out); }
a:hover { color: var(--c-gold-soft); }

img, svg, video { max-width: 100%; height: auto; display: block; }

ul, ol { margin: 0; padding: 0; list-style: none; }

button, input, select, textarea { font: inherit; color: inherit; }

:focus-visible {
	outline: 2px solid var(--c-gold);
	outline-offset: 3px;
	border-radius: 3px;
}

::selection { background: rgba(201,162,75,.30); color: var(--c-text); }

.mrt-skip {
	position: absolute; left: -9999px; top: 0; z-index: 200;
	background: var(--c-gold); color: var(--c-on-gold);
	padding: var(--sp-2) var(--sp-4); border-radius: 0 0 var(--r-sm) 0;
	font-weight: 600;
}
.mrt-skip:focus { left: 0; }

/* Shared section primitives */
.section { position: relative; padding-block: clamp(2.25rem, 4vw, 3.75rem); }
.container {
	width: 100%;
	max-width: var(--container);
	margin-inline: auto;
	padding-inline: var(--gutter);
}
.container--wide { max-width: var(--container-wide); }

.eyebrow {
	font-family: var(--font-body);
	font-size: var(--fs-sm);
	font-weight: 600;
	letter-spacing: var(--tracking-wider);
	text-transform: uppercase;
	color: var(--c-gold);
	margin: 0 0 var(--sp-3);
	display: inline-flex; align-items: center; gap: var(--sp-3);
}
.eyebrow::before {
	content: ""; width: 28px; height: 1px; background: var(--c-gold); opacity: .8;
}

.section-head { max-width: 60ch; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.section-head h2 { font-size: var(--fs-2xl); }
.section-head .lead { color: var(--c-text-dim); font-size: var(--fs-lg); margin-top: var(--sp-3); }

.text-gold { color: var(--c-gold); }
.text-dim  { color: var(--c-text-dim); }
.serif-italic { font-family: var(--font-display); font-style: italic; font-weight: 600; }
