/* VABART — main stylesheet
 * Tokens + minimal reset. Component styles will be added per-section.
 */

/* ---------- Design tokens ---------- */
:root {
	/* Backgrounds */
	--c-bg-1: #0f1419;
	--c-bg-2: #1a2028;
	--c-surface: #222933;

	/* Accent */
	--c-accent: #f59e0b;
	--c-accent-soft: rgba(245, 158, 11, 0.10);
	--c-accent-line: rgba(245, 158, 11, 0.15);

	/* Borders */
	--c-border: rgba(255, 255, 255, 0.06);
	--c-border-soft: rgba(255, 255, 255, 0.04);

	/* Text */
	--c-text: #f8fafc;
	--c-text-2: #f1f5f9;
	--c-text-3: #94a3b8;
	--c-text-4: #64748b;
	--c-text-5: #475569;

	/* Typography */
	--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	--font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

	/* Spacing scale */
	--space-1: 4px;
	--space-2: 8px;
	--space-3: 12px;
	--space-4: 16px;
	--space-5: 24px;
	--space-6: 32px;
	--space-7: 48px;
	--space-8: 64px;
	--space-9: 96px;
	--space-10: 112px;

	/* Radii */
	--radius-sm: 4px;
	--radius-md: 6px;
	--radius-lg: 8px;
	--radius-xl: 10px;

	/* Layout */
	--container-max: 1140px;
	--container-pad: 24px;
}

/* ---------- Minimal reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	background: var(--c-bg-1);
	color: var(--c-text);
	font-family: var(--font-sans);
	font-size: 16px;
	line-height: 1.65;
	font-variation-settings: "opsz" 9;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
img, svg { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }

/* Headings */
h1, h2, h3, h4 {
	font-family: var(--font-mono);
	font-weight: 700;
	color: var(--c-text);
	margin: 0;
}
h1 { font-size: 54.4px; line-height: 62.56px; letter-spacing: -1.088px; }
h2 { font-size: 38.4px; line-height: 48px;    letter-spacing: -0.768px; }
h3 { font-size: 15.2px; line-height: 19px; color: var(--c-text-2); }

p { margin: 0; }

/* ---------- Utility: eyebrow ---------- */
.eyebrow {
	display: inline-block;
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 11.52px;
	line-height: 19.584px;
	letter-spacing: 1.728px;
	text-transform: uppercase;
	color: var(--c-accent);
}

/* ---------- Buttons ---------- */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--space-2);
	padding: 13.6px 32px;
	border-radius: var(--radius-sm);
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 13.6px;
	line-height: 23.12px;
	letter-spacing: 0.272px;
	text-transform: uppercase;
	border: 2px solid transparent;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.btn--primary {
	background: var(--c-accent);
	color: var(--c-bg-1);
}
.btn--primary:hover { background: #d97706; }
.btn--outline {
	background: transparent;
	color: var(--c-accent);
	border-color: var(--c-accent);
}
.btn--outline:hover { background: var(--c-accent-soft); }

/* ---------- Layout primitives ---------- */
.section-pad {
	padding: 72px 24px;
}
.section-pad--alt { background: var(--c-bg-2); }
.container {
	width: 100%;
	max-width: var(--container-max);
	margin: 0 auto;
}

/* ---------- Icon tile (amber-tinted rounded square) ---------- */
.icon-tile {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: var(--radius-xl);
	background: var(--c-accent-soft);
	border: 1px solid var(--c-accent-line);
	color: var(--c-accent);
}
.icon-tile svg { width: 26px; height: 26px; }
.icon-tile--sm { width: 44px; height: 44px; border-radius: var(--radius-lg); }
.icon-tile--sm svg { width: 20px; height: 20px; }
.icon-tile--xs { width: 38px; height: 38px; border-radius: var(--radius-md); }
.icon-tile--xs svg { width: 16px; height: 16px; }

/* ---------- Site header ---------- */
.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(15, 20, 25, 0.92);
	backdrop-filter: blur(8px);
	border-bottom: 1px solid var(--c-border-soft);
}
.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	max-width: var(--container-max);
	margin: 0 auto;
	padding: 16px 24px;
}
.site-header__logo {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.5px;
	color: var(--c-text);
}
.site-header__nav {
	display: none;
	align-items: center;
	gap: 32px;
}
.site-header__menu {
	display: flex;
	gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.site-header__menu a {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 12px;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	color: var(--c-text-3);
	transition: color 0.15s ease;
}
.site-header__menu a:hover,
.site-header__menu .current-menu-item a {
	color: var(--c-accent);
}
.site-header__cta {
	padding: 9px 20px;
	font-size: 12px;
	letter-spacing: 0.96px;
}
@media (min-width: 1024px) {
	.site-header__nav { display: flex; }
}

/* ---------- Hero ---------- */
.hero {
	background: var(--c-bg-1);
	padding: 80px 24px 96px;
}
.hero__inner {
	max-width: var(--container-max);
	margin: 0 auto;
}
.hero__eyebrow { margin-bottom: 20px; }
.hero__title {
	font-size: clamp(34px, 5vw, 54.4px);
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin-bottom: 24px;
	max-width: 680px;
}
.hero__title-accent { color: var(--c-accent); }
.hero__paragraph {
	font-size: 18.4px;
	line-height: 33.12px;
	color: var(--c-text-3);
	max-width: 560px;
	margin-bottom: 40px;
}
.hero__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}
@media (min-width: 768px) {
	.hero { padding: 160px 40px 120px; }
}

/* ---------- Spec list (Jak to funguje) ---------- */
.spec-list { background: var(--c-bg-2); padding: 80px 24px; }
.spec-list__inner {
	max-width: var(--container-max);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
}
.spec-list__intro .icon-tile { margin-bottom: 24px; }
.spec-list__intro .eyebrow { display: block; margin-bottom: 16px; }
.spec-list__heading {
	font-size: clamp(28px, 4vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 24px;
}
.spec-list__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	max-width: 506px;
}
.spec-list__rows {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.spec-list__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius-lg);
	padding: 17px 21px;
}
.spec-list__label {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 12px;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	color: var(--c-text-3);
}
.spec-list__value {
	font-family: var(--font-sans);
	font-weight: 500;
	font-size: 15.2px;
	color: var(--c-text-2);
	text-align: right;
}
@media (min-width: 1024px) {
	.spec-list { padding: 112px 40px; }
	.spec-list__inner { grid-template-columns: 1fr 1fr; gap: 48px; }
}

/* ---------- Realizace gallery ---------- */
.realizace { background: var(--c-bg-1); padding: 80px 24px; }
.realizace__inner { max-width: var(--container-max); margin: 0 auto; }
.realizace .eyebrow { display: block; margin-bottom: 12px; }
.realizace__heading {
	font-size: clamp(28px, 4vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 16px;
}
.realizace__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	max-width: 560px;
	margin-bottom: 48px;
}
.realizace-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
.realizace-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 220px;
	padding: 24px;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius-lg);
	overflow: hidden;
	text-align: center;
	transition: border-color 0.2s ease, transform 0.2s ease;
}
.realizace-card:hover {
	border-color: var(--c-accent-line);
	transform: translateY(-2px);
}
.realizace-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: var(--radius-lg);
	background: rgba(245, 158, 11, 0.06);
	color: var(--c-accent);
}
.realizace-card__icon svg { width: 22px; height: 22px; }
.realizace-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.realizace-card__title {
	font-family: var(--font-sans);
	font-size: 12.8px;
	color: var(--c-text-4);
}
@media (min-width: 640px) {
	.realizace-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
	.realizace { padding: 112px 40px; }
	.realizace-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ---------- Feature grid (Proč řešení na míru) ---------- */
.feature-grid { background: var(--c-bg-2); padding: 80px 24px; }
.feature-grid__inner { max-width: var(--container-max); margin: 0 auto; }
.feature-grid .eyebrow { display: block; margin-bottom: 12px; }
.feature-grid__heading {
	font-size: clamp(28px, 4vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 16px;
}
.feature-grid__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	max-width: 560px;
	margin-bottom: 48px;
}
.feature-grid__cards {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
.feature-card {
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius-lg);
	padding: 28px 24px;
	min-height: 236px;
}
.feature-card .icon-tile { margin-bottom: 28px; }
.feature-card__heading {
	font-family: var(--font-sans);
	font-weight: 600;
	font-size: 15.2px;
	color: var(--c-text-2);
	margin-bottom: 12px;
}
.feature-card__text {
	font-size: 13.6px;
	line-height: 21.76px;
	color: var(--c-text-4);
}
@media (min-width: 640px) {
	.feature-grid__cards { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
	.feature-grid { padding: 112px 40px; }
	.feature-grid__cards { grid-template-columns: repeat(4, 1fr); }
	.feature-grid--cols-3 .feature-grid__cards { grid-template-columns: repeat(3, 1fr); }
	.feature-grid--cols-2 .feature-grid__cards { grid-template-columns: repeat(2, 1fr); }
}

/* ---------- CTA strip ---------- */
.cta-strip {
	background: var(--c-bg-2);
	padding: 80px 24px;
	border-top: 1px solid var(--c-border-soft);
}
.cta-strip__inner {
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
}
.cta-strip__eyebrow { display: inline-block; margin-bottom: 16px; }
.cta-strip__heading {
	font-size: clamp(28px, 4vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 16px;
}
.cta-strip__paragraph {
	font-size: 16.8px;
	line-height: 28.56px;
	color: var(--c-text-4);
	margin-bottom: 32px;
}
.cta-strip__contact {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	justify-content: center;
	margin-bottom: 32px;
}
.contact-chip {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--c-text-3);
	font-size: 14.72px;
	transition: color 0.15s ease;
}
.contact-chip:hover { color: var(--c-accent); }
.cta-strip__button { display: inline-flex; }
@media (min-width: 1024px) {
	.cta-strip { padding: 112px 40px; }
}

/* ---------- Site footer ---------- */
.site-footer {
	background: var(--c-bg-1);
	border-top: 1px solid var(--c-border-soft);
	padding: 33px 24px;
}
.site-footer__inner {
	max-width: var(--container-max);
	margin: 0 auto;
	text-align: center;
}
.site-footer__copy {
	font-size: 13.12px;
	color: var(--c-text-5);
}

/* ---------- Generic page hero (no CTAs) ---------- */
.page-hero {
	background: var(--c-bg-1);
	padding: 100px 24px 96px;
}
.page-hero__inner {
	max-width: var(--container-max);
	margin: 0 auto;
}
.page-hero .eyebrow { display: inline-block; margin-bottom: 20px; }
.page-hero__title {
	font-size: clamp(30px, 3.6vw, 48px);
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin-bottom: 24px;
	max-width: 38rem;
}
.page-hero__paragraph {
	font-size: 18.4px;
	line-height: 33.12px;
	color: var(--c-text-3);
	max-width: 560px;
}
@media (min-width: 768px) {
	.page-hero { padding: 160px 40px 120px; }
}

/* ---------- Contact body (two columns) ---------- */
.contact-body {
	background: var(--c-bg-2);
	padding: 80px 24px;
}
.contact-body__inner {
	max-width: var(--container-max);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 56px;
}
@media (min-width: 1024px) {
	.contact-body { padding: 112px 40px; }
	.contact-body__inner { grid-template-columns: 1fr 1fr; gap: 80px; }
}

/* ---------- Contact details (left col) ---------- */
.contact-details .eyebrow { display: block; margin-bottom: 16px; }
.contact-details__heading {
	font-size: clamp(28px, 4vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 24px;
}
.contact-details__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	margin-bottom: 32px;
	max-width: 480px;
}
.contact-details__rows {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.contact-row {
	display: flex;
	align-items: center;
	gap: 20px;
}
.contact-row__body { display: flex; flex-direction: column; gap: 4px; }
.contact-row__label {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 11.52px;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	color: var(--c-text-4);
}
.contact-row__value {
	font-family: var(--font-sans);
	font-size: 16px;
	color: var(--c-text-2);
	transition: color 0.15s ease;
}
a.contact-row__value:hover { color: var(--c-accent); }
.icon-tile--md { width: 48px; height: 48px; border-radius: var(--radius-lg); }
.icon-tile--md svg { width: 22px; height: 22px; }

/* ---------- Contact form (right col) ---------- */
.contact-form-wrap .eyebrow { display: block; margin-bottom: 16px; }
.contact-form-wrap__heading {
	font-family: var(--font-sans);
	font-weight: 600;
	font-size: 22px;
	color: var(--c-text);
	margin-bottom: 12px;
}
.contact-form-wrap__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	margin-bottom: 32px;
}

.contact-form {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.contact-form__hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
.form-field { display: flex; flex-direction: column; gap: 8px; }
.form-field__label {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 11.52px;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	color: var(--c-text-3);
}
.form-field__hint {
	font-weight: 400;
	color: var(--c-text-5);
	margin-left: 4px;
}
.form-field__input {
	width: 100%;
	padding: 14px 16px;
	font-family: var(--font-sans);
	font-size: 15px;
	color: var(--c-text);
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius-md);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.form-field__input::placeholder { color: var(--c-text-5); }
.form-field__input:focus {
	outline: none;
	border-color: var(--c-accent);
	box-shadow: 0 0 0 3px var(--c-accent-soft);
}
.form-field__input--area {
	min-height: 140px;
	resize: vertical;
	line-height: 1.55;
}
.btn--block { width: 100%; padding: 16px 24px; }
.contact-form__submit { margin-top: 4px; }
.contact-form__disclaimer {
	font-size: 13.6px;
	line-height: 1.6;
	color: var(--c-text-5);
	text-align: center;
	margin: 0;
}

.form-message {
	padding: 16px 18px;
	border-radius: var(--radius-md);
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: 20px;
}
.form-message--success {
	background: rgba(34, 197, 94, 0.08);
	border: 1px solid rgba(34, 197, 94, 0.25);
	color: #86efac;
}
.form-message--error {
	background: rgba(239, 68, 68, 0.08);
	border: 1px solid rgba(239, 68, 68, 0.25);
	color: #fca5a5;
}

/* ---------- Page hero with CTAs + stats (O nás) ---------- */
.page-hero__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 32px;
}
.page-hero__divider {
	border: 0;
	border-top: 1px solid var(--c-border);
	margin: 56px 0 32px;
	max-width: 560px;
}
.stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px 56px;
	margin: 0;
	padding: 0;
}
.stats__item { display: flex; flex-direction: column; gap: 4px; }
.stats__value {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	color: var(--c-accent);
	letter-spacing: -0.5px;
}
.stats__label {
	font-size: 13.6px;
	color: var(--c-text-4);
	margin: 0;
}
@media (min-width: 768px) {
	.stats { grid-template-columns: repeat(3, minmax(0, auto)); }
	.stats__value { font-size: 38.4px; }
}

/* ---------- O nás — Naše hodnoty (two-column with checklist) ---------- */
.onas-values { background: var(--c-bg-1); padding: 80px 24px; }
.onas-values__inner {
	max-width: var(--container-max);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
}
.onas-values__intro .icon-tile { margin-bottom: 24px; }
.onas-values__intro .eyebrow { display: block; margin-bottom: 16px; }
.onas-values__heading {
	font-size: clamp(28px, 4vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 20px;
}
.onas-values__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	max-width: 480px;
}
.onas-values__rows {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.value-row { display: flex; align-items: flex-start; gap: 14px; }
.value-row__check {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 6px;
	background: var(--c-accent-soft);
	color: var(--c-accent);
	margin-top: 2px;
}
.value-row__check svg { width: 14px; height: 14px; }
.value-row__body { margin: 0; font-size: 15px; line-height: 25.5px; color: var(--c-text-4); }
.value-row__heading { color: var(--c-text-2); font-weight: 600; }
@media (min-width: 1024px) {
	.onas-values { padding: 112px 40px; }
	.onas-values__inner { grid-template-columns: 1fr 1fr; gap: 80px; }
}

/* ---------- Product catalog (Produkty) ---------- */
.product-catalog { background: var(--c-bg-2); padding: 80px 24px; }
.product-catalog__inner { max-width: var(--container-max); margin: 0 auto; }
.product-catalog .eyebrow { display: block; margin-bottom: 12px; }
.product-catalog__heading {
	font-size: clamp(26px, 3.6vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 16px;
	max-width: 38rem;
}
.product-catalog__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	max-width: 600px;
	margin-bottom: 48px;
}
.product-catalog__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
.product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 28px 24px 24px;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius-lg);
	transition: border-color 0.2s ease, transform 0.2s ease;
}
a.product-card:hover { border-color: var(--c-accent-line); transform: translateY(-2px); }
.product-card__num {
	position: absolute;
	top: 18px;
	right: 22px;
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 11.52px;
	letter-spacing: 0.96px;
	color: var(--c-text-5);
}
.product-card__icon { margin-bottom: 8px; }
.product-card__heading {
	font-family: var(--font-sans);
	font-weight: 600;
	font-size: 16px;
	color: var(--c-text-2);
}
.product-card__text {
	font-size: 13.6px;
	line-height: 21.76px;
	color: var(--c-text-4);
	flex: 1 0 auto;
}
.product-card__more {
	font-family: var(--font-mono);
	font-weight: 700;
	font-size: 11.52px;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	color: var(--c-accent);
	margin-top: 4px;
}
.product-card__more--muted { color: var(--c-text-5); }
@media (min-width: 640px) { .product-catalog__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) {
	.product-catalog { padding: 112px 40px; }
	.product-catalog__grid { grid-template-columns: repeat(4, 1fr); }
}

/* ---------- Tailored (Produkty — Řešení přizpůsobená na míru) ---------- */
.tailored { background: var(--c-bg-1); padding: 80px 24px; }
.tailored__inner {
	max-width: var(--container-max);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
}
.tailored__intro .icon-tile { margin-bottom: 24px; }
.tailored__intro .eyebrow { display: block; margin-bottom: 16px; }
.tailored__heading {
	font-size: clamp(26px, 3.6vw, 38.4px);
	line-height: 1.25;
	margin-bottom: 20px;
	max-width: 38rem;
}
.tailored__paragraph {
	font-size: 16px;
	line-height: 28.8px;
	color: var(--c-text-3);
	margin-bottom: 32px;
	max-width: 480px;
}
.tailored__rows {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
@media (min-width: 1024px) {
	.tailored { padding: 112px 40px; }
	.tailored__inner { grid-template-columns: 1fr 1fr; gap: 80px; }
}

/* ---------- Breakpoints (mobile-first) ----------
 * 768px  — tablet, 1024px — small desktop, 1280px — desktop.
 */
