/* Inhubweb Solutions — Brand Tokens */
:root {
	/* Direction A — Primary: Navy / Cream / Clay */
	--ink: #0B3B5C;
	--ink-2: #0A2D45;
	--paper: #F5F1EA;
	--paper-2: #EBE5DA;
	--clay: #E8893B;
	--clay-2: #C46E25;
	--muted: #6B7280;
	--line: rgba(11, 59, 92, 0.12);
	--line-strong: rgba(11, 59, 92, 0.22);

	/* Type */
	--font-sans: "Geist", "Inter", -apple-system, system-ui, sans-serif;
	--font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;

	/* Slide scale (1920x1080) */
	--type-display: 120px;
	--type-title: 72px;
	--type-subtitle: 44px;
	--type-body: 32px;
	--type-small: 24px;
	--pad-top: 96px;
	--pad-bottom: 88px;
	--pad-x: 112px;
	--gap-title: 48px;
	--gap-item: 28px;
}

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

html, body { margin: 0; padding: 0; }

body {
	font-family: var(--font-sans);
	color: var(--ink);
	background: var(--paper);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

.mono { font-family: var(--font-mono); font-feature-settings: "ss01"; }
.uc { text-transform: uppercase; letter-spacing: 0.08em; }

/* Logo — wordmark */
.wm {
	font-family: var(--font-sans);
	font-weight: 600;
	letter-spacing: -0.04em;
	display: inline-flex;
	align-items: baseline;
	line-height: 1;
}
.wm .dot { color: var(--clay); }

/* Logo — mark (square monogram) */
.mark {
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
	background: var(--ink);
	color: var(--paper);
	font-family: var(--font-sans);
	font-weight: 600;
	letter-spacing: -0.06em;
	border-radius: 6px;
	aspect-ratio: 1;
	line-height: 1;
	padding-top: 0.18em;
}
.mark .dot { color: var(--clay); }

/* Accessibility — skip link */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.skip-link:focus {
	background: var(--ink);
	color: var(--paper);
	clip: auto !important;
	-webkit-clip-path: none;
	clip-path: none;
	display: block;
	font-family: var(--font-mono);
	font-size: 14px;
	height: auto;
	left: 16px;
	line-height: normal;
	padding: 12px 18px;
	text-decoration: none;
	top: 16px;
	width: auto;
	z-index: 100000;
}
