/* Каркас темы. Цвета, шрифты и отступы — только через токены theme.json (--wp--preset--*). */

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

body { margin: 0; overflow-wrap: break-word; }
img, video { max-width: 100%; height: auto; }

.container {
	width: 100%;
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--40);
}

.skip-link {
	position: absolute;
	left: -9999px;
}
.skip-link:focus {
	left: var(--wp--preset--spacing--40);
	top: var(--wp--preset--spacing--40);
	z-index: 100;
	padding: var(--wp--preset--spacing--30);
	background: var(--wp--preset--color--surface);
}

.site-header { border-bottom: 1px solid var(--wp--preset--color--border); }
.site-header__inner,
.site-footer__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--40);
	padding-block: var(--wp--preset--spacing--40);
}
.site-header__logo {
	font-weight: 700;
	font-size: var(--wp--preset--font-size--large);
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.site-nav ul,
.footer-nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--40);
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-main { padding-block: var(--wp--preset--spacing--60); }

.site-footer {
	border-top: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--small);
}

.button {
	display: inline-block;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--50);
	border-radius: 6px;
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--surface);
	text-decoration: none;
}

.error-page { text-align: center; padding-block: var(--wp--preset--spacing--80); }
