/**
 * Heinz Construction brand tokens — dark theme.
 */

:root {
	--heinz-color-primary: #ea653a;
	--heinz-color-primary-hover: #c4532e;
	--heinz-color-primary-hover: color-mix(in srgb, #ea653a 82%, #110c0a);
	--heinz-color-title: #f3f1ee;
	--heinz-color-text: #a9a49e;
	--heinz-color-text-dark: #110c0a;
	--heinz-color-bg: #13110f;
	--heinz-color-dark-surface: #1c1a18;
	--heinz-color-bg-subtle: var(--heinz-color-dark-surface);
	--heinz-color-mark: var(--heinz-color-text-dark);
	--heinz-color-border-subtle: #ffffff29;
	--heinz-color-border-faint: #ffffff14;

	--heinz-font-heading: "Sora", sans-serif;
	--heinz-font-body: "Manrope", sans-serif;

	--text-xs: 0.75rem;
	--text-xs--line-height: calc(1 / 0.75);
	--text-sm: 0.875rem;
	--text-sm--line-height: calc(1.25 / 0.875);
	--text-base: 1rem;
	--text-base--line-height: calc(1.5 / 1);
	--text-lg: 1.125rem;
	--text-lg--line-height: calc(1.75 / 1.125);
	--text-xl: 1.25rem;
	--text-xl--line-height: calc(1.75 / 1.25);
	--text-2xl: 1.5rem;
	--text-2xl--line-height: calc(2 / 1.5);
	--text-3xl: 1.875rem;
	--text-3xl--line-height: calc(2.25 / 1.875);
	--text-4xl: 2.25rem;
	--text-4xl--line-height: calc(2.5 / 2.25);
	--text-5xl: 3rem;
	--text-5xl--line-height: 1;
	--text-6xl: 3.75rem;
	--text-6xl--line-height: 1;
	--text-7xl: 4.5rem;
	--text-7xl--line-height: 1;
	--text-8xl: 6rem;
	--text-8xl--line-height: 1;
	--font-weight-light: 400;
	--font-weight-normal: 400;
	--font-weight-medium: 500;
	--font-weight-semibold: 600;
	--font-weight-bold: 700;
	--tracking-tight: -0.025em;
	--tracking-widest: 0.1em;
	--leading-none: 1;
	--leading-tight: 1.25;
	--leading-snug: 1.375;
	--leading-normal: 1.5;
	--leading-relaxed: 1.625;
	--leading-loose: 2;

	--heinz-font-size-base: var(--text-base);

	--heinz-space-section: 5rem;
	--heinz-width-content: 1200px;
	--container-sm: 24rem;
	--container-md: 28rem;
	--container-lg: 32rem;
	--container-xl: 36rem;
	--container-2xl: 42rem;
	--container-3xl: 48rem;
	--container-4xl: 56rem;
	--heinz-logo-gap: 12px;
	--heinz-btn-gap: 8px;
	--heinz-btn-pad-y: 10px;
	--heinz-btn-pad-x: 20px;
	--heinz-transition: 0.25s ease;
	--heinz-btn-transition: 0.45s cubic-bezier(0.4, 0, 0.2, 1);
	--backdrop-blur-md: 12px;
}

html {
	background: var(--heinz-color-bg);
	overflow-x: clip;
}

body {
	color: var(--heinz-color-text);
	font-family: var(--heinz-font-body);
	font-size: var(--text-base);
	line-height: var(--text-base--line-height);
	background: var(--heinz-color-bg);
}

body.heinz-theme {
	overflow-x: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--heinz-color-title);
	font-family: var(--heinz-font-heading);
}

a {
	color: var(--heinz-color-primary);
}

p {
	margin-block-end: 0;
}

.elementor-section.elementor-section-boxed > .elementor-container,
.e-con {
	--container-max-width: var(--heinz-width-content);
}

.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: var(--heinz-width-content);
}

.max-w-sm,
.container-sm {
	max-width: var(--container-sm);
}

.max-w-md,
.container-md {
	max-width: var(--container-md);
}

.max-w-lg,
.container-lg {
	max-width: var(--container-lg);
}

.max-w-xl,
.container-xl {
	max-width: var(--container-xl);
}

.max-w-2xl,
.container-2xl {
	max-width: var(--container-3xl);
}

.max-w-3xl,
.container-3xl {
	max-width: var(--container-3xl);
}

.max-w-4xl,
.container-4xl {
	max-width: var(--container-4xl);
}

.backdrop-blur-md {
	-webkit-backdrop-filter: blur(var(--backdrop-blur-md));
	backdrop-filter: blur(var(--backdrop-blur-md));
}

@media (max-width: 767px) {
	:root {
		--heinz-space-section: 2.5rem;
	}
}
