@media (max-width: 1100px) {
	.site-header__inner {
		grid-template-columns: 1fr auto;
	}

	.primary-nav,
	.site-header__phone,
	.site-header__message,
	.site-header__actions .button {
		display: none;
	}

	.menu-toggle {
		display: inline-grid;
	}

	.site-footer__inner {
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
	}

	.site-footer__brand {
		grid-column: 1 / -1;
	}

	.car-grid--preview,
	.car-grid--listing,
	.bento-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.home-fleet-carousel.car-grid--preview {
		grid-auto-columns: minmax(18.5rem, 22rem);
		grid-template-columns: none;
	}

	.fleet-hero,
	.fleet-selects {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.page-fleet .fleet-hero {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.page-fleet .fleet-hero > p {
		max-width: 42rem;
	}

	.home-stats-bento,
	.home-feature-grid,
	.home-process-timeline,
	.brand-logo-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.home-stat-card--large,
	.feature-card--liquid {
		grid-column: span 1;
		grid-row: auto;
	}

	.home-process-timeline::before {
		display: none;
	}

	.home-process-step::after {
		content: "";
		position: absolute;
		top: 4.2rem;
		right: -1rem;
		left: 3.65rem;
		z-index: 0;
		height: 1px;
		background: linear-gradient(90deg, rgba(236, 212, 126, 0.38), transparent);
	}

	.home-process-step:nth-child(even)::after {
		display: none;
	}

	.process-grid,
	.testimonial-grid,
	.values-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.single-car-hero,
	.single-car-content,
	.contact-layout,
	.single-car-reservation-layout,
	.single-car-hero--detail,
	.booking-detail-grid,
	.policy-cost-grid {
		grid-template-columns: 1fr;
	}

	.single-car-reservation-layout {
		grid-template-areas:
			"main"
			"rail"
			"more";
	}

	.single-car-panel,
	.booking-rail {
		position: static;
		max-height: none;
		overflow: visible;
	}

	.protection-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.protection-card--security {
		grid-column: 1 / -1;
	}

	.rental-hero,
	.rental-policy-layout {
		grid-template-columns: 1fr;
	}

	.rental-hero {
		align-items: start;
	}

	.rental-hero__panel {
		max-width: 36rem;
	}

	.rental-why-grid,
	.rental-extra-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rental-extra-card--featured {
		grid-column: 1 / -1;
	}

	.rental-policy-aside {
		position: static;
		min-height: 0;
	}

	.contact-panel--refresh {
		position: static;
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
	.single-car-reservation-layout {
		grid-template-columns: minmax(0, 1fr) minmax(19rem, 23rem);
		grid-template-areas:
			"main rail"
			"more rail";
	}

	.booking-rail {
		position: sticky;
		top: var(--booking-rail-sticky-top, 5.6rem);
		overflow: visible;
	}

	.protection-grid {
		grid-template-columns: 1fr;
	}

	.protection-card--security {
		grid-column: 1 / -1;
	}

	.rental-hero {
		grid-template-columns: minmax(0, 1fr) minmax(19rem, 23rem);
	}

	.rental-policy-layout {
		grid-template-columns: minmax(17rem, 0.44fr) minmax(0, 1fr);
	}

	.rental-policy-aside {
		position: sticky;
		top: 5.8rem;
	}
}

@media (max-width: 768px) {
	.pristancia-fallback {
		padding-top: 7rem;
	}

	.site-header {
		padding: 0.8rem 1rem;
	}

	.site-brand__logo {
		width: 9.75rem;
		max-height: 3.85rem;
	}

	.car-card__meta {
		align-items: flex-start;
		flex-direction: column;
	}

	.car-card__footer {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.65rem;
	}

	.car-card__details-button {
		width: auto;
		justify-content: space-between;
	}

	.fleet-hero,
	.fleet-selects {
		grid-template-columns: 1fr;
	}

	.page-fleet::before {
		height: 33rem;
		background-size: 54rem auto;
		background-position: 44% top;
		opacity: 0.24;
	}

	.page-fleet .fleet-hero {
		padding-top: 8.2rem;
		padding-bottom: 1.5rem;
	}

	.page-fleet .fleet-hero::after {
		right: -3rem;
		width: 18rem;
		height: 12rem;
		opacity: 0.035;
	}

	.page-fleet .fleet-hero h1 {
		font-size: clamp(2.6rem, 12vw, 4.15rem);
		line-height: 1;
	}

	.page-fleet .fleet-hero > p {
		max-width: none;
		padding: 1rem;
	}

	.fleet-toolbar {
		position: relative;
		top: auto;
	}

	.fleet-toolbar {
		position: relative;
		top: auto;
	}

	.fleet-results-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.8rem;
	}

	.car-card__media {
		grid-template-rows: auto auto minmax(10rem, 1fr);
		min-height: 23rem;
	}

	.car-card__specs {
		gap: 0.42rem;
	}

	.cookie-banner {
		right: 1rem;
		bottom: 1rem;
		grid-template-columns: 1fr;
	}

	.cookie-banner__actions {
		width: 100%;
	}

	.cookie-banner__actions .button {
		flex: 1;
	}

	.cky-consent-container,
	.cky-consent-container.cky-box-bottom-right,
	.cky-consent-container.cky-box-bottom-left {
		right: 1rem !important;
		bottom: 1rem !important;
		left: 1rem !important;
		width: auto !important;
		max-width: none !important;
	}

	.cky-consent-container .cky-notice-content-wrapper {
		grid-template-columns: 1fr !important;
	}

	.cky-consent-container .cky-title,
	.cky-consent-container .cky-notice-des,
	.cky-consent-container .cky-notice-btn-wrapper {
		grid-column: 1 !important;
		grid-row: auto !important;
		width: 100% !important;
	}

	.cky-consent-container .cky-btn {
		flex: 1 1 0 !important;
	}

	.cky-revisit-bottom-left,
	.cky-revisit-bottom-right {
		bottom: calc(5.35rem + var(--mobile-actions-bottom, 0px) + env(safe-area-inset-bottom)) !important;
	}

	.site-footer__inner {
		grid-template-columns: 1fr;
		padding: 2rem 0 2.4rem;
	}

	.site-footer {
		width: min(100% - 1rem, 92rem);
		margin-bottom: 0.5rem;
		border-radius: 1.35rem;
	}

	.site-footer__anpc {
		grid-template-columns: 1fr;
		max-width: 24rem;
	}

	.site-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.site-footer__meta {
		text-align: left;
	}

	.section__header {
		align-items: flex-start;
		flex-direction: column;
	}

	.hero-section {
		padding-top: 8rem;
	}

	.hero-section--split {
		align-items: end;
		min-height: 96dvh;
		padding-top: 8.6rem;
		padding-bottom: 7.5rem;
	}

	.hero-section--split::before {
		display: none;
	}

	.hero-section--split::after {
		bottom: -4rem;
		height: 9rem;
		background:
			linear-gradient(180deg, rgba(7, 8, 7, 0), rgba(7, 8, 7, 0.86) 38%, rgba(7, 8, 7, 1) 52%, rgba(7, 8, 7, 0.76) 68%, rgba(7, 8, 7, 0)),
			radial-gradient(ellipse at 50% 50%, rgba(236, 212, 126, 0.035), transparent 68%);
	}

	.hero-section--split .hero-section__media {
		left: 0;
		opacity: 0.72;
	}

	.hero-section--split .hero-section__media::after {
		background:
			linear-gradient(180deg, rgba(7, 8, 7, 0.58), rgba(7, 8, 7, 0.34) 28%, rgba(7, 8, 7, 0.78) 68%, rgba(7, 8, 7, 1) 100%),
			linear-gradient(90deg, rgba(7, 8, 7, 0.82) 0%, rgba(7, 8, 7, 0.44) 38%, rgba(7, 8, 7, 0) 100%);
	}

	.hero-section--split .hero-section__media img {
		position: static;
		inset: auto;
		width: 100%;
		height: 100%;
		object-position: 58% center;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.hero-section--split h1 {
		margin-top: 0.6rem;
		padding-top: 0.16em;
		font-size: clamp(2.45rem, 11.8vw, 3.9rem);
		line-height: 1.08;
	}

	.hero-stats,
	.car-grid--preview,
	.car-grid--listing,
	.bento-grid,
	.process-grid,
	.testimonial-grid,
	.values-grid,
	.stat-band,
	.spec-grid,
	.form-row,
	.single-car-intro__specs,
	.date-range-field {
		grid-template-columns: 1fr;
	}

	.protection-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
	}

	.protection-card--security {
		grid-column: 1 / -1;
	}

	.home-fleet-carousel.car-grid--preview {
		grid-auto-columns: minmax(19rem, 86vw);
		grid-template-columns: none;
	}

	.home-stats-bento,
	.home-process-timeline,
	.brand-logo-grid {
		grid-template-columns: 1fr;
	}

	.home-feature-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.72rem;
	}

	.home-stats-bento {
		margin-top: -2.8rem;
	}

	.home-stat-card {
		min-height: 11rem;
	}

	.fleet-preview .section__header--stacked {
		grid-template-columns: 1fr;
	}

	.home-fleet-cta--header {
		display: none;
	}

	.home-fleet-cta--mobile {
		display: inline-flex;
		width: 100%;
		justify-content: center;
		margin-top: 1rem;
	}

	.home-fleet-carousel {
		grid-auto-columns: minmax(19rem, 86vw);
		padding-inline: 0.2rem calc(100% - 18.8rem);
	}

	.home-carousel-button {
		display: grid;
		top: 48%;
		z-index: 6;
		width: 3.15rem;
		height: 3.15rem;
	}

	.home-carousel-button--prev {
		left: -0.35rem;
	}

	.home-carousel-button--next {
		right: -0.35rem;
	}

	.home-process-timeline {
		gap: 0.25rem;
	}

	.home-process-timeline::before {
		display: block;
		top: 3.6rem;
		bottom: 3.6rem;
		left: 3.325rem;
		width: 1px;
		height: auto;
		background: linear-gradient(180deg, transparent, rgba(236, 212, 126, 0.42), transparent);
	}

	.home-process-step::after {
		display: none;
	}

	.home-process-step {
		grid-template-columns: auto minmax(0, 1fr);
		align-items: start;
	}

	.home-process-step__number,
	.home-process-step__icon {
		grid-row: span 2;
	}

	.feature-card--liquid {
		min-height: 12rem;
		padding: 0.9rem;
		border-radius: 1.05rem;
	}

	.feature-card.feature-card--liquid span.feature-card__icon[aria-hidden] {
		width: 2.2rem;
		height: 2.2rem;
		margin-bottom: 0.52rem;
	}

	.feature-card.feature-card--liquid span.feature-card__icon[aria-hidden] svg {
		width: 1rem;
		height: 1rem;
	}

	.feature-card--liquid h3 {
		margin-bottom: 0.45rem;
		font-size: clamp(0.96rem, 4.3vw, 1.15rem);
		line-height: 1.08;
	}

	.feature-card--liquid p {
		font-size: 0.76rem;
		line-height: 1.38;
	}

	.home-process-step__number {
		display: none;
	}

	.brand-logo-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.testimonial-marquee {
		mask-image: none;
	}

	.cta-band--image {
		margin-bottom: 4.5rem;
		background:
			linear-gradient(180deg, rgba(7, 8, 7, 0.72), rgba(7, 8, 7, 0.95)),
			url("../images/home-cta-gclass-mirrored.jpg") center / cover no-repeat;
	}

	.single-car-reservation-layout {
		padding-top: 7rem;
		padding-bottom: 6.5rem;
	}

	.single-car-intro {
		padding: 1.25rem;
	}

	.booking-rail__car {
		grid-template-columns: 4rem minmax(0, 1fr);
	}

	.single-car-section__title {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.7rem;
	}

	.spec-cloud-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.58rem;
	}

	.spec-chip {
		grid-template-columns: 1.9rem minmax(0, 1fr);
		gap: 0.5rem;
		min-height: 3.35rem;
		width: 100%;
		padding: 0.48rem 0.58rem;
		border-radius: 1rem;
	}

	.spec-chip__icon {
		width: 1.9rem;
		height: 1.9rem;
	}

	.spec-chip__icon svg {
		width: 0.95rem;
		height: 0.95rem;
	}

	.spec-chip small {
		margin-bottom: 0.08rem;
		font-size: 0.54rem;
		letter-spacing: 0.1em;
	}

	.spec-chip strong {
		font-size: 0.86rem;
		line-height: 1.1;
	}

	.single-car-gallery__caption {
		right: 1rem;
		bottom: 1rem;
		left: 1rem;
	}

	.single-car-gallery__caption h1 {
		font-size: clamp(2.25rem, 10vw, 3.2rem);
	}

	.single-car-gallery__caption p {
		display: none;
	}

	.single-car-gallery__main {
		aspect-ratio: 4 / 3;
		background:
			radial-gradient(circle at 74% 28%, rgba(226, 201, 126, 0.18), transparent 58%),
			radial-gradient(circle at 42% 58%, rgba(245, 245, 240, 0.12), transparent 66%),
			linear-gradient(145deg, #171f1f 0%, #070808 74%);
	}

	.single-car-gallery__main img {
		height: 100%;
		padding: 1rem;
		object-fit: contain;
	}

	.single-car-gallery__thumbs button {
		flex-basis: 4.6rem;
		background: rgba(255, 255, 255, 0.035);
	}

	.single-car-gallery__thumbs img {
		object-fit: contain;
	}

	.single-car-reservation-layout {
		padding-bottom: calc(6rem + var(--mobile-actions-bottom, 0px) + env(safe-area-inset-bottom));
	}

	.booking-form,
	.booking-form__fields,
	.booking-form__fields label,
	.booking-form .form-row,
	.date-range-field,
	.date-range-field label {
		min-width: 0;
		max-width: 100%;
	}

	.booking-form__fields {
		overflow: hidden;
	}

	.date-range-field {
		width: 100%;
		overflow: visible;
		padding-right: 0.75rem;
		padding-left: 0.75rem;
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.booking-form input,
	.booking-form textarea,
	.booking-form select {
		display: block;
		width: 100%;
		inline-size: 100%;
		min-width: 0;
		min-inline-size: 0;
		max-width: 100%;
		max-inline-size: 100%;
		margin-right: 0;
		margin-left: 0;
		box-sizing: border-box;
	}

	.booking-form input[type="date"],
	.booking-form input[type="time"] {
		position: relative;
		-webkit-appearance: none;
		appearance: none;
		width: 100% !important;
		inline-size: 100% !important;
		min-width: 0 !important;
		min-inline-size: 0 !important;
		max-width: 100% !important;
		max-inline-size: 100% !important;
		padding-right: 2.35rem;
		text-align: left;
		background-position: calc(100% - 0.82rem) center, 0 0;
		background-size: 0.95rem 0.95rem, 100% 100%;
		overflow: hidden;
	}

	.booking-form input[type="date"]::-webkit-date-and-time-value,
	.booking-form input[type="time"]::-webkit-date-and-time-value {
		max-width: 100%;
		min-width: 0;
		margin: 0;
		padding: 0;
		text-align: left;
	}

	.booking-form input[type="date"]::-webkit-calendar-picker-indicator,
	.booking-form input[type="time"]::-webkit-calendar-picker-indicator {
		width: 2rem;
		min-width: 2rem;
		height: 2rem;
		margin: 0 -0.4rem 0 0;
		padding: 0;
		opacity: 0;
	}

	.booking-form input[type="date"]::-webkit-inner-spin-button,
	.booking-form input[type="time"]::-webkit-inner-spin-button,
	.booking-form input[type="date"]::-webkit-clear-button,
	.booking-form input[type="time"]::-webkit-clear-button {
		display: none;
	}

	@supports (-webkit-touch-callout: none) {
		.booking-form input[type="date"],
		.booking-form input[type="time"] {
			min-height: 3.35rem;
			padding-top: 0.9rem;
			padding-bottom: 0.9rem;
		}
	}

	@supports (overflow: clip) {
		.booking-form__fields {
			overflow: clip;
		}
	}

	.booking-form input[type="date"]::-webkit-calendar-picker-indicator,
	.booking-form input[type="time"]::-webkit-calendar-picker-indicator {
		width: 2rem;
		min-width: 2rem;
		margin-right: -0.45rem;
	}

	.single-car-mobile-actions {
		--mobile-actions-static-height: calc(4.35rem + env(safe-area-inset-bottom));
		position: fixed;
		right: 0;
		top: calc(var(--mobile-visual-bottom, 100dvh) - var(--mobile-actions-height, var(--mobile-actions-static-height)));
		bottom: auto;
		left: 0;
		z-index: 980;
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.65rem;
		height: var(--mobile-actions-height, var(--mobile-actions-static-height));
		padding: 0.75rem max(1rem, env(safe-area-inset-left)) calc(0.75rem + env(safe-area-inset-bottom));
		border-top: 1px solid rgba(226, 201, 126, 0.18);
		background: rgba(9, 9, 8, 0.88);
		box-shadow: 0 -1rem 3rem rgba(0, 0, 0, 0.34);
		backdrop-filter: blur(24px) saturate(1.15);
	}

	.single-car-mobile-actions a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 2.8rem;
		padding: 0.75rem 0.95rem;
		border-radius: 999px;
		font-size: 0.68rem;
		font-weight: 600;
		letter-spacing: 0.14em;
		text-transform: uppercase;
	}

	.single-car-mobile-actions__primary {
		background: linear-gradient(135deg, var(--color-gold-light), var(--color-gold));
		color: var(--color-black);
		box-shadow: 0 0.9rem 2rem rgba(198, 168, 75, 0.18);
	}

	.single-car-mobile-actions__whatsapp {
		gap: 0.42rem;
		border: 1px solid rgba(245, 245, 240, 0.12);
		background: rgba(255, 255, 255, 0.045);
		color: var(--color-white);
	}

	.single-car-mobile-actions__whatsapp svg {
		width: 1rem;
		height: 1rem;
		stroke: #8fcf9f;
		stroke-width: 1.8;
		stroke-linecap: round;
		stroke-linejoin: round;
		fill: none;
	}

	.rental-hero {
		grid-template-columns: 1fr;
		width: min(100% - 1rem, 88rem);
		padding-top: 7.5rem;
	}

	.rental-hero::before {
		right: -9rem;
		width: 30rem;
		height: 22rem;
	}

	.rental-hero h1 {
		font-size: clamp(2.45rem, 13vw, 4rem);
		line-height: 1;
	}

	.rental-hero__panel div {
		grid-template-columns: minmax(5.4rem, 0.44fr) minmax(0, 1fr);
		gap: 0.75rem;
	}

	.rental-hero__panel span {
		font-size: clamp(1.75rem, 9vw, 2.8rem);
	}

	.rental-why-section,
	.rental-policy-section,
	.rental-extra-section,
	.rental-faq-section {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}

	.rental-why-grid,
	.rental-extra-grid,
	.rental-policy-layout {
		grid-template-columns: 1fr;
	}

	.rental-why-card:first-child,
	.rental-extra-card--featured {
		grid-column: auto;
	}

	.rental-why-card,
	.rental-extra-card,
	.rental-policy-aside {
		min-height: 0;
	}

	.rental-extra-card__watermark {
		right: -4.2rem;
		bottom: -4rem;
		width: 15rem;
	}

	.rental-faq-item summary {
		grid-template-columns: 2.2rem minmax(0, 1fr);
	}

	.rental-faq-item p {
		padding-left: clamp(1rem, 2vw, 1.25rem);
	}

	.rental-cta-band {
		grid-template-columns: 1fr;
		width: min(100% - 1rem, 88rem);
		gap: 1.25rem;
	}

	.rental-cta-band__actions {
		justify-content: stretch;
	}

	.rental-cta-band__actions .button {
		flex: 1 1 100%;
	}

	.contact-layout--refresh {
		width: min(100% - 1rem, 88rem);
		padding-top: 0.6rem;
	}

	.contact-panel--refresh,
	.pristancia-form--contact {
		border-radius: 1.25rem;
	}

	.contact-panel--refresh h2,
	.pristancia-form--contact h2 {
		font-size: clamp(1.85rem, 9vw, 2.65rem);
	}

	.contact-list li,
	.contact-legal {
		grid-template-columns: 2.55rem minmax(0, 1fr);
		gap: 0.75rem;
	}

	.contact-panel--refresh .contact-list__icon {
		width: 2.55rem;
		height: 2.55rem;
	}

	.pristancia-form.pristancia-form--contact .form-row {
		grid-template-columns: 1fr;
	}

	.pristancia-form.pristancia-form--contact .button {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.mobile-menu__contact,
	.site-footer__legal-list {
		flex-direction: column;
	}

	.mobile-menu__contact a {
		width: 100%;
		text-align: center;
	}

	.cookie-banner__actions {
		flex-direction: column;
	}

	.cky-consent-container .cky-notice-btn-wrapper {
		flex-direction: column !important;
	}

	.cky-consent-container .cky-btn {
		width: 100% !important;
	}
}
