/* =============================================================================
   chrome.css — DAK master theme site chrome (base document, header, footer).
   Token-driven: consumes var(--dak-*) printed by functions.php. No hardcoded
   colour or type.
   ========================================================================== */

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

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
	margin: 0;
	background: var(--dak-base);
	color: var(--dak-ink);
	font-family: var(--dak-font-body);
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

a { color: var(--dak-accent); text-decoration: none; }
a:hover { color: var(--dak-ink); }
:focus-visible { outline: 2px solid var(--dak-accent); outline-offset: 3px; }
::selection { background: var(--dak-accent); color: var(--dak-base); }

/* --- Header --------------------------------------------------------------- */
.dak-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(0, 0, 0, .92);
	border-bottom: 1px solid var(--dak-ink-10);
	transition: background .35s ease, border-color .35s ease;
}
.dak-header.is-tight {
	background: rgba(0, 0, 0, .96);
	border-bottom-color: var(--dak-accent-28);
}
.dak-header__progress {
	position: absolute;
	left: 0;
	bottom: -1px;
	height: 2px;
	width: 0;
	background: var(--dak-accent);
}
.dak-header__inner {
	max-width: var(--dak-container);
	margin: 0 auto;
	padding: 18px var(--dak-gutter);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	transition: padding .35s ease;
}
.dak-header.is-tight .dak-header__inner { padding: 11px var(--dak-gutter); }
.dak-header__logo { display: block; line-height: 0; }
.dak-header__logo img { height: 30px; width: auto; display: block; }
.dak-header__nav {
	display: flex;
	align-items: center;
	gap: 10px 26px;
	flex-wrap: wrap;
	justify-content: flex-end;
}
.dak-header__nav .link {
	font-size: 14px;
	letter-spacing: .02em;
	color: var(--dak-ink-72);
	border-bottom: 1px solid transparent;
	padding-bottom: 2px;
	transition: color .25s ease, border-color .25s ease;
}
.dak-header__nav .link:hover { color: var(--dak-ink); border-bottom-color: var(--dak-accent); }
.dak-header__cta {
	background: var(--dak-accent);
	color: var(--dak-base);
	font-size: 14px;
	font-weight: 500;
	padding: 11px 20px;
	transition: background .25s ease, transform .25s ease;
}
.dak-header__cta:hover { background: var(--dak-ink); color: var(--dak-base); transform: translateY(-2px); }

/* --- Footer --------------------------------------------------------------- */
.dak-footer {
	border-top: 1px solid var(--dak-ink-10);
	padding: clamp(48px, 7vw, 90px) 0;
}
.dak-footer__inner {
	max-width: var(--dak-container);
	margin: 0 auto;
	padding: 0 var(--dak-gutter);
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.dak-footer__logo {
	font-family: var(--dak-font-heading);
	font-weight: 600;
	font-size: 26px;
	letter-spacing: -.02em;
}
.dak-footer__line { color: var(--dak-ink-70); font-size: 14px; margin: 0; }
.dak-footer__legal { color: var(--dak-ink-45); font-size: 13px; margin: 0; }
