/* Arctell Sandvík — design tokens.
   Source: Arctell Design System (claude.ai/design, project ba9e52b3) tokens/*.css.
   Values are literal here rather than referencing a builder palette, so the theme
   owns them outright. Type scale and spacing follow the arctell.com build. */

/* Self-hosted Newsreader + Instrument Sans (Google Fonts, OFL), variable weight.
   The latin subset covers U+0000-00FF, which is every Icelandic letter including
   ð, þ, æ and ö, so latin-ext is only reached by foreign names. */
@font-face {
	font-family: 'Instrument Sans';
	font-style: normal;
	font-weight: 400 700;
	font-stretch: 100%;
	font-display: swap;
	src: url('../fonts/InstrumentSans-normal-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Instrument Sans';
	font-style: normal;
	font-weight: 400 700;
	font-stretch: 100%;
	font-display: swap;
	src: url('../fonts/InstrumentSans-normal-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Instrument Sans';
	font-style: italic;
	font-weight: 400 700;
	font-stretch: 100%;
	font-display: swap;
	src: url('../fonts/InstrumentSans-italic-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Newsreader';
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url('../fonts/Newsreader-normal-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Newsreader';
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url('../fonts/Newsreader-normal-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Newsreader';
	font-style: italic;
	font-weight: 200 800;
	font-display: swap;
	src: url('../fonts/Newsreader-italic-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	/* Brand palette */
	--ink: #231F20;
	--bone: #F5F3E9;
	--arctic-sky: #DAE4ED;
	--fjord-mist: #6D7F91;
	--fjord: #364F63;
	--basalt: #162430;

	/* Tonal steps derived from the palette */
	--bone-2: #ECE9DC;
	--bone-3: #E1DDCC;
	--sky-2: #C3D2DF;
	--ink-80: #4A4546;
	--ink-60: #6E6A69;
	--ink-40: #A5A19B;
	--ink-20: #D3CFC4;
	--white: #FFFFFF;

	/* Surfaces */
	--surface-page: var(--bone);
	--surface-sunken: var(--bone-2);
	--surface-sky: var(--arctic-sky);
	--surface-deep: var(--basalt);

	/* Text */
	--text-strong: var(--ink);
	--text-body: var(--ink-80);
	--text-muted: var(--ink-60);
	--text-on-dark: var(--bone);
	--text-on-dark-muted: #B9C3CC;
	--text-accent: var(--fjord);

	/* Lines */
	--border-hairline: var(--ink-20);
	--border-strong: var(--ink);
	--border-on-dark: rgba(245, 243, 233, .22);

	/* Interactive */
	--action-primary: var(--ink);
	--action-primary-hover: var(--basalt);
	--action-primary-text: var(--bone);
	--action-secondary-hover: var(--bone-2);
	--focus-ring: var(--fjord);

	/* Feedback */
	--feedback-success: #3F6B57;
	--feedback-error: #9A3B32;

	/* Photo protection. The old curve thinned to .18 at 42% to let the photograph through,
	   but the hero text runs from roughly a fifth to four fifths of the box, so the thin
	   part sat under the title. It now darkens early and stays dark across the whole text
	   band, which also makes it far less sensitive to the hero's height. */
	--scrim-hero: linear-gradient(180deg, rgba(22, 36, 48, .58) 0%, rgba(22, 36, 48, .74) 35%, rgba(22, 36, 48, .82) 100%);

	/* Type */
	--font-display: 'Newsreader', Georgia, 'Times New Roman', serif;
	--font-sans: 'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
	--fs-display-xl: clamp(44px, 7vw, 96px);
	--fs-display-l: clamp(34px, 5vw, 64px);
	--fs-quote: clamp(26px, 3.2vw, 42px);
	--fs-h2: clamp(28px, 3vw, 40px);
	--fs-h3: 26px;
	--fs-lead: 21px;
	--fs-body: 17px;
	--fs-small: 15px;
	--fs-label: 12px;
	--ls-display: -0.02em;
	--ls-heading: -0.01em;
	--ls-label: 0.2em;

	/* Space and layout */
	--gutter: clamp(20px, 4vw, 56px);
	--section-y: clamp(72px, 10vw, 148px);
	--content-max: 1280px;
	--measure: 62ch;
	--header-h: 76px;

	/* Shape and motion */
	--radius-1: 2px;
	--radius-2: 4px;
	--ease-out: cubic-bezier(.2, .7, .2, 1);
	--dur-fast: 140ms;
	--dur-base: 240ms;
}
