/* Template: 2_byt_zatecka — scoped to .tpl-zatecka, do not rely on global site classes */

.tpl-zatecka {
	--tpl-cream: #f3ede2;
	--tpl-gold: #9a7638;
	--tpl-gold-light: #d9bd85;
	--tpl-dark: #2a2620;
	--tpl-gray: #5c584f;
	--tpl-line: rgba(42, 38, 32, 0.15);

	text-align: left;
	color: var(--tpl-dark);
	overflow: hidden;
}

.tpl-zatecka * {box-sizing: border-box;}

.tpl-wrapper {
	max-width: 1260px;
	width: 100%;
	margin: 0 auto;
	padding: 0 90px;
}

/* Hero */
.tpl-hero {
	position: relative;
	width: 100%;
	min-height: 100vh;
	min-height: 100dvh;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: flex-end;
}

.tpl-hero:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(10, 8, 6, 0.88) 0%, rgba(10, 8, 6, 0.55) 30%, rgba(10, 8, 6, 0.1) 60%, rgba(10, 8, 6, 0) 80%);
}

.tpl-hero-inner {
	position: relative;
	z-index: 2;
	width: 100%;
}

.tpl-hero-content {
	max-width: 620px;
	padding-bottom: 80px;
	color: #fff;
}

.tpl-eyebrow {
	display: block;
	font-family: 'Open Sans', sans-serif;
	text-transform: uppercase;
	letter-spacing: 3px;
	font-size: 13px;
	color: var(--tpl-gold-light);
	margin: 0 0 16px;
}

.tpl-h1 {
	font-family: "Didot";
	font-weight: 400;
	font-size: 56px;
	line-height: 1.15;
	margin: 0 0 16px;
}

.tpl-hero-sub {
	font-family: "Didot";
	font-weight: 400;
	font-size: 22px;
	margin: 0;
	color: var(--tpl-gold-light);
}

/* Copy + image split */
.tpl-split {
	background: #fff;
	border-top: 1px solid var(--tpl-line);
}

.tpl-split-inner {
	display: flex;
	align-items: stretch;
}

.tpl-split-image {
	flex: 0 0 50%;
	max-width: 50%;
	height: 640px;
	background-size: cover;
	background-position: center;
}

.tpl-split-text-col {
	flex: 0 0 50%;
	max-width: 50%;
	display: flex;
	align-items: center;
	padding: 40px 90px;
}

.tpl-copy-block {
	max-width: 560px;
	width: 100%;
}

.tpl-copy-block p {
	color: var(--tpl-gray);
	line-height: 1.85;
	margin: 0 0 20px;
}

.tpl-copy-block p:last-child {
	margin-bottom: 0;
}

.tpl-copy-block p:first-of-type {
	font-family: "Didot";
	font-size: 28px;
	line-height: 1.4;
	color: var(--tpl-dark);
	margin-bottom: 24px;
}

.tpl-copy-block p:first-of-type strong {
	font-weight: 400;
}

.tpl-quote {
	font-family: "Didot";
	font-style: italic;
	font-size: 19px;
	line-height: 1.6;
	color: var(--tpl-gold);
	margin: 0 0 20px;
	padding: 4px 0 4px 20px;
	border-left: 3px solid var(--tpl-gold);
}

.tpl-copy-block p.tpl-label {
	font-size: 20px;
	color: var(--tpl-dark);
	margin-bottom: 20px;
}

.tpl-copy-block p.tpl-label strong {
	font-weight: 700;
}

.tpl-terms-list {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 17px;
}

.tpl-terms-list li {
	color: var(--tpl-gray);
	line-height: 1.6;
	padding: 12px 0;
	border-top: 1px solid var(--tpl-line);
}

.tpl-terms-list li:last-child {
	border-bottom: 1px solid var(--tpl-line);
}

/* Photo collage */
.tpl-collage {
	display: flex;
	gap: 1px;
	background: var(--tpl-line);
	border-top: 1px solid var(--tpl-line);
}

.tpl-collage-item {
	flex: 1 1 50%;
	height: 640px;
	background-size: cover;
	background-position: center;
	background-color: #fff;
}

/* Floor plans + specs */
.tpl-plans {
	background: var(--tpl-cream);
	border-top: 1px solid var(--tpl-line);
}

.tpl-plans-inner {
	display: flex;
	align-items: flex-start;
	gap: 60px;
	padding-top: 40px;
	padding-bottom: 40px;
}

.tpl-plans-images {
	flex: 1 1 58%;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.tpl-plan-card {
	background: #fff;
	padding: 20px;
	box-shadow: 0 6px 24px rgba(42, 38, 32, 0.08);
}

.tpl-plans-images img {
	display: block;
	width: 100%;
	height: auto;
}

.tpl-plans-text {
	flex: 1 1 42%;
}

/* Responsive */
@media all and (max-width: 991px) {
	.tpl-wrapper {padding: 0 50px;}
	.tpl-h1 {font-size: 42px;}
	.tpl-hero-sub {font-size: 19px;}
	.tpl-split-image {height: 440px;}
	.tpl-split-text-col {padding: 32px 50px;}
	.tpl-copy-block p:first-of-type {font-size: 24px;}
	.tpl-collage-item {height: 440px;}
	.tpl-plans-inner {padding-top: 32px; padding-bottom: 32px; gap: 40px;}
}

@media all and (max-width: 767px) {
	.tpl-wrapper {padding: 0 24px;}
	.tpl-hero-content {max-width: 100%;}
	.tpl-h1 {font-size: 32px;}
	.tpl-hero-sub {font-size: 17px;}

	.tpl-split-inner {flex-direction: column;}
	.tpl-split-image {flex: 0 0 280px; max-width: 100%; height: 280px;}
	.tpl-split-text-col {flex: 0 0 auto; max-width: 100%; padding: 24px;}
	.tpl-copy-block p:first-of-type {font-size: 21px;}
	.tpl-quote {font-size: 17px; padding-left: 16px;}

	.tpl-collage {flex-direction: column;}
	.tpl-collage-item {flex: 0 0 280px; height: 280px;}

	.tpl-plans-inner {flex-direction: column; padding-top: 24px; padding-bottom: 24px; gap: 24px;}
}
