@media (min-width: 768px) {
	.site-header__inner {
		padding: 0.85rem 1.25rem;
	}

	.button {
		width: auto;
	}

	.hero,
	.split {
		flex-direction: row;
		align-items: center;
	}

	.split--reverse,
	.hero--reverse {
		flex-direction: row-reverse;
	}

	.hero {
		min-height: 610px;
		padding-top: var(--space-section);
	}

	.hero__content,
	.hero__media,
	.split__content,
	.split__media {
		flex: 1 1 0;
		min-width: 0;
	}

	.hero__media img {
		max-height: 520px;
		object-fit: contain;
	}

	.hero--enlarge img {
		max-height: unset !important;
		object-fit: cover !important;
	}

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

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

	.consultation-layout__inner {
		max-width: fit-content;
	}

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

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

	.site-footer__legal {
		flex-direction: row;
		align-items: center;
	}
}

@media (min-width: 1024px) {
	.site-header {
		padding-top: 1.5rem;
	}

	.site-header__inner {
		flex-wrap: nowrap;
		min-height: 60px;
		padding: 0.65rem 2rem;
	}

	.site-nav-toggle {
		display: none;
	}

	.site-nav {
		flex: 1 1 auto;
		order: initial;
	}

	.site-nav__menu {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		overflow: visible;
		padding-top: 0;
		border-top-width: 0;
		opacity: 1;
		gap: var(--space-lg);
	}

	.site-nav__menu a {
		padding: 0.3rem 0;
	}

	.button.site-header__cta {
		display: inline-flex;
		order: initial;
		width: auto;
		margin-top: 0;
	}

	.hero,
	.split {
		flex-direction: row;
		align-items: center;
	}

	.split--reverse,
	.hero--reverse {
		flex-direction: row-reverse;
	}

	.hero {
		min-height: 610px;
		padding-top: var(--space-section);
	}

	.hero__content,
	.hero__media,
	.split__content,
	.split__media {
		flex: 1 1 0;
		min-width: 0;
	}

	.hero__media img {
		max-height: 520px;
		object-fit: contain;
	}

	.card-grid--three {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

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

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

	.feature-grid--icon {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

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

	.service-story--reverse {
		direction: rtl;
	}

	.service-story--reverse > * {
		direction: ltr;
	}

	.site-footer__inner {
		grid-template-columns: 1.2fr 1fr 1.3fr;
	}

	.site-footer__brand {
		grid-column: auto;
	}
}

@media (max-width: 767px) {
	.travel-management-grid {
		grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
		gap: 2rem 1rem;
	}

	.travel-management-card__media {
		max-width: 170px;
		margin-bottom: 1rem;
	}

	.travel-management-card h3 {
		font-size: 0.9375rem;
	}

	body {
		font-size: 15px;
	}

	.section__intro h2 {
		font-size: clamp(2.25rem, 8vw, 3rem);
	}

	.section,
	.services-section__inner,
	.about-section__inner,
	.feature-grid-section__inner,
	.service-detail-section__inner,
	.why-section__inner,
	.faq-section__inner,
	.cta-section__inner {
		padding-right: 1.5rem;
		padding-left: 1.5rem;
	}

	.site-header {
		padding-right: 1.5rem;
		padding-left: 1.5rem;
	}

	.feature-grid-section__inner {
		padding-right: 0;
		padding-left: 0;
	}

	.split--reverse {
		flex-direction: column;
	}

	.feature__badge {
		margin-bottom: 0;
	}

	.hero {
		gap: var(--space-md);
		padding-top: var(--space-md);
		padding-bottom: var(--space-md);
	}

	.hero__media img {
		aspect-ratio: unset;
	}

	.card__image {
		padding: 1.5rem 1.5rem 0;
	}

	.card__body {
		padding: 1.5rem;
		gap: 1rem;
	}

	.button-row {
		width: 100%;
	}
}

@media (max-width: 1023px) {
	.reviews-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.review-card { min-height: 27rem; }
	.services-split-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}


	.consultation-panel__body {
		padding: 24px;
	}

	.contact-panel {
		padding: 24px;
	}

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

	/* Mobile/tablet sidebar overlay — base styles */
	.site-nav {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: 66.667%;
		z-index: 100;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: space-between;
		padding: var(--space-xl) var(--space-md) var(--space-md);
		background: var(--color-bg-header);
		opacity: 0;
		visibility: hidden;
		transition: opacity 250ms ease, visibility 250ms ease;
		overflow-y: auto;
	}

	.site-header.is-nav-open .site-nav {
		opacity: 1;
		visibility: visible;
	}

	.site-nav__brand {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		padding-bottom: var(--space-lg);
	}

	.site-nav__brand img {
		max-width: 180px;
		height: auto;
	}

	.site-nav__menu {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		flex: 1;
		padding-top: 0 !important;
		border-top: none;
		opacity: 1;
		gap: 0;
	}

	.site-nav__menu a {
		padding: 0.5rem 0;
		font-size: 1rem;
		white-space: normal;
	}

	.site-nav__cta {
		display: inline-flex;
		margin-top: auto;
		width: auto;
		padding: 1rem;
	}

	.feature__icon {
		max-width: 75px;
	}

	.section--card {
		margin-left: var(--space-md);
		margin-right: var(--space-md);
	}

	.consultation-layout__inner {
		padding-right: 0;
		padding-left: 0;
		gap: var(--space-md);
	}
}

@media (max-width: 767px) {
	.reviews-grid { grid-template-columns: 1fr; }
	.review-card { min-height: 0; }
	.services-split-grid {
		grid-template-columns: 1fr;
	}

	.services-full-section__inner {
		padding: var(--space-lg) var(--space-md);
	}


	.services-split-card__content h3 {
		font-size: 1.75rem;
	}

	.site-nav {
		width: 75%;
	}

	.site-nav__cta {
		width: 100%;
	}
}

@media (max-width: 460px) {
	.site-nav__menu {
		gap: var(--space-xs);
	}

	.services-full-list {
		gap: var(--space-lg);
	}
}
