@media (max-width: 1180px) {
	.primary-menu {
		gap: 18px;
	}

	.header-book-button {
		padding-inline: 16px;
	}

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

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

	.summary-grid div {
		border-bottom: 1px solid var(--ras-border);
	}
}

@media (max-width: 980px) {
	.ras-container {
		width: min(100% - 32px, 920px);
	}

	.header-inner {
		min-height: 74px;
		gap: 16px;
	}

	.main-navigation {
		position: fixed;
		top: 74px;
		left: 16px;
		right: 16px;
		display: none;
		max-height: calc(100svh - 96px);
		overflow-y: auto;
		background: #FFFFFF;
		border: 1px solid var(--ras-border);
		border-radius: 8px;
		box-shadow: var(--ras-shadow);
	}

	body.admin-bar .main-navigation {
		top: 106px;
	}

	body.ras-dark-mode .main-navigation {
		background: #102235;
	}

	.site-header.nav-open .main-navigation {
		display: block;
	}

	.primary-menu {
		display: grid;
		gap: 0;
		padding: 12px;
		color: var(--ras-navy);
	}

	body.ras-dark-mode .primary-menu {
		color: #F8F5EF;
	}

	.primary-menu a {
		width: 100%;
		min-height: 48px;
		padding: 0 10px;
		border-radius: 6px;
	}

	.primary-menu a:hover,
	.primary-menu a:focus {
		background: var(--ras-soft);
	}

	.primary-menu .sub-menu {
		position: static;
		display: grid;
		min-width: 0;
		margin: 0 0 0 12px;
		padding: 0 0 6px;
		opacity: 1;
		visibility: visible;
		transform: none;
		background: transparent;
		border: 0;
		box-shadow: none;
	}

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

	.header-book-button {
		display: none;
	}

	.hero-slider {
		min-height: 760px;
		padding: 132px 0 76px;
	}

	.hero-dots {
		left: 16px;
		right: auto;
		bottom: 28px;
	}

	.intro-grid,
	.about-grid,
	.contact-grid,
	.destination-layout,
	.tour-layout,
	.cta-inner,
	.template-showcase-grid,
	.editorial-grid,
	.boutique-grid,
	.proof-grid {
		grid-template-columns: 1fr;
	}

	.section-heading {
		display: block;
	}

	.section-heading .text-link {
		margin-top: 14px;
	}

	.tour-grid,
	.testimonial-grid,
	.experience-grid,
	.expedition-grid,
	.proof-grid > .why-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tour-sidebar {
		order: -1;
	}

	.sticky-booking-box {
		position: static;
	}

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

@media (max-width: 720px) {
	body {
		font-size: 15px;
	}

	.admin-bar .site-header {
		top: 46px;
	}

	h1 {
		font-size: clamp(2.65rem, 15vw, 4.4rem);
		max-width: 10ch;
	}

	h2 {
		font-size: clamp(2rem, 10vw, 3rem);
	}

	.site-branding {
		min-width: 0;
	}

	.site-title {
		font-size: 1.28rem;
	}

	.custom-logo-link img {
		max-width: 150px;
		max-height: 58px;
	}

	.mode-toggle,
	.menu-toggle {
		width: 42px;
		height: 42px;
	}

	.hero-slider {
		min-height: 700px;
	}

	.hero-copy p,
	.tour-hero-content p {
		font-size: 1.02rem;
	}

	.hero-actions,
	.form-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.hero-actions .ras-button,
	.form-actions .ras-button,
	.form-actions button {
		width: 100%;
	}

	.section,
	.intro-section {
		padding: 68px 0;
	}

	.compact-hero {
		padding: 128px 0 66px;
	}

	.tour-hero {
		min-height: 680px;
		padding: 128px 0 66px;
	}

	.tour-grid,
	.destination-grid,
	.testimonial-grid,
	.why-grid,
	.experience-grid,
	.expedition-grid,
	.proof-grid > .why-grid,
	.form-grid,
	.included-table,
	.gallery-grid,
	.summary-grid,
	.stat-row {
		grid-template-columns: 1fr;
	}

	.summary-grid div,
	.summary-grid div:last-child {
		border-right: 0;
		border-bottom: 1px solid var(--ras-border);
	}

	.summary-grid div:last-child {
		border-bottom: 0;
	}

	.tour-summary {
		margin-top: 0;
	}

	.booking-section,
	.about-panel,
	.destination-facts,
	.contact-card,
	.sticky-booking-box {
		padding: 22px;
	}

	.post-card {
		grid-template-columns: 1fr;
	}

	.post-card-image {
		aspect-ratio: 4 / 3;
	}

	.newsletter form,
	.search-form {
		grid-template-columns: 1fr;
		display: grid;
	}

	.footer-grid {
		grid-template-columns: 1fr;
		padding: 52px 0;
	}

	.footer-bottom-inner {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 420px) {
	.ras-container {
		width: calc(100% - 24px);
	}

	.header-actions {
		gap: 8px;
	}

	.hero-slider,
	.tour-hero {
		min-height: 640px;
	}

	.hero-slider {
		padding-top: 118px;
	}

	.primary-menu {
		padding: 8px;
	}

	.tour-card-body,
	.destination-card-body,
	.post-card > div,
	.why-card,
	.testimonial-card {
		padding: 20px;
	}

	.experience-card {
		min-height: 150px;
	}

	.experience-card span {
		font-size: 1.65rem;
	}

	.ras-button,
	.header-book-button {
		min-height: 48px;
		padding-inline: 16px;
		font-size: 0.82rem;
	}
}
