/*
 Theme Name:   Fast KI Projects Bricks Child
 Theme URI:    https://bricksbuilder.io/
 Description:  Child theme runtime layer for fast-ki-projects.de.
 Author:       Fast KI Projects
 Template:     bricks
 Version:      0.1.0
 Text Domain:  fast-ki-projects
*/

/* ==========================================================================
   Design tokens
   ========================================================================== */

:root {
	--fast-ki-projects-ink: #181818;
	--fast-ki-projects-muted: #646464;
	--fast-ki-projects-paper: #ffffff;
	--fast-ki-projects-surface: #f4f5f2;
	--fast-ki-projects-line: rgb(24 24 24 / 12%);
	--fast-ki-projects-accent: #4f7f67;
	--fast-ki-projects-accent-dark: #274936;
	--fast-ki-projects-shell: 1120px;
	--fast-ki-projects-gutter: clamp(20px, 4vw, 48px);
	--fast-ki-projects-radius: 8px;
}

/* ==========================================================================
   Base layer
   ========================================================================== */

body {
	color: var(--fast-ki-projects-ink);
	background: var(--fast-ki-projects-paper);
}

a {
	color: var(--fast-ki-projects-accent-dark);
	text-decoration: none;
}

a:hover,
a:focus-visible {
	color: var(--fast-ki-projects-accent);
}

.fast-ki-projects-shell {
	width: min(var(--fast-ki-projects-shell), calc(100vw - var(--fast-ki-projects-gutter) * 2));
	margin-inline: auto;
}

.fast-ki-projects-muted {
	color: var(--fast-ki-projects-muted);
}

/* ==========================================================================
   Minimal contact front page
   ========================================================================== */

.fast-ki-projects-contact-page,
.fast-ki-projects-page {
	min-height: 100vh;
}

.fast-ki-projects-page {
	display: grid;
	align-content: center;
	gap: clamp(32px, 6vw, 72px);
	padding: var(--fast-ki-projects-gutter);
}

.fast-ki-projects-stack {
	display: grid;
	gap: 22px;
}

.fast-ki-projects-stack h1 {
	margin: 0;
	font: 600 clamp(32px, 8vw, 80px)/1 ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

.fast-ki-projects-intro {
	display: grid;
	gap: 12px;
	max-width: 780px;
	padding-block: 3rem;
	color: var(--fast-ki-projects-ink);
	font: 400 16px/1.5 ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

.fast-ki-projects-intro p {
	margin: 0;
}

.fast-ki-projects-stack-groups {
	display: grid;
	gap: 10px;
}

.fast-ki-projects-stack-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	max-width: 900px;
	margin: 0;
	padding: 0;
	font: 400 16px/1.5 ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
	list-style: none;
}

.fast-ki-projects-stack-list li::before {
	content: "/";
	color: var(--fast-ki-projects-muted);
	margin-right: 4px;
}

.fast-ki-projects-contact-list {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	font: 400 18px/1.5 ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
	list-style: none;
}

.fast-ki-projects-contact-list a {
	color: currentcolor;
	position: relative;
	display: inline-block;
}

.fast-ki-projects-contact-list a::after {
	position: absolute;
	right: 0;
	bottom: .04em;
	left: 0;
	height: 1px;
	background: currentcolor;
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .22s ease;
}

.fast-ki-projects-contact-list a:hover::after,
.fast-ki-projects-contact-list a:focus-visible::after {
	transform: scaleX(1);
	transform-origin: right;
}

/* ==========================================================================
   Shared controls and motion
   ========================================================================== */

.fast-ki-projects-button,
.bricks-button {
	border-radius: var(--fast-ki-projects-radius);
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}
