
@media (min-width: 2600px) {

	.content07 #map { width: 54%; }
	.content08 .container-fluid{ max-width: 1640px; }
	.content17::before {width: 45%;}
	 .custom-2600 {
        max-width: 100% !important;
        padding-left: 60px;
        padding-right: 60px;
    }
	 .row.g-3 {
        --bs-gutter-x: 2rem;
        --bs-gutter-y: 2rem;
    }

}

@media (max-width: 1730px) {
	.content02::after {
		top: 40%;
		background-size: 147% auto;
	}
	footer .offcanvas-contact p a {font-size: 14pt;}
	.content11 table tr:last-child td:last-child {font-size: 22pt;}
	.content1301 {
		font-size: 260pt;
		line-height: 320pt;
	}

}

@media (max-width: 1600px) {
}

@media (max-width: 1400px) {

	h3 {font-size: 26pt;}
	h4 {font-size: 28pt;}
	h5 {font-size: 16pt;}

	.container {max-width: 1280px;}
	header .offcanvas.offcanvas.offcanvas-end {padding: 20px 70px;}
	header .offcanvas .navbar-nav .nav-link {
		font-size: 14.5pt;
		padding: 3px 0;
	}
	header .offcanvas-contact p {
		font-size: 14.25pt;
		margin: 10px 0;
	}
	.overflow-end-img {max-width: 110%; }
	.overflow-start-img {max-width: 112%; }
	.image-overflow-end-wrapper {transform: translate(calc(var(--bs-gutter-x) * .5),-65%);}
	.image-overflow-end-wrapper span {
		font-size: 200pt;
		line-height: 125pt;
	}
	.benefit {font-size: 12pt;}
	.content03 {font-size: 14pt;}
	.content03 > span {
		font-size: 200pt;
		line-height: 120pt;
	}
	.note.swiper-slide-active .img-box {height: 98%;}
	.content05 {font-size: 20pt;}
	.content1301 {
		font-size: 210pt;
		line-height: 300pt;
	}
	.content14 .col-sm-3 > div {padding: 30px;}
	.content15 .offset-md-4 > div {
		padding: 30px;
		font-size: 16pt;
	}
	.content1302 {
		font-size: 210pt;
		line-height: 130pt;
	}

	.content18 ol li {padding: 30px 30px 20px 110px;}
	.content18 ol li::before {font-size: 150pt;}
	.content18 ol li h4 {font-size: 18pt;}


}

@media (max-width: 1199px) {
	.header-developer-item {display: none !important;}
}

@media only screen and (max-width : 1024px) {


	  .note { width: 50%; }
	  .note.swiper-slide-active { width: 80% !important; }
	.content11 table tr td:first-child {padding-left: 15px;}
	.content11 table tr:last-child td:last-child {font-size: 18pt;}

}
/* iPad landscape ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1366px) and (orientation : landscape) and (-webkit-min-device-pixel-ratio : 2) {
	
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1180px) and (orientation : landscape) and (-webkit-min-device-pixel-ratio : 2) {
	.content05 ul li {padding: 5px 18px;}
	footer .col-md-2 {width: 26%;}
	h6 {font-size: 40pt;}


}

/* ipad portrait ----------------------------------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
	header .navbar-nav .nav-item {padding: 3px 10px;}
	.nav-item:last-child {min-width: 40px;}
	header .navbar-nav .nav-link {font-size: 10pt;}
	.content01 > img, .content01 > video {aspect-ratio: 9 / 16;}
	footer .col-md-2 {width: 22%;}

	.content18 {padding: 50px 0;}
	.content18 ol {
		grid-template-columns: repeat(2, 1fr);
		gap: 30px;
		padding: 0 0 20px 0;
	}
	.content10.houses {height: calc(70vh - 100px);}

}

@media only screen and (min-device-width : 768px) and (max-device-width : 900px) and (orientation : portrait) {
	h6 {font-size: 40pt;}

	.logo {
		width: 200px;
		transform: translate(0, -40%);
	}
	body.scrolled .site-header {min-height: 60px;}
	body.scrolled .site-header .logo {transform: translate(0, -35%);}
	.content02 {padding: 100px 0 200px 0;}
	.content05 ul li {padding: 5px 18px;}
	.content05 ul li:nth-child(3)::before {display: none;}
	.content09 .col-md-5 > strong { font-size: 22pt;}
	.image-overflow-end-wrapper {transform: translate(calc(var(--bs-gutter-x) * .5), -45%);}
	.image-overflow-end-wrapper span {
        font-size: 100pt;
        line-height: 55pt;
    }
	    .content03 > span {
        font-size: 140pt;
        line-height: 75pt;
    }
	.content11 .col-md-5 {width: 50%;}
	.content11 table tr td:first-child {padding-left: 15px;}
	.content11 table tr:last-child td:last-child {font-size: 16pt;}
	.content10.houses {height: calc(68vh - 100px);}

}
	
/* mobile landscape ----------------------------------- */
@media (min-width: 481px) and (max-width: 896px) and (orientation: landscape) {
	body {
		height: 100vh !important;
		overflow: hidden;
	}
	.landscape {
		display: block !important;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100vh;
		background: var(--c-dark);
		z-index: 40;
		text-align: center;
	}
	.landscape div {
		position: absolute;
		left: 0;
		top: 50%;
		width: 100%;
		transform: translate(0,-50%);
	}
	.landscape div img {
		width: 200px;
		margin-bottom: 50px;
	}
	.landscape span {
		background: url("../images/ico08.svg") no-repeat center top;
		background-size: 90px auto;
		display: block;
		padding: 110px 15px 0 15px;
		color: #fff;
		font-size: 16pt;
	}

}

/* mobile portrait ----------------------------------- */
@media(max-width:500px) and (orientation : portrait) {
	h1 {
		font-size: 30pt;
		margin: 30px 0 10px 0;
	}
	h2 {font-size: 20pt;}
	h3 {font-size: 20pt;}
	h4 {font-size: 22pt;}
	h6 {font-size: 28pt;}
	.logo {
		width: 200px;
		transform: translate(0, -40%);
	}
	body.scrolled .site-header {min-height: 60px;}
	body.scrolled .site-header .logo {transform: translate(0, -35%);}
	header .offcanvas.offcanvas.offcanvas-end {
		padding: 20px 40px;
		min-width: 100%;
	}
	header .offcanvas-header .btn-close {right: -10px;}
	header .offcanvas.offcanvas.offcanvas-end img {
		width: 240px;
		margin: 10px 0;
	}
	header .offcanvas .navbar-nav .nav-item {padding: 0;}
	header .offcanvas .navbar-nav .nav-link {font-size: 13pt;}
	header .offcanvas-contact {padding: 30px 0 5px 0;}
	header .offcanvas-contact p {
        font-size: 13pt;
        margin: 0 0 10px 0;
    }
	header .offcanvas div a:first-child {margin-right: 40px;}
	.offcanvas-rights span {margin-right: 10px;}
	.offer {
		bottom: 20px;
		right: 50%;
		writing-mode: horizontal-tb;
		transform: rotate(0deg) translate(50%,0);
		padding: 8px 30px;
		min-width: 60%;
		text-align: center;
	}
	.content02 {padding: 60px 0 200px 0;}
	.content02::before {height: 35%;}
	.content02::after {
		top: 35%;
		width: 100%;
		height: 50%;
		background-size: auto 100%;
	}
	.content02 .col-md-6.offset-md-4 p {
		font-size: 16pt;
		margin-bottom: 150px;
	}
    .image-overflow-end-wrapper {transform: translate(calc(var(--bs-gutter-x) * .5), 0);}
	    .image-overflow-end-wrapper span {
        font-size: 80pt;
        line-height: 45pt;
    }
	.content02 .slider-wrapper, .content06 .slider-wrapper {margin: 80px 0 30px 0;}
	.slider-benefits .swiper-slide,	.slider-note .swiper-slide, .slider-milestone .swiper-slide {width: 100% !important;}
	.slider-benefits .swiper-wrapper, .slider-note .swiper-wrapper, .slider-milestone .swiper-wrapper {
        display: block !important;
        width: 100% !important;
    }
    .slider-benefits .swiper-slide {
        width: 100% !important;
        margin-bottom: 20px; 
        height: auto !important;
    }
	.benefit { 
		padding: 140px 40px 40px 40px;
		margin: 20px 0;
		display: block; 
	}
	.benefit::before {
		width: 100%;
		height: 100%;
		aspect-ratio: inherit;
	}
	.decorative-plant-home {
		right: -100px;
		bottom: -100px;
		width: 300px;
	}
	.decorative-plant-intro {
		right: -80px;
		top: 440px;
		width: 280px;
	}
	.content03 > span {
		font-size: 70pt;
		line-height: 40pt;
		left: -15px;
	}
	.note { 
		width: 100%; 
		height: auto;
		display: block;
	}
	.content04 {padding: 60px 0;}
	.note.swiper-slide-active { width: 100% !important; }
	.note-content {height: auto; }
	.note .img-box {aspect-ratio: 1 / 1;}
	.note.swiper-slide-active {width: 100% !important; }
	.note.swiper-slide-active .note-content {height: auto; }
	.note.swiper-slide-active .img-box {
		height: auto;
		aspect-ratio: 1 / 1;
	}
	.note .img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.swiper-button-next, .swiper-button-prev, .content05 ul li:nth-child(2)::before, .content05 ul li:nth-child(4)::before, .content09 .col-md-5 > strong br {display: none;}
	.content05 {
        font-size: 12pt;
		padding: 30px 0;
    }
	.content05 ul li {padding: 5px 14px;}
	.content05 ul li::before {
		width: 8px;
		height: 8px;
		right: -6px;
		top: calc(50% - 4px);
	}
	.content06 {padding: 0 0 20px 0;}
	.milestone {padding-bottom: 70px;}
	.milestone span::before {
		width: 1px;
		height: 70px;
		top: auto;
		left: 41px;
		bottom: 100%;
	}
	.content06 .col-md-12.text-center a {margin: 25px 0;}
	.content07 #map {
		position: relative;
		height:300px;
		width: 100%;
		right: auto;
		top: auto;
	}
	.content07 {padding: 50px 0 0 0;}
	.content07.contact {text-align: center;}
	.content07 p {
		line-height: 140%;
		padding-bottom: 0;
		font-size: 14pt;
	}
	.content07 .btn02, 	.content07 .btn01 {
		width: 100%;
		text-align: center;
		margin-bottom: 40px;
	}
	.content08 .col-md-5 a {aspect-ratio: 1 / 1;}
	.btn04 {
		text-align: center;
		width: 100%;
	}
	.content09 {padding: 60px 0 180px 0;}
	.form-img {
		width: 100%;
		margin:  50px 0;
	}
	.content09 .col-md-5 > strong {font-size: 24pt;}
	.para-footer {
		top: -300px;
		left: 50%;
		width: 150px;
		margin-left: -75px;
	}
	footer {text-align: center;}
	footer ul {padding: 0;}
	footer .offcanvas-contact {padding-top: 20px;}
	.content11 table {
		width: 100%;
		margin: 20px 0;
	}
	.content11 table td, .content11 table tr td:first-child {padding: 10px;}
	.content1101 {padding: 0 0 40px 0;}
	.content11 .col-md-3 {padding-top: 0;}

	.content13 {padding: 40px 0;}
	.content1301 {
        font-size: 110pt;
        line-height: 150pt;
    }
	.content14 { padding-bottom: 20px;}
	.content14 .col-12 img {
		margin-top: -90px;
    	aspect-ratio: 16 / 9;
	}
	.content14 .col-12 h3 {margin: 40px 0;}
	.content14 .col-sm-9 h5 {
		text-align: center;
		font-size: 14pt;
	}
	.content1501 {width: 100%;}
	.content15 .offset-md-4 > div {
        padding: 20px;
        font-size: 14pt;
    }
	.content16 .offset-md-1 {
		padding-top: 0%;
		padding-bottom: 160px;
	}
	.content1601 {
		top: auto;
		bottom: 0;
		width: 100%;
		height: 310px;
	}
	.content17 {
		height: auto;
		padding: 80px 0;
		background-attachment: inherit;
		text-align: center;
	}
	.content17::before {width: 100%;}
	.content17 p {margin-bottom: 20px;}
	.content13 .col-md-5.offset-md-1 img {
		max-width: 100%;
		position: relative;
		max-height: calc(100% + 100px);
		margin-top: 20px;
	}
	.content1302, .content18 h6 br, .content1901 {display: none;}
	.content18 {padding: 30px 0;}
	.content18 ol {
		grid-template-columns: repeat(1, 1fr);
		gap: 15px;
		padding: 0 0 20px 0;
	}
	.content19 {padding: 40px 0;}
	.content1902 {margin-bottom: 0;}

	.content20 ul {
		padding: 20px 0;
		font-size: 20pt;
	}
	.table-buttons .radiolabel {padding: 8px 15px;}
	.content10.houses {height: calc(50vh - 100px);}

}


/* tom 2026 ----------------------------------- */
.content10.houses {
	height: auto;
	aspect-ratio: 16 / 9;
}
/* Na desktopu je fotka zasunutá pod bílou hlavičkou (nahoře je jen obloha).
   Na mobilu je fotka nízká a hlavička by zakryla skoro půlku domu, proto začíná až pod ní. */
@media (max-width: 991px) {
	.content10.houses {margin-top: 100px;}
}
@media (max-width: 767px) {
	.rotator-controls {bottom: 10px; padding: 3px;}
	.rotator-controls button {width: 34px; height: 34px; font-size: 11pt;}
}
@media (max-width: 767px) {
	/* klikací mapa pater je i na mobilu (klepnutí na patro otevře jeho stránku),
	   tlačítka pater pod nadpisem zůstávají jako pohodlnější volba */
	.patra-links {display: block;}
}
/* na dotykových zařízeních není najetí myší – obrysy pater jsou vidět trvale, ať je jasné, že se dá klepnout */
@media (hover: none) {
	.mapa-pater a {stroke: rgba(255,255,255,.55);}
}
@media (max-width: 767px) {
	.patro-hero {padding: 20px 0;}
	.patro-hero-title {font-size: 24pt;}
	.patro-hero .patro-controls {bottom: 16px; gap: 2px;}
	.patro-controls a,
	.patro-controls span.is-disabled {
		height: 34px;
		line-height: 34px;
		padding: 0 12px;
		font-size: 10pt;
	}
}
@media (max-width: 767px) {
	.content22 {padding: 50px 0 20px 0;}
	.makler-foto {max-width: 320px; margin: 0 auto 20px auto;}
}
@media (max-width: 767px) {
	.phase-link,
	body.scrolled .phase-link {
		top: auto;
		bottom: 120px;
		width: 118px;
		padding: 12px 10px 14px 10px;
	}
	.phase-link strong,
	body.scrolled .phase-link strong {font-size: 15pt;}
	.phase-link span {font-size: 10pt; margin-top: 4px;}
}
/* „II. etapa“ vedle loga: na středních šířkách by kolidovala s menu, na mobilu je menu
   schované pod hamburgerem a místo je; na úplně úzkých telefonech se nevejde */
@media (min-width: 992px) and (max-width: 1439px) {
	.logo-etapa {display: none;}
}
@media (max-width: 991px) {
	.logo-etapa {left: 214px; font-size: 12pt; transform: translateY(-40%);}
	body.scrolled .site-header .logo-etapa {left: 194px; font-size: 11pt;}
}
@media (max-width: 359px) {
	.logo-etapa {display: none;}
}
/* makléři v patičce pod formulářem */
@media (max-width: 767px) {
	.paticka-makleri {margin-top: 50px;}
	.paticka-makler {gap: 18px;}
	.paticka-makler-foto {flex-basis: 96px; height: 96px;}
	.paticka-makler-text strong {font-size: 17pt;}
	.paticka-makler-text a {font-size: 12pt;}
}
/* tabulka bytů na mobilu: místo široké tabulky s posouváním do strany karty
   Byt 2.19 ............ [Volný]
   2. NP · 1+KK · 27,21 m² · venkovní 5,98 m²
   4 489 650 Kč ........ [Detail bytu] */
@media (max-width: 767px) {
	.tabulka-bytu .table-responsive {overflow: visible;}
	.tabulka-bytu table {white-space: normal; margin-top: 0;}
	.tabulka-bytu thead {display: none;}
	.tabulka-bytu tbody tr[data-byt] {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		row-gap: 6px;
		padding: 16px 0;
		border-bottom: solid 1px var(--c-light);
	}
	.tabulka-bytu tbody tr[data-byt][hidden] {display: none;}
	.content21 .tabulka-bytu td {
		border: 0;
		padding: 0;
		width: auto;
		text-align: left;
	}
	.content21 .tabulka-bytu tr:hover td {background: none;}
	.tabulka-bytu .t-byt {flex: 1 0 calc(100% - 110px); font-size: 17pt;}
	.tabulka-bytu .t-byt::before {content: attr(data-typ) " "; font-weight: 400;}
	.content21 .tabulka-bytu td.t-stav {flex: 0 0 110px; text-align: right;}
	.content21 .tabulka-bytu td.t-stav span {min-width: 0; padding: 6px 12px; font-size: 10pt;}
	.tabulka-bytu .t-patro, .tabulka-bytu .t-disp, .tabulka-bytu .t-plocha, .tabulka-bytu .t-venku {
		font-weight: 400;
		font-size: 11pt;
		color: var(--c-dark);
	}
	.tabulka-bytu .t-patro + .t-disp::before,
	.tabulka-bytu .t-plocha::before {content: "·"; margin: 0 6px;}
	.tabulka-bytu .t-venku::before {content: "· venkovní "; margin-left: 6px;}
	.tabulka-bytu .t-venku.t-prazdne {display: none;}
	.content21 .tabulka-bytu td.t-cena {flex: 1 0 calc(100% - 130px); font-size: 14pt; margin-top: 4px;}
	.content21 .tabulka-bytu td.t-akce {flex: 0 0 130px; text-align: right; margin-top: 4px;}
	.content21 .tabulka-bytu td.t-akce a {padding: 8px 12px; font-size: 10pt;}
	.content21 .tabulka-bytu tr.patro-empty td {display: block; width: 100%;}
	/* pořadí v kartě: číslo + stav, parametry, cena + tlačítko */
	.tabulka-bytu .t-byt {order: 1;}
	.tabulka-bytu .t-stav {order: 2;}
	.tabulka-bytu .t-patro, .tabulka-bytu .t-disp, .tabulka-bytu .t-plocha, .tabulka-bytu .t-venku {order: 3;}
	.tabulka-bytu .t-cena {order: 4;}
	.tabulka-bytu .t-akce {order: 5;}
}
/* štítek 1. etapy na mobilu jen nahoře na stránce, po odrolování by zakrýval obsah
   (odkaz je pak v rozbalovacím menu) */
@media (max-width: 767px) {
	.phase-link {transition: opacity .25s, visibility .25s;}
	body.scrolled .phase-link {opacity: 0; visibility: hidden;}
}
@media (max-width: 767px) {
	/* štítek 1. etapy na mobilu jen na úvodní stránce (leží přes úvodní fotku), jinde by zakrýval obsah */
	body:not(.uvodni-stranka) .phase-link {display: none;}
	/* stránka patra: lišta pater pod půdorysem, ne plovoucí přes něj */
	.patro-hero {padding-bottom: 20px;}
	.patro-hero .patro-controls,
	.patro-hero .patro-controls.is-docked {
		position: static;
		transform: none;
		max-width: none;
		margin: 16px 12px 0 12px;
		box-shadow: none;
	}
}
/* „Investice do budoucna“: na mobilu je bílý text přes světlou fotku, přidat ztmavení nad fotku */
@media (max-width: 767px) {
	.content03::after {
		content: "";
		position: absolute;
		inset: 0;
		z-index: -1;
		background: linear-gradient(rgba(5,46,58,.25), rgba(5,46,58,.7));
		pointer-events: none;
	}
}
/* galerie: na tabletu užší mezery, na mobilu sloupce pod sebou */
@media (max-width: 991px) {
	.galerie-mrizka, .galerie-sloupec {gap: 10px;}
}
@media (max-width: 575px) {
	.galerie-mrizka {flex-direction: column;}
	.galerie-sloupec {width: 100%;}
}
