/**
 * ParkWay checkout v1.3.9 — NextPark-inspired, progressive tiles.
 */

body.parkway-booking-page {
	background: #eef1f4;
	color: var(--parkway-ink);
	font-family: var(--parkway-font);
}

/* Nie nadpisujemy overflow/height body — sticky header AAE musi działać jak na thank-you. */

/* Scope stylów TYLKO do formularza — nie ruszamy nagłówka/stopki strony. */
body.parkway-booking-page .parkway-booking-shell {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 1rem 1.15rem 3rem;
	box-sizing: border-box;
}

body.parkway-booking-page .woocommerce-notices-wrapper {
	max-width: 1140px;
	margin: 0 auto 0.75rem;
	padding: 0 1.15rem;
}

/* ---- Hero / Gallery ---- */

.parkway-hero {
	margin-bottom: 1.25rem;
}

.parkway-hero__heading {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 0.9rem;
}

.parkway-hero__title {
	margin: 0;
	font-family: var(--parkway-display);
	font-size: clamp(1.7rem, 3.2vw, 2.4rem);
	letter-spacing: -0.02em;
	color: var(--parkway-navy);
	line-height: 1.15;
}

.parkway-hero__badges {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.parkway-hero__rating,
.parkway-hero__transfer {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	background: #fff;
	border: 1px solid var(--parkway-border);
	border-radius: 999px;
	padding: 0.45rem 0.8rem;
	font-size: 0.85rem;
	box-shadow: 0 6px 18px rgba(11, 31, 58, 0.05);
}

.parkway-hero__transfer {
	color: var(--parkway-navy);
	font-weight: 700;
}

.parkway-hero__transfer-icon {
	display: inline-flex;
	color: var(--parkway-teal-dark);
}

.parkway-hero__transfer strong {
	font-weight: 750;
}

.parkway-hero__stars {
	color: #f5b400;
	letter-spacing: 0.05em;
}

.parkway-hero__reviews {
	color: var(--parkway-muted);
}

.parkway-gallery {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.75fr);
	gap: 0.75rem;
	margin-bottom: 0.75rem;
	align-items: stretch;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.parkway-gallery__carousel {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	background: #d9e0dc;
	min-height: 420px;
	height: 100%;
	min-width: 0;
	box-shadow: 0 14px 36px rgba(11, 31, 58, 0.1);
	touch-action: pan-y;
	cursor: grab;
	user-select: none;
	-webkit-user-select: none;
}

.parkway-gallery__carousel:active {
	cursor: grabbing;
}

.parkway-gallery__track {
	position: absolute;
	inset: 0;
}

.parkway-gallery__slide {
	margin: 0;
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 1.1s ease-in-out;
	z-index: 0;
	pointer-events: none;
}

.parkway-gallery__slide.is-active {
	opacity: 1;
	z-index: 1;
	pointer-events: auto;
}

.parkway-gallery__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.parkway-gallery__dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0.85rem;
	display: flex;
	justify-content: center;
	gap: 0.45rem;
	z-index: 3;
	pointer-events: none;
}

.parkway-gallery__dot {
	pointer-events: auto;
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 999px;
	border: 1.5px solid rgba(255, 255, 255, 0.85);
	background: rgba(255, 255, 255, 0.28);
	padding: 0;
	cursor: pointer;
	transition: transform 0.25s ease, background 0.25s ease;
}

.parkway-gallery__dot.is-active {
	background: rgba(255, 255, 255, 0.92);
	transform: scale(1.18);
}

.parkway-gallery__dot:hover {
	background: rgba(255, 255, 255, 0.65);
}

.parkway-gallery__side {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	min-height: 420px;
	height: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

.parkway-gallery__dates {
	flex: 1.2 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
	/* Padding na kafelku — równomierny odstęp z prawej i lewej. */
	padding: 1rem 1.35rem 1.2rem !important;
}

.parkway-tile--dates-hero {
	overflow: hidden;
}

.parkway-gallery__dates .parkway-step-body {
	flex: 1;
	padding: 0.15rem 0 0 !important;
	overflow: visible;
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
}

.parkway-dates-card__head {
	padding: 0 0 0.15rem !important;
}

.parkway-gallery__dates .parkway-dates-block,
.parkway-gallery__dates .parkway-dates,
.parkway-gallery__dates .parkway-dates__meta,
.parkway-gallery__dates .parkway-dates__next {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.parkway-gallery__dates .parkway-dates--hero {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.parkway-gallery__dates .parkway-dates__field {
	min-width: 0;
	max-width: 100%;
}

.parkway-gallery__dates .parkway-dates__field input[type="date"] {
	min-width: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.parkway-dates-card__head .parkway-tile__title {
	margin: 0;
	font-size: 1.15rem;
}

.parkway-dates__next {
	margin-top: 0.75rem;
	width: 100%;
	box-sizing: border-box;
}

.parkway-gallery__minis {
	flex: 1 1 auto;
	display: grid;
	grid-template-rows: auto auto auto;
	gap: 0.55rem;
	min-height: 0;
}

.parkway-mini-card {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid #d8e0dc;
	box-shadow: none;
	min-height: 0;
}

.parkway-mini-card--mint {
	background: #eaf7f0;
	border-color: #9ecfb8;
	justify-content: center;
	text-align: center;
}

.parkway-mini-card--row {
	align-items: center;
}

.parkway-mini-card__center {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.4;
	color: #1a3a2e;
	font-weight: 600;
}

.parkway-mini-card__icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.2rem;
	height: 2.2rem;
	margin-top: 0.1rem;
	color: var(--parkway-navy);
}

.parkway-mini-card__icon svg {
	display: block;
}

.parkway-mini-card__title {
	display: block;
	font-size: 0.9rem;
	line-height: 1.25;
	color: #14281f;
	margin-bottom: 0.15rem;
}

.parkway-mini-card__text {
	margin: 0;
	font-size: 0.78rem;
	line-height: 1.35;
	color: #667085;
}

.parkway-mini-card__text a {
	color: #2b6cb0;
	font-weight: 650;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.parkway-mini-card__text a:hover {
	color: #1a4f8a;
}

/* ---- Cennik carousel ---- */

.parkway-price-carousel {
	margin: 0 0 0.85rem;
}

.parkway-price-carousel__head {
	margin-bottom: 0.75rem;
}

.parkway-price-carousel__title {
	margin: 0;
	font-family: var(--parkway-display);
	font-size: 1.25rem;
	color: var(--parkway-navy);
	letter-spacing: -0.01em;
}

.parkway-price-carousel__sub {
	margin: 0.25rem 0 0;
	font-size: 0.88rem;
	color: var(--parkway-muted);
}

.parkway-price-carousel__viewport {
	position: relative;
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 0.35rem;
}

.parkway-price-carousel__track {
	display: flex;
	gap: 0.65rem;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	padding: 0.25rem 0.15rem 0.45rem;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	touch-action: pan-x;
	scrollbar-width: none;
	cursor: grab;
}

.parkway-price-carousel__track:active {
	cursor: grabbing;
	scroll-behavior: auto;
}

.parkway-price-carousel__track::-webkit-scrollbar {
	display: none;
}

.parkway-price-card {
	flex: 0 0 112px;
	aspect-ratio: 1 / 1;
	scroll-snap-align: start;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	min-height: 112px;
	padding: 0.85rem 0.65rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid var(--parkway-border);
	box-shadow: 0 6px 16px rgba(11, 31, 58, 0.05);
	text-align: center;
	box-sizing: border-box;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	user-select: none;
	-webkit-user-select: none;
}

.parkway-price-card.is-active {
	border-color: #6BE3AA;
	box-shadow: 0 0 0 3px rgba(107, 227, 170, 0.28);
}

.parkway-price-card__days {
	font-size: 0.88rem;
	font-weight: 750;
	color: var(--parkway-navy);
	line-height: 1.2;
}

.parkway-price-card__price {
	font-size: 1.05rem;
	font-weight: 800;
	color: #6BE3AA;
	line-height: 1.15;
}

.parkway-price-card--extra {
	flex-basis: 128px;
	aspect-ratio: auto;
	min-height: 112px;
}

.parkway-price-card--extra .parkway-price-card__price {
	font-size: 0.9rem;
}

.parkway-price-carousel__nav {
	width: 2rem;
	height: 2rem;
	border: 0;
	background: transparent;
	color: var(--parkway-navy);
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	opacity: 0.7;
}

.parkway-price-carousel__nav:hover {
	opacity: 1;
}

.parkway-benefits {
	list-style: none;
	margin: 0;
	padding: 1.25rem 1.35rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.15rem 1.5rem;
	background: #0f2b4d;
	border: 1px solid rgba(93, 218, 180, 0.18);
	border-radius: 16px;
}

.parkway-benefits__item {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.85rem;
	align-items: center;
}

.parkway-benefits__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.1);
	color: #5ddab4;
	flex-shrink: 0;
}

.parkway-benefits__icon svg {
	display: block;
}

.parkway-benefits__title {
	display: block;
	font-size: 0.95rem;
	line-height: 1.3;
	color: #fff;
	margin-bottom: 0.2rem;
}

.parkway-benefits__text {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.72);
}

/* ---- Grid ---- */

.parkway-checkout__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
	grid-template-areas:
		"main aside"
		"payment aside";
	gap: 1.15rem;
	align-items: start;
}

.parkway-checkout__main {
	grid-area: main;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	min-width: 0;
}

.parkway-customer-details,
.parkway-billing {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.85rem !important;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.parkway-customer-details > .parkway-tile,
.parkway-billing > .parkway-tile,
.parkway-checkout__main > .parkway-tile {
	margin: 0 !important;
}

.parkway-checkout__aside {
	grid-area: aside;
	position: relative;
	/* Pełna wysokość kolumny (main+payment) — CSS sticky / pin mają gdzie „jeździć”. */
	align-self: stretch;
}

.parkway-checkout__grid > .parkway-tile--payment {
	grid-area: payment;
	min-width: 0;
}

/* ---- Tiles / steps ---- */

.parkway-tile {
	background: #fff;
	border: 1px solid var(--parkway-border);
	border-radius: 16px;
	padding: 0;
	box-shadow: 0 8px 24px rgba(11, 31, 58, 0.05);
	overflow: visible;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.parkway-tile.is-active:not(.is-filling) {
	border-color: rgba(47, 191, 150, 0.55);
	box-shadow: 0 12px 30px rgba(47, 191, 150, 0.12);
}

.parkway-tile.is-filling {
	border-color: rgba(232, 140, 48, 0.7);
	box-shadow: 0 12px 30px rgba(232, 140, 48, 0.14);
}

.parkway-tile.is-complete:not(.is-active):not(.is-filling) {
	border-color: rgba(47, 191, 150, 0.35);
}

.parkway-tile.is-locked .parkway-step-head {
	opacity: 0.72;
}

.parkway-tile--dates-hero.is-active:not(.is-filling),
.parkway-tile--dates-hero.is-open:not(.is-filling) {
	background:
		linear-gradient(180deg, rgba(93, 218, 180, 0.14), rgba(255, 255, 255, 0) 42%),
		#fff;
	border-color: var(--parkway-teal);
	box-shadow: 0 16px 40px rgba(47, 191, 150, 0.16);
}

.parkway-tile--dates-hero.is-filling {
	background:
		linear-gradient(180deg, rgba(255, 183, 77, 0.18), rgba(255, 255, 255, 0) 42%),
		#fff;
	border-color: #e88c30;
	box-shadow: 0 16px 40px rgba(232, 140, 48, 0.16);
}

.parkway-step-head {
	width: 100%;
	border: 0;
	background: transparent;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.95rem 1.05rem;
	text-align: left;
	cursor: pointer;
	font: inherit;
}

.parkway-step-head__text {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.12rem;
}

.parkway-tile__icon {
	flex: 0 0 auto;
	width: 1.85rem;
	height: 1.85rem;
	border-radius: 999px;
	display: inline-grid;
	place-items: center;
	background: var(--parkway-navy);
	color: #fff;
	font-weight: 800;
	font-size: 0.82rem;
}

.parkway-tile__icon--pulse {
	animation: parkwayPulse 1.8s ease-in-out infinite;
}

/* Niewypełniony / w trakcie = granat; wypełniony = zielony */
.parkway-tile:not(.is-complete) .parkway-tile__icon,
.parkway-tile.is-filling:not(.is-complete) .parkway-tile__icon {
	background: var(--parkway-navy) !important;
	color: #fff !important;
}

.parkway-tile.is-complete .parkway-tile__icon {
	background: var(--parkway-teal) !important;
	color: var(--parkway-navy) !important;
}

.parkway-tile__title {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 750;
	color: var(--parkway-navy);
	font-family: var(--parkway-display);
}

.parkway-tile__lead {
	margin: 0;
	color: var(--parkway-muted);
	font-size: 0.84rem;
	line-height: 1.35;
}

.parkway-step-status {
	flex: 0 0 auto;
	font-size: 0.72rem;
	font-weight: 750;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--parkway-muted);
	background: #eef3f1;
	border-radius: 999px;
	padding: 0.3rem 0.55rem;
}

.parkway-step-status.is-filling,
.parkway-tile.is-filling .parkway-step-status {
	background: #ffd7a8;
	color: #9a4d00;
}

.parkway-step-status.is-ready,
.parkway-tile.is-complete:not(.is-filling) .parkway-step-status {
	background: #dff7ee;
	color: #146b52;
}

/* Wyższa specyficzność niż .is-complete → zielone „Gotowe” — punkt 5 ma zostać szary. */
.parkway-step-status.is-optional,
.parkway-tile.is-complete .parkway-step-status.is-optional,
.parkway-tile.is-filling .parkway-step-status.is-optional,
.parkway-tile.is-active .parkway-step-status.is-optional {
	background: #e8ebef;
	color: #9aa3ad;
	opacity: 0.72;
	font-weight: 650;
}

.parkway-step-body {
	padding: 0.15rem 1.15rem 1.25rem;
	overflow: visible;
	clear: both;
}

.parkway-step-body[hidden] {
	display: none !important;
}

.parkway-step-next {
	display: block;
	margin-top: 1.1rem;
	border: 0;
	border-radius: 12px;
	background: var(--parkway-navy);
	color: #fff;
	font-weight: 750;
	font-size: 0.92rem;
	padding: 0.8rem 1rem;
	cursor: pointer;
	width: 100%;
	clear: both;
	position: relative;
	z-index: 1;
	transition: transform 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.parkway-step-next:hover {
	background: #163456;
	transform: translateY(-1px);
}

@keyframes parkwayCtaPulse {
	0%, 100% {
		transform: translateY(0) scale(1);
		box-shadow: 0 0 0 0 rgba(47, 191, 150, 0.45);
	}
	50% {
		transform: translateY(-2px) scale(1.015);
		box-shadow: 0 10px 28px rgba(47, 191, 150, 0.35);
	}
}

.parkway-cta-pulse,
.parkway-step-next.parkway-cta-pulse,
#place_order.parkway-cta-pulse,
.parkway-mobile-cta__btn.parkway-cta-pulse {
	animation: parkwayCtaPulse 1.35s ease-in-out infinite;
	background: #0f2b4d !important;
}

/* Toggle guest */
.parkway-tile--toggle {
	padding: 1.05rem 1.1rem 1.15rem;
	text-align: center;
}

.parkway-toggle__label {
	margin: 0 0 0.6rem;
	font-weight: 750;
	color: var(--parkway-navy);
}

.parkway-toggle__track {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	max-width: 400px;
	margin: 0 auto;
	padding: 4px;
	border-radius: 999px;
	background: #e6ece9;
	border: 1px solid var(--parkway-border);
}

.parkway-toggle__thumb {
	position: absolute;
	top: 4px;
	left: 4px;
	width: calc(50% - 4px);
	height: calc(100% - 8px);
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 4px 14px rgba(11, 31, 58, 0.12);
	transition: transform 0.32s var(--parkway-ease);
	z-index: 0;
}

.parkway-checkout[data-parkway-guest="company"] .parkway-toggle__thumb {
	transform: translateX(100%);
}

.parkway-toggle__btn {
	position: relative;
	z-index: 1;
	border: 0;
	background: transparent;
	padding: 0.72rem 0.5rem;
	font: inherit;
	font-weight: 750;
	font-size: 0.88rem;
	color: var(--parkway-muted);
	cursor: pointer;
}

.parkway-toggle__btn.is-active { color: var(--parkway-navy); }

.parkway-toggle__hint {
	margin: 0.55rem 0 0;
	font-size: 0.82rem;
	color: var(--parkway-muted);
}

/* Fields — twarde wyłączenie floatów WooCommerce / TheAI */
body.parkway-booking-page .parkway-checkout .parkway-billing,
body.parkway-booking-page .parkway-checkout .parkway-customer-details,
body.parkway-booking-page .parkway-checkout .parkway-step-body,
body.parkway-booking-page .parkway-checkout .parkway-fields-grid,
body.parkway-booking-page .parkway-checkout .parkway-company-panel,
body.parkway-booking-page .woocommerce form .parkway-fields-grid {
	clear: both !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

body.parkway-booking-page .parkway-checkout .parkway-billing,
body.parkway-booking-page .parkway-checkout .parkway-customer-details {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.85rem !important;
}

body.parkway-booking-page .parkway-checkout .parkway-billing > .parkway-tile,
body.parkway-booking-page .parkway-checkout .parkway-customer-details > .parkway-tile,
body.parkway-booking-page .parkway-checkout__main > .parkway-tile {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

body.parkway-booking-page .parkway-checkout .parkway-billing::before,
body.parkway-booking-page .parkway-checkout .parkway-billing::after,
body.parkway-booking-page .parkway-checkout .parkway-fields-grid::before,
body.parkway-booking-page .parkway-checkout .parkway-fields-grid::after,
body.parkway-booking-page .parkway-checkout .parkway-step-body::before,
body.parkway-booking-page .parkway-checkout .parkway-step-body::after,
body.parkway-booking-page .parkway-checkout .parkway-company-panel::before,
body.parkway-booking-page .parkway-checkout .parkway-company-panel::after,
body.parkway-booking-page .parkway-checkout .form-row::before,
body.parkway-booking-page .parkway-checkout .form-row::after,
body.parkway-booking-page .woocommerce form .form-row-first::before,
body.parkway-booking-page .woocommerce form .form-row-first::after,
body.parkway-booking-page .woocommerce form .form-row-last::before,
body.parkway-booking-page .woocommerce form .form-row-last::after {
	content: none !important;
	display: none !important;
}

body.parkway-booking-page .parkway-fields-grid,
body.parkway-booking-page .parkway-fields-grid--2,
body.parkway-booking-page .woocommerce form .parkway-fields-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 1rem 1rem !important;
	align-items: start !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

body.parkway-booking-page .parkway-fields-grid > .form-row,
body.parkway-booking-page .parkway-checkout .parkway-fields-grid .form-row,
body.parkway-booking-page .parkway-checkout .parkway-step-body .form-row,
body.parkway-booking-page .parkway-checkout .woocommerce-billing-fields .form-row,
body.parkway-booking-page .parkway-checkout .form-row-first,
body.parkway-booking-page .parkway-checkout .form-row-last,
body.parkway-booking-page .parkway-checkout .form-row-wide,
body.parkway-booking-page .woocommerce form .form-row-first,
body.parkway-booking-page .woocommerce form .form-row-last,
body.parkway-booking-page .woocommerce-page form .form-row-first,
body.parkway-booking-page .woocommerce-page form .form-row-last {
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	clear: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	left: auto !important;
	right: auto !important;
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0.3rem !important;
	box-sizing: border-box !important;
}

body.parkway-booking-page .parkway-fields-grid .form-row-wide:not(.parkway-col-half) {
	grid-column: 1 / -1 !important;
}

body.parkway-booking-page .parkway-checkout .form-row .woocommerce-input-wrapper,
body.parkway-booking-page .parkway-checkout .form-row .select2-container,
body.parkway-booking-page .parkway-checkout .form-row select,
body.parkway-booking-page .parkway-checkout .form-row .input-text {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* Godzina odjazdu + liczniki osób w jednym rzędzie */
.parkway-vehicle-trio {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	gap: 1rem;
	margin-top: 1rem;
	align-items: start;
}

.parkway-vehicle-trio__people {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.65rem;
	align-items: start;
}

.parkway-vehicle-trio__people .form-row {
	margin: 0 !important;
}

.parkway-vehicle-trio__people .form-row label {
	font-size: 0.7rem;
	white-space: normal;
	min-height: 2.1em;
}

.parkway-qty {
	display: flex;
	align-items: stretch;
	width: 100%;
	border: 1.5px solid var(--parkway-border, #d5dde6);
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
	min-height: 48px;
}

.parkway-qty__btn {
	flex: 0 0 2.4rem;
	border: 0;
	background: #f3f6f8;
	color: var(--parkway-navy);
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	transition: background 0.15s ease, color 0.15s ease;
}

.parkway-qty__btn:hover:not(:disabled) {
	background: #e7eef3;
	color: var(--parkway-teal, #1a9b72);
}

.parkway-qty__btn:disabled {
	opacity: 0.35;
	cursor: default;
}

.parkway-qty__btn:focus-visible {
	outline: 2px solid var(--parkway-teal, #1a9b72);
	outline-offset: -2px;
	z-index: 1;
}

.parkway-checkout .parkway-qty-field .woocommerce-input-wrapper {
	width: 100%;
}

.parkway-checkout .parkway-qty-field input.input-text,
.parkway-checkout .parkway-qty input[type="number"] {
	flex: 1 1 auto;
	width: auto !important;
	min-width: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	text-align: center;
	font-weight: 750;
	font-size: 1rem;
	padding: 0.55rem 0.2rem !important;
	-moz-appearance: textfield;
	appearance: textfield;
}

.parkway-checkout .parkway-qty input[type="number"]::-webkit-outer-spin-button,
.parkway-checkout .parkway-qty input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.parkway-checkout .parkway-qty-field.woocommerce-invalid .parkway-qty,
.parkway-checkout .parkway-qty-field.parkway-has-error .parkway-qty {
	border-color: #d63638;
}

.parkway-address-block {
	margin-top: 0.95rem;
	padding-top: 0.85rem;
	border-top: 1px dashed var(--parkway-border);
}

.parkway-address-block__title {
	margin: 0 0 0.65rem;
	font-size: 0.78rem;
	font-weight: 750;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--parkway-muted);
}

.parkway-company-panel {
	margin-top: 0.95rem;
	padding-top: 0.85rem;
	border-top: 1px dashed var(--parkway-border);
}

.parkway-company-panel[hidden],
.parkway-address-block--company[hidden] {
	display: none !important;
}

.parkway-same-address {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	margin: 0.85rem 0 0.35rem;
	cursor: pointer;
	user-select: none;
	color: var(--parkway-navy);
	font-size: 0.9rem;
	font-weight: 650;
	line-height: 1.35;
}

.parkway-same-address input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.parkway-same-address__switch {
	position: relative;
	flex: 0 0 44px;
	width: 44px;
	height: 26px;
	border-radius: 999px;
	background: #d5dde6;
	border: 1px solid #c5ced8;
	transition: background 0.2s ease, border-color 0.2s ease;
}

.parkway-same-address__thumb {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 8px rgba(11, 31, 58, 0.18);
	transition: transform 0.22s var(--parkway-ease);
}

.parkway-same-address.is-on .parkway-same-address__switch,
.parkway-same-address:has(input:checked) .parkway-same-address__switch {
	background: var(--parkway-teal);
	border-color: var(--parkway-teal-dark);
}

.parkway-same-address.is-on .parkway-same-address__thumb,
.parkway-same-address:has(input:checked) .parkway-same-address__thumb {
	transform: translateX(18px);
}

.parkway-same-address__text {
	flex: 1 1 auto;
}

.parkway-checkout .form-row label {
	display: block;
	font-size: 0.76rem;
	font-weight: 750;
	color: var(--parkway-navy);
	margin: 0 0 0.1rem !important;
	line-height: 1.25;
}

.parkway-checkout .form-row .woocommerce-input-wrapper {
	display: block;
	width: 100%;
	float: none !important;
}

.parkway-hint {
	grid-column: 1 / -1;
	margin: 0;
	font-size: 0.78rem;
	color: var(--parkway-muted);
}

.parkway-checkout .input-text,
.parkway-checkout select,
.parkway-checkout textarea,
.parkway-checkout input[type="email"],
.parkway-checkout input[type="tel"],
.parkway-checkout input[type="text"],
.parkway-dates__field input[type="date"] {
	width: 100%;
	max-width: 100%;
	border: 1px solid var(--parkway-border);
	border-radius: 12px;
	padding: 0.72rem 0.8rem;
	background: #f7faf8;
	font: inherit;
	font-size: 0.95rem;
	color: var(--parkway-ink);
	box-sizing: border-box;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.parkway-checkout .input-text:focus,
.parkway-checkout select:focus,
.parkway-checkout textarea:focus,
.parkway-dates__field input[type="date"]:focus {
	outline: none;
	border-color: var(--parkway-teal);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(93, 218, 180, 0.28);
}

.parkway-field-error {
	margin: 0.35rem 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #c62828;
	font-size: 0.8rem;
	font-weight: 650;
	line-height: 1.35;
}

.form-row .parkway-field-error {
	clear: both;
}

.parkway-field-invalid,
.parkway-checkout .form-row.woocommerce-invalid .input-text,
.parkway-checkout .form-row.woocommerce-invalid select,
.parkway-checkout .parkway-field-invalid {
	border-color: #e53935 !important;
	box-shadow: 0 0 0 3px rgba(229, 57, 53, 0.12) !important;
}

/* Nie chowaj błędów checkoutu / PayU — wcześniej display:none !important
   powodowało, że „Zarezerwuj i zapłać” nic nie robiło (brak komunikatu, brak redirectu). */
body.parkway-booking-page .woocommerce-NoticeGroup-checkout .woocommerce-error:empty {
	display: none !important;
}

.parkway-field-autocompleted {
	border-color: var(--parkway-teal) !important;
	background: #eefbf5 !important;
}

.parkway-company-panel {
	margin-top: 0.7rem;
	padding-top: 0.7rem;
	border-top: 1px dashed var(--parkway-border);
}

/* Wyższa specyficzność niż .parkway-fields-grid { display:grid } — inaczej panel firmy
   wychodzi mimo atrybutu hidden przy trybie „Osoba prywatna”. */
body.parkway-booking-page .parkway-checkout .parkway-company-panel[hidden],
body.parkway-booking-page .parkway-checkout[data-parkway-guest="private"] .parkway-company-panel,
.parkway-notice[hidden],
.parkway-hint[hidden] {
	display: none !important;
}

.parkway-hint {
	grid-column: 1 / -1;
	margin: 0;
	font-size: 0.8rem;
	color: #146b52;
}

.parkway-checkout[data-parkway-guest="private"] .parkway-lead-company,
.parkway-checkout[data-parkway-guest="company"] .parkway-lead-private {
	display: none !important;
}

/* Dates hero */
.parkway-dates--hero {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.65rem;
}

.parkway-dates__field {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	font-size: 0.78rem;
	font-weight: 750;
	color: var(--parkway-navy);
}

.parkway-dates__field input[type="date"] {
	font-size: 1.05rem;
	font-weight: 650;
	padding: 0.9rem 0.85rem;
	background: #fff;
	border: 2px solid rgba(47, 191, 150, 0.45);
}

.parkway-dates__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-top: 0.7rem;
}

.parkway-dates__pill {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
	background: var(--parkway-teal-soft);
	color: var(--parkway-navy);
	font-size: 0.82rem;
	font-weight: 750;
}

.parkway-dates__pill--price {
	background: var(--parkway-navy);
	color: #fff;
	font-size: 0.95rem;
}

.parkway-notice {
	margin: 0.65rem 0 0;
	padding: 0.55rem 0.7rem;
	border-radius: 10px;
	font-size: 0.84rem;
	background: var(--parkway-teal-soft);
	color: #145c48;
}

/* Aside card */

.parkway-summary-stack {
	position: sticky;
	top: 1.25rem;
	z-index: 40;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.parkway-book-card {
	position: relative;
	background: #fff;
	border: 1px solid var(--parkway-border);
	border-radius: 16px;
	padding: 1.15rem;
	box-shadow: 0 16px 40px rgba(11, 31, 58, 0.08);
}

.parkway-summary-stack.is-fixed,
.parkway-summary-stack.is-pinned-bottom {
	margin: 0;
}

.parkway-book-card.is-fixed {
	margin: 0;
}

.parkway-book-card__head {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	align-items: flex-start;
	margin-bottom: 0.85rem;
	padding-bottom: 0.85rem;
	border-bottom: 1px solid var(--parkway-border);
}

.parkway-book-card__eyebrow {
	margin: 0 0 0.2rem;
	font-size: 0.72rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--parkway-teal-dark);
}

.parkway-book-card__title {
	margin: 0;
	font-family: var(--parkway-display);
	font-size: 1.2rem;
	color: var(--parkway-navy);
}

.parkway-book-card__price {
	margin: 0;
	font-size: 1.4rem;
	font-weight: 800;
	color: var(--parkway-navy);
	white-space: nowrap;
}

.parkway-summary__name {
	margin: 0;
	font-weight: 750;
	font-size: 0.95rem;
}

.parkway-summary__dates,
.parkway-summary__days {
	margin: 0.2rem 0 0;
	color: var(--parkway-muted);
	font-size: 0.84rem;
}

.parkway-summary__row--total {
	display: flex;
	justify-content: space-between;
	margin-top: 0.65rem;
	font-size: 1.08rem;
	font-weight: 800;
	color: var(--parkway-navy);
}

.parkway-trust {
	list-style: none;
	margin: 0.7rem 0 0;
	padding: 0;
	display: grid;
	gap: 0.35rem;
}

.parkway-trust li {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.78rem;
	color: var(--parkway-muted);
}

.parkway-trust__icon {
	display: inline-flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 1.15rem;
	height: 1.15rem;
	color: var(--parkway-teal-dark);
}

.parkway-trust__icon svg {
	width: 1.05rem;
	height: 1.05rem;
	display: block;
}

.parkway-book-card__summary {
	padding-bottom: 0.85rem;
	margin-bottom: 0.85rem;
	border-bottom: 1px solid var(--parkway-border);
}

.parkway-book-card__pay-title {
	margin: 0 0 0.55rem;
	font-size: 0.95rem;
	font-weight: 750;
	color: var(--parkway-navy);
}

.parkway-review-table {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
}

.parkway-coupon {
	margin: 0.85rem 0 0;
	border: 1px solid var(--parkway-border);
	border-radius: 12px;
	padding: 0.7rem 0.8rem;
	background: #f4f7f5;
}

.parkway-coupon > summary {
	cursor: pointer;
	font-weight: 750;
	font-size: 0.88rem;
	color: var(--parkway-navy);
	list-style: none;
}

.parkway-coupon > summary::-webkit-details-marker {
	display: none;
}

.parkway-coupon > summary::before {
	content: "▼";
	display: inline-block;
	margin-right: 0.4rem;
	font-size: 0.7rem;
	transition: transform 0.2s ease;
}

.parkway-coupon:not([open]) > summary::before {
	transform: rotate(-90deg);
}

.parkway-coupon__body {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.5rem;
	align-items: stretch;
	margin-top: 0.65rem;
}

.parkway-coupon__body .form-row,
.parkway-coupon__body p {
	margin: 0 !important;
	width: auto !important;
	float: none !important;
}

.parkway-coupon__input,
.parkway-coupon #parkway_coupon_code {
	width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	border: 1.5px solid #c5d0cb !important;
	border-radius: 10px !important;
	padding: 0.7rem 0.85rem !important;
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	color: var(--parkway-navy) !important;
	background: #fff !important;
}

.parkway-coupon__input:focus,
.parkway-coupon #parkway_coupon_code:focus {
	outline: none !important;
	border-color: var(--parkway-teal-dark) !important;
	box-shadow: 0 0 0 3px rgba(47, 191, 150, 0.2) !important;
}

.parkway-coupon__apply {
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--parkway-navy) !important;
	color: #fff !important;
	padding: 0.7rem 1.05rem !important;
	font-weight: 800 !important;
	font-size: 0.9rem !important;
	cursor: pointer;
	white-space: nowrap;
	box-shadow: 0 6px 14px rgba(11, 31, 58, 0.16);
	transition: background 0.15s ease, transform 0.15s ease;
}

.parkway-coupon__apply:hover {
	background: #163456 !important;
	transform: translateY(-1px);
}

.parkway-pay-tiles {
	list-style: none;
	margin: 0 0 0.85rem;
	padding: 0;
	display: grid;
	gap: 0.45rem;
}

/* Awaryjne ukrycie zdublowanej bramki PayU (gdy filtr PHP nie złapie ID). */
.parkway-pay-tiles .payment_method_payustandard,
.parkway-pay-tiles .payment_method_payu_gateway {
	display: none !important;
}

.parkway-pay-tile {
	margin: 0;
	border: 1px solid var(--parkway-border);
	border-radius: 12px;
	background: #f7faf8;
	overflow: hidden;
}

.parkway-pay-tile > input.input-radio {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.parkway-pay-tile__label {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.55rem;
	align-items: center;
	padding: 0.7rem 0.75rem;
	margin: 0 !important;
	cursor: pointer;
}

.parkway-pay-tile__check {
	width: 1.05rem;
	height: 1.05rem;
	border-radius: 50%;
	border: 2px solid #b7c4bf;
	box-sizing: border-box;
}

.parkway-pay-tile__title {
	display: block;
	font-weight: 750;
	font-size: 0.86rem;
	color: var(--parkway-navy);
}

.parkway-pay-tile__desc {
	display: block;
	margin-top: 0.12rem;
	font-size: 0.74rem;
	color: var(--parkway-muted);
}

.parkway-pay-tile__icons img { max-height: 20px; width: auto; }

.parkway-pay-tile:has(input:checked) {
	border-color: var(--parkway-teal);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(93, 218, 180, 0.2);
}

.parkway-pay-tile:has(input:checked) .parkway-pay-tile__check {
	border-color: var(--parkway-teal-dark);
	background: var(--parkway-teal);
	box-shadow: inset 0 0 0 3px #fff;
}

.parkway-pay-tile .payment_box {
	padding: 0.65rem 0.75rem 0.85rem;
	background: #f3f7f5;
	font-size: 0.8rem;
	color: var(--parkway-muted);
	border-top: 1px solid rgba(11, 31, 58, 0.06);
}

/* Ukryj tylko naprawdę puste boxy — NIE chowaj listy banków PayU. */
.parkway-pay-tile .payment_box:empty {
	display: none !important;
}

.parkway-pay-tile .parkway-pay-fields .payu-list-banks,
.parkway-pay-tile .payment_box .payu-list-banks {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
	gap: 0.45rem;
	list-style: none;
	margin: 0.35rem 0 0.55rem;
	padding: 0;
}

.parkway-pay-tile .payu-list-banks li {
	margin: 0;
	padding: 0;
}

.parkway-pay-tile .payu-list-banks label {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0.4rem;
	margin: 0 !important;
	border: 1px solid var(--parkway-border);
	border-radius: 10px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.parkway-pay-tile .payu-list-banks label.active,
.parkway-pay-tile .payu-list-banks .payu-active label.active {
	border-color: var(--parkway-teal);
	box-shadow: 0 0 0 2px rgba(93, 218, 180, 0.25);
}

.parkway-pay-tile .payu-list-banks img {
	max-height: 28px;
	width: auto;
	max-width: 100%;
}

.parkway-pay-tile .pbl-error {
	display: none;
	margin: 0.5rem 0 0.2rem;
	padding: 0.65rem 0.75rem;
	border-radius: 10px;
	background: #fdecea;
	border: 1px solid #f5c2c0;
	color: #8a1f17;
	font-size: 0.85rem;
	font-weight: 650;
}

.parkway-tile--payment .parkway-step-body,
.parkway-gallery__dates .parkway-step-body {
	display: block !important;
}

.parkway-tile--payment .parkway-step-head--static {
	cursor: default;
	pointer-events: none;
}

.parkway-order-review__totals {
	position: relative;
	height: 0;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.parkway-cta,
.parkway-place-order #place_order {
	width: 100%;
	border: 0 !important;
	border-radius: 12px !important;
	background: var(--parkway-navy) !important;
	color: #fff !important;
	font-weight: 800 !important;
	font-size: 0.98rem !important;
	padding: 0.95rem 1rem !important;
	cursor: pointer;
}

.parkway-cta:hover,
.parkway-place-order #place_order:hover {
	background: #163456 !important;
}

.parkway-place-order #place_order.parkway-cta-pulse {
	animation: parkwayCtaPulse 1.35s ease-in-out infinite !important;
}

.parkway-checkout-banner {
	margin: 0 0 0.85rem;
	padding: 0.85rem 1rem;
	border-radius: 12px;
	background: #fdecea;
	border: 1px solid #f5c2c0;
	color: #8a1f17;
	font-size: 0.9rem;
	font-weight: 650;
}

.parkway-checkout-banner p {
	margin: 0;
}

.parkway-place-order #place_order:disabled,
.parkway-mobile-cta__btn:disabled {
	opacity: 1 !important;
	cursor: pointer !important;
}

.parkway-tile--payment .parkway-step-body {
	padding: 0.2rem 1.55rem 1.45rem !important;
}

.parkway-place-order {
	margin: 0 !important;
	padding: 0.85rem 0.35rem 0.15rem !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.parkway-place-order .woocommerce-terms-and-conditions-wrapper,
.parkway-place-order .woocommerce-privacy-policy-text,
.parkway-place-order .woocommerce-privacy-policy-text p {
	margin: 0 0 0.85rem !important;
	padding: 0 0.25rem !important;
	font-size: 0.76rem;
	line-height: 1.55;
	color: var(--parkway-muted);
	box-sizing: border-box;
}

.parkway-regulamin-link {
	margin: 0;
	padding: 0 0.35rem;
	text-align: center;
}

.parkway-regulamin-link a {
	color: rgba(11, 31, 58, 0.45);
	font-size: 0.82rem;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	transition: color 0.15s ease;
}

.parkway-regulamin-link a:hover {
	color: rgba(11, 31, 58, 0.75);
}

.parkway-checkout .woocommerce-billing-fields > h3,
.parkway-checkout .woocommerce-additional-fields > h3,
.parkway-checkout #order_review_heading {
	display: none !important;
}

/* Custom booking footer usunięty — używamy fabrycznej stopki motywu. */
.parkway-booking-footer { display: none !important; }

.parkway-mobile-cta { display: none; }

@keyframes parkwayFadeUp {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes parkwayPulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(93, 218, 180, 0.55); }
	50% { box-shadow: 0 0 0 8px rgba(93, 218, 180, 0); }
}

.parkway-shake {
	animation: parkwayShake 0.4s ease;
}

@keyframes parkwayShake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-4px); }
	75% { transform: translateX(4px); }
}

@media (max-width: 960px) {
	.parkway-checkout__grid {
		grid-template-columns: 1fr;
		grid-template-areas:
			"main"
			"aside"
			"payment";
	}
	.parkway-summary-stack,
	.parkway-summary-stack.is-fixed,
	.parkway-summary-stack.is-pinned-bottom,
	.parkway-book-card,
	.parkway-book-card.is-fixed,
	.parkway-book-card.is-pinned-bottom {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: auto !important;
		bottom: auto !important;
	}
	.parkway-checkout__aside { min-height: 0 !important; }
	.parkway-gallery { grid-template-columns: 1fr; }
	.parkway-gallery__carousel { min-height: 240px; }
	.parkway-gallery__side { min-height: 0; }
	.parkway-gallery__minis { grid-template-rows: none; }
	.parkway-benefits { grid-template-columns: 1fr; gap: 1rem; }

	.parkway-gallery__dates {
		padding: 0.9rem 1rem 1.05rem !important;
	}

	.parkway-gallery__dates .parkway-dates--hero {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
		gap: 0.55rem;
	}

	.parkway-gallery__dates .parkway-dates__field input[type="date"] {
		font-size: 0.95rem !important;
		padding: 0.7rem 0.55rem !important;
		min-width: 0 !important;
		-webkit-appearance: none;
		appearance: none;
	}

	.parkway-mobile-cta {
		display: flex;
		position: fixed;
		left: 0; right: 0; bottom: 0;
		z-index: 1000;
		padding: 0.7rem 1rem calc(0.7rem + env(safe-area-inset-bottom));
		background: rgba(255, 255, 255, 0.96);
		border-top: 1px solid var(--parkway-border);
		gap: 0.75rem;
		align-items: center;
		justify-content: space-between;
	}

	.parkway-mobile-cta__price { font-weight: 800; color: var(--parkway-navy); }
	.parkway-mobile-cta__btn {
		border: 0;
		border-radius: 10px;
		background: var(--parkway-navy);
		color: #fff;
		font-weight: 800;
		padding: 0.8rem 1.05rem;
		cursor: pointer;
	}
}

@media (max-width: 720px) {
	body.parkway-booking-page .parkway-fields-grid,
	body.parkway-booking-page .parkway-fields-grid--2,
	body.parkway-booking-page .woocommerce form .parkway-fields-grid {
		grid-template-columns: 1fr !important;
	}

	body.parkway-booking-page .parkway-fields-grid .form-row-wide:not(.parkway-col-half) {
		grid-column: auto !important;
	}

	.parkway-vehicle-trio {
		grid-template-columns: 1fr;
		gap: 0.85rem;
	}

	.parkway-vehicle-trio__people {
		grid-template-columns: 1fr 1fr;
	}

	.parkway-price-carousel__viewport {
		grid-template-columns: 1fr;
	}

	.parkway-price-carousel__nav {
		display: none;
	}

	.parkway-tile--payment .parkway-step-body {
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
	}

	/* Termin postoju — jak na desktopie: 2 kolumny, kompaktowe pola */
	.parkway-gallery__dates {
		padding: 0.85rem 0.9rem 1rem !important;
	}

	.parkway-gallery__dates .parkway-dates-card__head .parkway-tile__title {
		font-size: 1.05rem;
	}

	.parkway-gallery__dates .parkway-dates--hero,
	.parkway-dates--hero {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
		gap: 0.5rem !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.parkway-gallery__dates .parkway-dates__field {
		min-width: 0 !important;
		max-width: 100% !important;
		font-size: 0.72rem;
		gap: 0.2rem;
	}

	.parkway-gallery__dates .parkway-dates__field input[type="date"] {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		font-size: 0.88rem !important;
		font-weight: 650 !important;
		padding: 0.62rem 0.4rem !important;
		line-height: 1.2 !important;
		height: auto !important;
		min-height: 0 !important;
		box-sizing: border-box !important;
		-webkit-appearance: none;
		appearance: none;
	}

	.parkway-gallery__dates .parkway-dates__meta {
		margin-top: 0.55rem;
		gap: 0.35rem;
	}

	.parkway-gallery__dates .parkway-dates__pill {
		font-size: 0.78rem;
		padding: 0.3rem 0.6rem;
	}

	.parkway-gallery__dates .parkway-dates__pill--price {
		font-size: 0.88rem;
	}

	.parkway-gallery__dates .parkway-dates__next,
	.parkway-gallery__dates .parkway-step-next {
		margin-top: 0.65rem;
		padding: 0.75rem 0.85rem;
		font-size: 0.88rem;
	}
}
