/* BASE — tokens, reset, type */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400..700;1,400..700&display=swap');

:root {
	--clr-accent: #1c2430;
	--clr-bg:     #FAFCFD;
	--clr-border: #e6e8ea;
	--clr-text:   #5a6572;
	--clr-muted:  #8a939e;

	--ff: 'Instrument Sans', system-ui, sans-serif;
	--fw-regular: 400;
	--fw-medium: 500;
	--fw-semi: 600;
	--fw-bold: 650;

	--fs-xs:   clamp(0.6875rem, 0.85vw, 0.75rem);
	--fs-sm:   clamp(0.875rem, 1vw, 0.975rem);
	--fs-base: clamp(0.975rem, 1.1vw, 1.025rem);
	--fs-md:   clamp(1.025rem, 1.35vw, 1.1875rem);
	--fs-lg:   clamp(1.35rem, 2vw, 1.7rem);
	--fs-xl:   clamp(1.8rem, 3.4vw, 2.7rem);
	--fs-hero: clamp(2rem, 4.5vw, 3.5rem);

	--lh-base: 1.55;
	--lh-small: 1.25;
	--lh-tight: 1.2;
	--ls-base: 0;
	--ls-tight: 0.04em;

	--sp-sm: 0.75rem;
	--sp-md: 1.25rem;
	--sp-lg: 2rem;
	--sp-xl: 3.5rem;

	--nav-h: 3.25rem;
	--gutter: clamp(1rem, 2.5vw, 1.5rem);
	--gap: clamp(0.75rem, 1.5vw, 1.25rem);
	--toc-col: minmax(13.5rem, 16vw);
	--case-max: 56rem;
	--flow-gap: 0.75rem;
	--r-sm: 0.5rem;
	--r-md: 0.5rem;

	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--t-fast: 140ms;
	--t-med: 260ms;
	--t-slow: 480ms;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 100%; scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
	font-family: var(--ff);
	font-size: var(--fs-base);
	font-weight: var(--fw-regular);
	background: var(--clr-bg);
	color: var(--clr-text);
	line-height: var(--lh-base);
	letter-spacing: var(--ls-base);
	min-block-size: 100vh;
}
img { display: block; max-inline-size: 100%; }
img.footer__icon,
.footer__icon {
	display: inline !important;
	width: 12px !important;
	height: 12px !important;
	max-width: 12px !important;
	max-height: 12px !important;
	inline-size: 12px !important;
	block-size: 12px !important;
	max-inline-size: 12px !important;
	object-fit: contain;
	vertical-align: -1px;
	margin-inline: 0.15em;
}
video { display: block; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; }
button { font: inherit; background: none; border: none; cursor: pointer; color: inherit; }
